Tizen-内観

かずき 私はしばらくの間、Tizen OSを搭載したサンプル電話を手に入れました。 私はこの機会を利用して、どのようなLinuxが内部に隠れているかを確認することにしました。 Tizen OSのレビューのほとんどはユーザーインタラクションインターフェイスについて説明しています。この記事では、システム管理者が電話とオペレーティングシステムの小さなレビューを行います。 最も興味深いプレインストールされたコンソールアプリケーションは、グラフィカルインターフェイスで動作し、リポジトリから更新される可能性が考慮されます。



デバイスのコンソールに接続するには、Tizen SDKのSmart Development Bridge(SDB)ユーティリティが必要です。 開発者のサイトから個別ダウンロードできます。 バイナリファイルとして、Smart Development BridgeはTizen SDKと同じプラットフォームで使用できます:Windows 7(32および64ビット)、Ubuntu(32および64ビット)、Mac OS X(64ビット)。 この場合のUbuntuの指定はいくぶんarbitrary意的です;私のユーティリティはFedora 19(x64)で問題なく動作しました。 Smart Development Bridgeは複数のデバイスで動作し、デバイスのコマンドシェルへのリモートアクセスなど、デバイスで動作するための基本的なコマンドセットを提供します。 それから彼はまず私たちに興味を持っています。 それ以降の操作はすべてコンソールから行われます。



Tizenには、最初に作業を行うことができる2つの主要なユーザーがいます。開発者とroot、デフォルトは開発者です。 オペレーティングシステムと対話するときに最大限の機会を得るには、特権のレベルを上げる必要があります。そのためには、スーパーユーザーモードを有効にする必要があります。 接続に必要なコマンドを紹介します。

 $ sdb root on
 「ルート」アカウントモードに切り替えました
 $ sdbシェル
 sh-4.1# 




そのため、システムへのルートアクセスを取得しました。 まず、プラットフォームに関する情報を取得するための簡単なテストを行います。 提供されているシェル、システムのバージョン、カーネルを調べてみましょう。

  sh-4.1#echo $ SHELL
 / bin / sh
 sh-4.1#sh-バージョン
 sh-バージョン
 GNU bash、バージョン4.1.5(1)-release(armv7l-unknown-linux-gnueabi)
 Copyright(C)2009 Free Software Foundation、Inc.
ライセンスGPLv3 +:GNU GPLバージョン3以降<http://gnu.org/licenses/gpl.html>

これはフリーソフトウェアです。 自由に変更して再配布できます。
法律で許可されている範囲での保証はありません。

 sh-4.1 $ cat / etc / system-release 
 Tizenリリース2.2.0(Tizen)
 sh-4.1#uname -a   
 Linux TRATS2 3.0.15-00002-g277d62a#1-Tizen SMP PREEMPT Tue Jul 16 13:12:44 KST 2013 armv7l GNU / Linux



かなり普通のLinuxはカーネル3.0.15を備えたTizen 2.2.0であり、Bash 4.1.5はコマンドシェルとして使用されます。 プロセッサやメモリなど、プラットフォームの特性に関する情報をリクエストします。



  sh-4.1#cat / proc / cpuinfo
プロセッサー:ARMv7 Processor rev 0(v7l)
プロセッサー:0
 BogoMIPS:1590.88
プロセッサー:1
 BogoMIPS:1590.88
プロセッサー:2
 BogoMIPS:1590.88
プロセッサー:3
 BogoMIPS:1590.88

特徴:SWPハーフサムFastMult VFP EDSPネオンVFPV3 TLS 
 CPU実装者:0x41
 CPUアーキテクチャ:7
 CPUバリアント:0x3
 CPUパーツ:0xc09
 CPUリビジョン:0

チップリビジョン:0011
ハードウェア:TRATS2
リビジョン:000c
シリアル:4df764b878e3cf00

 sh-4.1#cat / proc / meminfo |  grep mem
 MemTotal:797944 kB
 MemFree:385720 kB

 sh-4.1#fdisk -l
警告:GPT(GUIDパーティションテーブル)が「/ dev / mmcblk0」で検出されました! 
 util fdiskはGPTをサポートしていません。  GNU Partedを使用します。

ディスク/ dev / mmcblk0:15.8 GB、15758000128バイト
 1ヘッド、16セクター/トラック、1923584シリンダー、合計30777344セクター
単位= 1 * 512 = 512バイトのセクター
セクターサイズ(論理/物理):512バイト/ 512バイト
 I / Oサイズ(最小/最適):512バイト/ 512バイト
ディスク識別子:0x00000000

        デバイスブートスタートエンドブロックIDシステム
 / dev / mmcblk0p1 1 30777343 15388671+ ee GPT


予想されるパラメーターは、周波数が1.6 GHzのクアッドコアarmv7とギガバイトのRAMで、そのうち約800 MBがシステムで使用可能です。 16 Gbドライブ。 仕様は、Samsung Galaxy S III(GT-i9300)と完全に一致しています。これは、Tizen開発者にple乏者として提供されています。



