ロゴ
ユニオンペディア
コミュニケーション
Google Play で手に入れよう
新しい! あなたのAndroid™デバイスでユニオンペディアをダウンロードしてください!
ダウンロード
ブラウザよりも高速アクセス!
 

子プロセス

索引 子プロセス

子プロセスとは、コンピュータのプロセス管理に関わる用語で、ほかのプロセスから呼び出されたプロセスのことを言う。チャイルドプロセスとも言い、呼出元のプロセスのことを親プロセスあるいはペアレントプロセスと呼ぶ。 マルチタスクのオペレーティングシステムに関してはプロセス管理の記事に詳しく述べられている。 MS-DOS や PC DOS でも子プロセスと呼ばれるものが実装されていた。本稿ではこれについても述べる。.

27 関係: 外部コマンドマルチタスクブートプロセスプロセス管理プロセス識別子ファイル (コンピュータ)アプリケーションソフトウェアアセンブリ言語オペレーティングシステムオーバーレイ (コンピュータ用語)カーネルコンパイラコンピュータシェルシステムコールスレッド (コンピュータ)COMMAND.COMExec遠隔手続き呼出し記憶装置ForkIBM PC DOSInitSolarisUNIXUNIX System V

外部コマンド

外部コマンド(がいぶコマンド)とは、コマンドラインシェルなどといったコマンドラインインタプリタに組込みでないコマンドのことである。CP/Mではトランジェント・コマンドと呼称した。反対にコマンドラインインタプリタ組込みのコマンドを内部コマンド(ビルトインコマンド、:en:Shell builtin)と呼ぶ。外部のプログラムを呼び出しているという点はアプリケーションソフトウェアの起動と何ら変わりなく、線引きはあいまいにならざるを得ない(というか、不可能である)。MS-DOSしか知らないユーザー層かもしれないが、OSに標準添付されているコンソールアプリケーションのことを指す、と考えることもあるようである。 以上のようなわけで「代表的な外部コマンド」は特にない。一方で、外部コマンドとして実装することが絶対に不可能なため、内部コマンドとして実装される代表例に cd コマンドがある。.

新しい!!: 子プロセスと外部コマンド · 続きを見る »

マルチタスク

マルチタスク (multi tasking) は、コンピュータにおいて複数のタスク(プロセス)を切り替えて実行できるシステムのことである。Unixなど「プロセス」という用語を使うシステムではマルチプロセスともいう(ほぼ同じものを別のシステムでは別の名で呼んでいることもあれば、違うものを同じ名で呼んでいることもあれば、何らかの理由で呼び分けていることもある)。マルチプログラミングという語は複数のプログラムを動かすという点に着目した語である(一般に、「タスク」とか「プロセス」は、プログラムの活動実体、といったようなものを指す語である)。逆に、同時に一つのタスクしか実行できない方式をシングルタスクという。.

新しい!!: 子プロセスとマルチタスク · 続きを見る »

ブート

Windows XPをブート中のインターネット公衆電話 ブート(boot)または ブートストラップ(bootstrap)は、コンピュータシステムの電源投入時、あるいはシステムのリセット後、モニタやOSなどなんらかの基本的なシステムソフトウェアを主記憶に展開し、ユーザプログラムを実行できるようにするまでの処理の流れをいう。ブートローダ(boot loader)は、以上のプロセスで使われるローダ、すなわち、不揮発性の補助記憶にある目的のプログラムを読出し、揮発性の主記憶に書込むプログラムのことである。 電源投入時のブートのことを「コールドブート」、リセットされたことによるブートを「ウォームブート」と言う。ウォームブートでは、コールドブートにおける最初のほうの手続きのいくつかが必要無い場合もあり、そういった手続きを省略することもある。 ブートストラップまたはブートストラップローダ(bootstrap loader)という名前は、ブーツのつまみ革(strap)を自分で引っ張って自分を持ち上げようとするイメージから来ている。つまり、コンピュータはプログラムをロードしないと動作できないが、プログラムをロードするプログラムはどうロードするのだ? というパラドックスに着目した呼称である。.

新しい!!: 子プロセスとブート · 続きを見る »

プロセス

プロセスとは、情報処理においてプログラムの動作中のインスタンスを意味し、プログラムのコードおよび全ての変数やその他の状態を含む。オペレーティングシステム (OS) によっては、プロセスが複数のスレッドで構成される場合があり、命令を同時並行して実行する。.

