init()関数のカーネル識別子とinitプロセスのプロセス識別子はどちらも1であるため、これらはinitと呼ばれます。そのため、init()関数とinitプロセスは概念的に簡単です。はっきりしない。
主な違い:
1、init()関数はカーネルコードの一部であり、カーネルモードで実行され、スタンドアロンの実行可能コードの一部です。
2、Linux オペレーティングシステムのinitプロセス
は特別なプロセスです。カーネルによって起動され実行される最初のユーザープロセスなので、カーネル状態では実行されていません。代わりに、ユーザーモードで実行されます。そのコードはカーネル自体の一部ではありませんが、ハードディスク上の実行ファイルのイメージに格納されています。他のユーザープロセスと違いはありません。
プロセス番号0 - >カーネルスレッド番号1 - >>カーネルプロセス番号1 - > initプロセス(ユーザープロセス番号1)
プロセス番号0:これはシステムです起動時に自動的に形成されるプロセスは、実際にはカーネル自体です。それは後でシステム内で生成されるすべてのプロセスの先祖です。カーネルシステムが自身の初期化を完了すると、カーネル自身が関数kernel_thread()を呼び出します。これはint 0x80システムコールを使用して最初のカーネルスレッドを作成します。
1番のカーネルスレッド:Linuxシステムでは、いわゆるカーネルスレッドとは仮想記憶スペースのないプロセスを指し、カーネルスレッドはカーネル状態で実行されている物理アドレススペースを直接使用できます。ソフト割り込みシステムコールから戻った後、ESPレジスタとESIレジスタの値を比較して、親プロセスと子プロセスを決定します。 ESPレジスタの値がESIレジスタの値と等しい場合、システムはそれを親プロセス、つまりカーネル自体、つまりプロセス番号0と見なします。それ以外の場合は、カーネルによって作成された最初のカーネルスレッドです。つまり、このスレッドはナンバー1のスレッドです。
1番のカーネルプロセス:1番のカーネルスレッドの場合、プログラムはサブルーチンを制御してinit()関数を直接実行し、1番のスレッドは1番のカーネルプロセスに進化します。
initプロセス:init()関数はexecve()を呼び出して/etc /inittabファイルから実行可能プログラムinit()をロードして実行すると、init()関数のカーネルプロセスはinitプロセスに進化します。 。つまり、initプロセスはinit()関数によって生成されます。 fork()はこの展開中には使用されないため、initプロセスのプロセス識別子は、カーネルプロセス番号1の識別子1のままです。これを見て、私は突然組み込みのルートファイルシステムでカーネルのinitスレッドも実行したことを思い出しましたスレッドはスクリプトを実行します。/linuxrc ./linuxrc:execve /sbin /initの最後に、ユーザーを実行しますスペースのinitプロセス。スクリプトinittab(ある場合)を実行します。
コモンモード信号と差動モード信号の違いを理解することは、パルス磁気回路と動作モジュールの関係を理解する上で非常に重要です。トランス、コモンモードチョーク、およびオートトランスの終端は、ローカル
今日、Apple Mac OSとMicrosoft Windowsは今日マルチタッチをサポートしていますが、Linuxオープンソースコミュニティもこの点でペースを速めています。 Canonical F
またはvmlinuxを生成するプロセスに入ります - 最初のものは、 kernel \\ arch \\ arm \\ kernel \\ head-armvです。 .o、そして我々はまた、最初にそれ
Linuxシステムを使用する多くのユーザーは、多くの場合、グラフィカルインターフェイス操作よりコマンドライン操作のほうが速いと感じ、コマンドラインコマンドを使用すると半分の労力で2倍の結果が得られます
'./mysql-bin.index'の解決策が見つかりません(エラーコード:13)
CentOS 6.Xインストールガイド付きスクリーンショット
/usr/local/apache/modules/libphp5.soをロードできないための解決策
CentOS 6.4インストールoracle 11G環境の準備
1.1、CentOS 6.4(x86_64) http://mirrors.163.com/centos/ 1.2、Oracle 11g R2(Linux) X86-64 http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html
)