Tabキーを2回押して、使用可能な実行可能ファイルに関する情報を取得してみましょう。 これに応じて、シェルは約1,000個のアイテムを撤回することを提案します。 いくつかの起動でオプションの数は952から1003の範囲であったため、正確な数は指定しません。いずれにしても、この数は携帯電話のオペレーティングシステムにとっては非常に大きいものです。 リスト全体が非常に長い間リストされているので、X11、enlightenment、scp、ssh、sshd、rpm、zypper、xclock、xeyes、xmessageの中で最も興味深いものに注目します。 このことから、電話機にはデスクトップに劣らない一連のアプリケーション用のオペレーティングシステムがあると結論付けることができます。X、シェル、パッケージマネージャーがあります。 デスクトップ環境はEnlightenmentです。 一部のアプリケーションは、コンソールから起動すると、電話画面に表示され、メニューが閉じます。 xeyesを実行すると、画面へのタッチに続いて電話画面に目が表示されます。 xeyesを起動した結果の例は、記事の冒頭の写真に示されています。 同様に、ディスプレイにoclock、xclock、xlogo、xmessageを表示できます。



 sh-4.1 $ xmessage -geometry 240x120 -centerこんにちはHABRAHABR! 


Tizen xmessageこんにちはHabrahabr!



すべてのアプリケーションが「そのまま」機能するわけではないため、それらを使用するには設定が必要です。たとえば、sshdデーモンを起動するスクリプトがシステムに存在せず、デーモンが「額に」デーモンが起動せず、「権限分離ディレクトリがありません:」 var / run / sshd "。 問題は簡単に解決されます-このディレクトリを作成し、必要な権限を付与する必要があります。

  mkdir / var / run / sshd
 chmod 0755 / var / run / sshd 


操作が完了したら、デーモンを開始できます。

  start-stop-daemon --start --pidfile /var/run/sshd.pid --exec / usr / sbin / sshd--p 22 


パスワードなしでrootとしてsshサーバーに接続するため、サーバーの電源を入れたままにしません。

  start-stop-daemon --stop --pidfile /var/run/sshd.pid 


パッケージ管理システムに移りましょう。 システムにはRed Hat Package Managerバージョン4.9.1がインストールされています。

  sh-4.1#rpm-バージョン
 RPMバージョン4.9.1 


プレインストールされたパッケージを更新する機能を確認してください。 Zypperは、GNU / Linux openSUSEディストリビューションで使用されるコンソールパッケージマネージャーです。 パッケージマネージャーがある場合は、パッケージを格納するリポジトリが必要です。 zypper refreshコマンドを使用してパッケージリストを更新しようとしましたが、ここでは失望が待っています-リポジトリが見つかりませんでした。

  sh-4.1#zypperの更新
リポジトリ 'Tizen-main'メタデータの取得[\]
指定されたパス '/srv/snapshots//tizen-2.2/common/tizen-2.2_20130717.6/repos/tizen-main/armv7l/packages/'はディレクトリではありません:ファイル:/srv/snapshots//tizen-2.2/ common / tizen-2.2_20130717.6 / repos / tizen-main / armv7l /パッケージ/

リポジトリ「Tizen-main」メタデータの取得[エラー]
リポジトリ 'Tizen-main'は無効です。
 [|]指定されたURLで有効なメタデータが見つかりません
このリポジトリに定義されているURIが有効なリポジトリを指しているかどうかを確認してください。
上記のエラーのため、リポジトリ 'Tizen-main'をスキップしています。
エラーのため、リポジトリを更新できませんでした。


エラーメッセージのテキストから判断すると、Tizen-Mainリポジトリは存在しないパスにあります。 リポジトリの公式サイトを見てみましょう。 電話で既にわかっているように、TIZEN 2.2があります。http: //download.tizen.orgに適切なリポジトリがいくつかあります 。 古いリポジトリを切断し、いくつかの新しいリポジトリを接続します。 tizen-2.2リポジトリとともに、もう少し新しいtizen-2.2_20130719.3を接続します。 要求されていないリポジトリは常に無効にできます。

  zypper mr -d 1
 zypper ar http://download.tizen.org/releases/2.2/tizen-2.2/repos/tizen-base/armv7l/packages/ Base
 zypper ar http://download.tizen.org/releases/2.2/tizen-2.2/repos/tizen-main/armv7l/packages/ Main
 zypper ar http://download.tizen.org/releases/2.2/tizen-2.2_20130719.3/repos/tizen-base/armv7l/packages/ Base20130719
 zypper ar http://download.tizen.org/releases/2.2/tizen-2.2_20130719.3/repos/tizen-main/armv7l/packages/ Main20130719
ジッパー更新 


システムは、パッケージをインストールしてアップグレードする準備ができています。



Tizenは非常に柔軟なシステムであり、多くの可能性があります。 結論として、接続されたリポジトリには、cmake、ccache、gccなどの開発ツールがありました。 この事実は、Tizenの下での開発の新しい可能性を開きます。



All Articles