新しい!!: 子プロセスとプロセス · 続きを見る »

プロセス管理

プロセス管理とは、オペレーティングシステムの主にカーネルの重要な機能の一つで、プロセスの生成・実行・消滅を管理することである。プロセス間通信や排他制御もプロセス管理の役割である。また、プロセスへのリソースの割り当てを制御する機構でもある。.

新しい!!: 子プロセスとプロセス管理 · 続きを見る »

プロセス識別子

プロセス識別子(プロセスしきべつし、プロセスID、PIDと略記)は、いくつかのオペレーティングシステムカーネル(Unix系やWindows)で使われている番号で、ある時点で存在するプロセスを一意に識別するために用いられる。優先順位を調整したり、終了させたり等、プロセス(群)を操作する様々な関数の引数として使う。.

新しい!!: 子プロセスとプロセス識別子 · 続きを見る »

ファイル (コンピュータ)

ンピュータにおけるファイル(file)は、コンピュータでデータを扱いやすくするための仕組み。場合によってはデータセット(data set)とも呼ばれる。.

新しい!!: 子プロセスとファイル (コンピュータ) · 続きを見る »

アプリケーションソフトウェア

アプリケーションスイートである。 アプリケーションソフトウェア(application software, 応用ソフトウェア)は、アプリケーション(応用)プログラムともいい、ワープロや表計算などといった、コンピュータを「応用」する目的に応じた、コンピュータ・プログラムである。なお、それに対してシステムプログラムは、アプリケーションプログラムに対して処理実行のための計算機資源を抽象化して提供する、などのインフラとしての役割のプログラムであり、ユーザーが要求する情報処理を直接実行するものではなく、ユーザーが普段は意識することはない裏方的な存在がシステムプログラムである。.

新しい!!: 子プロセスとアプリケーションソフトウェア · 続きを見る »

アセンブリ言語

モトローラ MC6800 のアセンブリ言語のソースコード アセンブリ言語(アセンブリげんご、英: assembly language)とは、コンピュータ、マイクロコントローラ、その他のプログラム可能な機器を動作させるための機械語を人間にわかりやすい形で記述する、代表的な低水準言語である。なお、英語の assembly とは「組立」という意味である。.

新しい!!: 子プロセスとアセンブリ言語 · 続きを見る »

オペレーティングシステム

ペレーティングシステム(Operating System、OS、オーエス)とは、コンピュータのオペレーション(操作・運用・運転)のために、ソフトウェアの中でも基本的、中核的位置づけのシステムソフトウェアである。通常、OSメーカーが組み上げたコンピュータプログラムの集合として、作成され提供されている。 オペレーティングシステムは通常、ユーザーやアプリケーションプログラムとハードウェアの中間に位置し、ユーザーやアプリケーションプログラムに対して標準的なインターフェースを提供すると同時に、ハードウェアなどの各リソースに対して効率的な管理を行う。現代のオペレーティングシステムの主な機能は、ファイルシステムなどの補助記憶装置管理、仮想記憶などのメモリ管理、マルチタスクなどのプロセス管理、更にはGUIなどのユーザインタフェース、TCP/IPなどのネットワーク、などがある。オペレーティングシステムは、パーソナルコンピュータからスーパーコンピュータまでの各種のコンピュータや、更にはスマートフォンやゲーム機などを含む各種の組み込みシステムで、内部的に使用されている。 製品としてのOSには、デスクトップ環境やウィンドウシステムなど、あるいはデータベース管理システム (DBMS) などのミドルウェア、ファイル管理ソフトウェアやエディタや各種設定ツールなどのユーティリティ、基本的なアプリケーションソフトウェア(ウェブブラウザや時計などのアクセサリ)が、マーケティング上の理由などから一緒に含められていることもある。 OSの中で、タスク管理やメモリ管理など特に中核的な機能の部分をカーネル、カーネル以外の部分(シェルなど)をユーザランドと呼ぶ事もある。 現代の主なOSには、Microsoft Windows、Windows Phone、IBM z/OS、Android、macOS(OS X)、iOS、Linux、FreeBSD などがある。.

新しい!!: 子プロセスとオペレーティングシステム · 続きを見る »

オーバーレイ (コンピュータ用語)

ーバーレイ(Overlay)とは、何かの表面を薄く覆うこと(あるいは覆うもの)を意味する。コンピュータの分野での専門用語として、以下のようなものがある。.

新しい!!: 子プロセスとオーバーレイ (コンピュータ用語) · 続きを見る »

カーネル

ーネルはアプリケーションソフトウェアとコンピュータのハードウェアを結び付ける。 カーネル(kernel)は、階層型に設計されたオペレーティングシステム (OS) の中核となる部分である。アプリケーションとハードウェアレベルでの実際のデータ処理との間の架け橋である。システムのリソースを管理し、ハードウェアとソフトウェアコンポーネントのやりとりを管理する。 オペレーティングシステムの基本コンポーネントとして、カーネルはメモリ、CPU、入出力を中心としたハードウェアを抽象化し、ハードウェアとソフトウェアがやり取りできるようにする。また、ユーザープログラムのための機能として、プロセスの抽象化、プロセス間通信、システムコールなどを提供する。 これらのタスクはカーネルによって方式が異なり、設計も実装も異なる。モノリシックカーネルは全てを一つの仮想アドレス空間に格納されたコードで実行して性能を向上させようとする。マイクロカーネルはサービスの大部分をユーザー空間で実行し、コードの保守性とモジュール性を向上させようとする, by K.J.。多くのカーネルはこの二つのカテゴリのいずれか、あるいは中間である。.

新しい!!: 子プロセスとカーネル · 続きを見る »

コンパイラ

ンパイラ(英:compiler)とは、コンピュータ・プログラミング言語の処理系(言語処理系)の一種で、高水準言語によるソースコードから、機械語に(あるいは、元のプログラムよりも低い水準のコードに)変換するプログラムである。.

新しい!!: 子プロセスとコンパイラ · 続きを見る »

コンピュータ

ンピュータ(Computer)とは、自動計算機、とくに計算開始後は人手を介さずに計算終了まで動作する電子式汎用計算機。実際の対象は文字の置き換えなど数値計算に限らず、情報処理やコンピューティングと呼ばれる幅広い分野で応用される。現代ではプログラム内蔵方式のディジタルコンピュータを指す場合が多く、特にパーソナルコンピュータやメインフレーム、スーパーコンピュータなどを含めた汎用的なシステムを指すことが多いが、ディジタルコンピュータは特定の機能を実現するために機械や装置等に組み込まれる組み込みシステムとしても広く用いられる。電卓・機械式計算機・アナログ計算機については各項を参照。.

新しい!!: 子プロセスとコンピュータ · 続きを見る »

シェル

Bashのスクリーンショット シェル (shell) はオペレーティングシステム (OS) のユーザーのためにインタフェースを提供するソフトウェアであり、カーネルのサービスへのアクセスを提供する。それだけではなく、この用語は非常にゆるやかに応用され、特定のコンポーネントの周辺に構築された任意のソフトウェアを含むこともある。例えば、ウェブブラウザや電子メールクライアントはHTMLレンダリングエンジンの「シェル」といわれることがある。OSの内部(カーネル)とユーザーの間にある外殻であることから、このように呼ばれる。.

新しい!!: 子プロセスとシェル · 続きを見る »

システムコール

テムコールとは、オペレーティングシステム (OS)(より明確に言えばOSのカーネル)の機能を呼び出すために使用される機構のこと。実際のプログラミングにおいては、OSの機能は関数 (API) 呼び出しによって実現されるので、OSの備える関数 (API) のことを指すこともある。なお、μITRONではサービスコールと呼ばれる。また、OSのことをスーパーバイザとも呼ぶため、スーパーバイザコールともいう。 例えば、C言語で使用できるfopen()やmalloc()などのライブラリ関数は、その関数内においてシステムコール(例えばPOSIX準拠のOSであればopen()やsbrk()など)を呼び出す。.

新しい!!: 子プロセスとシステムコール · 続きを見る »

スレッド (コンピュータ)

レッド(thread)とは、CPU利用の単位。プロセスに比べて、プログラムを実行するときのコンテキスト情報が最小で済むので切り替えが速くなる。スレッドは、thread of execution(実行の脈絡)という言葉を省略したものである。 プログラミングの観点からみると、アプリケーションの処理の「実行の脈絡」は1つでないことが多い。これをシングルスレッドで実現しようとするとシグナルやタイマーを駆使してコーディングすることになる。また、複数のプロセスに分割してプロセス間通信で協調動作させるという方法もある。しかし、いずれの場合もそれらの機能を使うための余分な、本来のアルゴリズムと関係ないコーディングが必要となる。スレッドを使用したプログラミングは本来のアルゴリズムに集中しやすくなり、プログラムの構造が改善されるという効果がある。.

新しい!!: 子プロセスとスレッド (コンピュータ) · 続きを見る »

COMMAND.COM

COMMAND.COM(コマンド・コム)はMS-DOS/PC DOS及び互換DOSの標準コマンドシェル(コマンドラインインタプリタ)。.

新しい!!: 子プロセスとCOMMAND.COM · 続きを見る »

Exec

exec はUnix系オペレーティングシステムにおける関数群で、関数の引数として渡されたプログラムで動作中の当該プロセスを完全に置換する機能を有する。新たなプロセスを生成するわけではないので、プロセス識別子 (PID) は変化しないが、プロセスの仮想空間上のスタック、ヒープ、データなどは全て新たなものに置換される。.

新しい!!: 子プロセスとExec · 続きを見る »

遠隔手続き呼出し

遠隔手続き呼出し(remote procedure call、リモートプロシージャコール、略してRPC)とは、プログラムから別のアドレス空間(通常、共有ネットワーク上の別のコンピュータ上)にあるサブルーチンや手続きを実行することを可能にする技術。その際に遠隔相互作用の詳細を明示的にコーディングする必要がない。つまり、プログラマはローカルなサブルーチン呼び出しと基本的に同じコードをリモート呼び出しについても行う。遠隔手続き呼出しを行うソフトウェアがオブジェクト指向プログラミングに基づく場合、遠隔手続き呼出しのことを リモート呼び出し(remote invocation)あるいは リモートメソッド呼び出し (remote method invocation、RMI)と呼ぶこともある(Java RMIなど)。 遠隔手続き呼出しには例えば、ONC RPCやDCE/RPCといった互いに非互換な様々な技術が存在する。.

新しい!!: 子プロセスと遠隔手続き呼出し · 続きを見る »

記憶装置

GB SDRAM。一次記憶装置の例 GB ハードディスクドライブ(HDD)。コンピュータに接続すると二次記憶装置として機能する SDLT テープカートリッジ。オフライン・ストレージの例。自動テープライブラリで使う場合は、三次記憶装置に分類される 記憶装置(きおくそうち)は、コンピュータが処理すべきデジタルデータをある期間保持するのに使う、部品、装置、電子媒体の総称。「記憶」という語の一般的な意味にも対応する英語としてはメモリ(memory)である。記憶装置は「情報の記憶」を行う。他に「記憶装置」に相当する英語としてはストレージ デバイス(Storage Device)というものもある。.

新しい!!: 子プロセスと記憶装置 · 続きを見る »

Fork

fork(フォーク)とは、プロセスのコピーを生成するものである。UNIXおよびUnix系OSではシステムコールのひとつで、新たに作り出されたプロセスを子プロセス、fork()を呼び出したプロセスを親プロセスと呼び、fork()システムコールの戻り値によって親と子の処理を区別する。子プロセスではfork()の戻り値は0であり、親プロセスの戻り値は新たに生成された子プロセスのプロセス識別子、エラーが起きた場合は-1である。また、マルチスレッド環境でスレッドのコピーを作ることもforkと呼ぶことがある。 forkが呼び出されると、子プロセスのためのアドレス空間が新たに作成される。子プロセスのアドレス空間には親プロセスが持っていた全セグメントのコピーがあるが、コピーオンライト機能によって実際の物理メモリの確保は遅延される(すなわち、一時的に同じ物理メモリセグメント群を親子で共有する)。親プロセスと子プロセスは同じコードセグメントを持つが、独立して実行される。.

新しい!!: 子プロセスとFork · 続きを見る »

IBM PC DOS

IBM PC DOS(The IBM Personal Computer Disk Operating System)は、IBMが1980年代から2000年代初めにかけて供給していた、IBM PC 向けの「IBM公式版」MS-DOSである。元々はマイクロソフトのMS-DOSに、OEMでIBMブランドを付けたものであったが、徐々にIBMの開発による独自の部分が増えていった(システムファイルの名前等)。.

新しい!!: 子プロセスとIBM PC DOS · 続きを見る »

Init

initは、UNIXおよびUnix系システムのプログラムのひとつであり、他の全てのプロセスを起動する役目を持つ。デーモンとして動作し、一般にPID 1 を付与される。ブートローダがカーネルを起動し、カーネルがinitを起動する。代替手段を用意せずにinitを削除すると、次回のリブート時にシステムはカーネルパニックに陥る可能性がある。 init の機能はBSD系とSystem V系では大きく異なるため、ユーザーは自分のシステムがどちらのバージョンを使っているかをマニュアルで調べる必要がある。多くのLinuxディストリビューションで使われていたinitはSystem Vと互換性がある。SlackwareのようなLinuxディストリビューションではBSD系のinitを使っていた。Gentoo Linuxなどでは独自のinitを使用していた。ISO/IEC 23360-1:2006の国際規格になったLinux Standard Baseではinitを定義している。 他にもいくつかinitの設計上の限界に対処した代替として、systemdやUpstartがあり、Ubuntuや他のLinuxディストリビューションで採用している。.

新しい!!: 子プロセスとInit · 続きを見る »

Solaris

Solaris(ソラリス)はサン・マイクロシステムズ(サン)によって開発され、UNIXとして認証を受けたオペレーティングシステム (OS) である。2010年1月27日のオラクルによるサン買収に伴い、現在の開発は同社が担っている。 プロプライエタリ・ソフトウェアであるが、かつてコア部分(ONという:OS+NETの略)はOpenSolarisとしてオープンソース化されたが、2010年8月以降、ONのソースコードの公開はされていない。 なお、公開されていたONのソースコードは、有志の手によってIllumosプロジェクトとしてオープンソース化されたまま更新が続けられている。.

新しい!!: 子プロセスとSolaris · 続きを見る »

UNIX

UNIX (ユニックス、Unix、)は、コンピュータ用のマルチタスク・マルチユーザーのオペレーティングシステムの一種である。公式な商標は「UNIX」だが、商標以外の意味として「Unix」、またはスモールキャピタルを使用して「Unix」などとも書かれる。Unixは1969年、AT&Tのベル研究所にて、ケン・トンプソン、デニス・リッチーらが開発を開始した。 当初はアセンブリ言語のみで開発されたが、1973年にほぼ全体をC言語で書き直した。このため、Unixは歴史上、初めて高水準言語で書かれたOSであると言われる。 1973年の段階ではPDP-11に依存したコードが多く、移植性は低かったが、その後徐々にPDP-11に依存したコードを減少させ、1978年にInterdata 8/32への移植に成功して以降、徐々に他のプラットフォームにも移植されていった。 現在では「Unix」という語は、Unix標準に準拠するあらゆるオペレーティングシステムの総称でもある。現在ではUnixシステムは多数の系統に分かれており、AT&Tの開発停止後も、多数の商用ベンダーや非営利組織などによって開発が続けられている。 1970年代から1980年代の初期にかけて、Unixは大学や研究所などの教育機関で広範囲に採用され、特にカリフォルニア大学バークレー校をオリジナルとするBSD系統が誕生した。また Version 7 Unix や UNIX System V の特徴を持つオペレーティングシステムは「伝統的なUNIX」(traditional Unix)とも呼ばれる。 2007年に、「UNIX」の商標の所有者である標準化団体のThe Open Groupは、Single UNIX Specificationを完全に満たすと認証を受けたシステムのみが「UNIX」の商標を得られるとした。このためそれ以外のシステムは(ずっと以前から、AT&T版およびBSD以外を指して使われていた用語だが)「Unixシステムライク」または「Unixライク(Unix系)」と呼ばれるようになった。ただし The Open Groupはその呼称を気に入っていない。 現在では多く使われているUnixとしてはmacOS、AIX、HP-UX、Solarisなどがある(いずれも商用)。また認証を受けていないUnix系としてはLinux(派生OSにAndroid他)やMINIX、BSDの派生OS(FreeBSD、NetBSD、OpenBSD、DragonFly BSDなど)がある。.

新しい!!: 子プロセスとUNIX · 続きを見る »

UNIX System V

System V(システムファイブ、SysV)は、初期の商用UNIXオペレーティングシステムの一種である。.

新しい!!: 子プロセスとUNIX System V · 続きを見る »

ここにリダイレクトされます:

チャイルドプロセス孤児プロセス親プロセス

出ていきます入ってきます
ヘイ!私たちは今、Facebook上です! »