モジュール構造
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2022/03/25 00:22 UTC 版)
OS-9を構成するすべての部分は、モジュールと呼ばれる統一された構造を持っており、必要な機能だけを選択して使用することができ、自由度の高い構造になっている。これにより、OS-9は以下の特徴を有する。 移植性が高い 移植に必要なモジュールだけを新たに作成すればよい。個々のモジュールも容易に作成可能。 アップグレードが簡単 対象モジュールのみ交換可能。再起動を必ずしも必要としない。 外部プログラムを主記憶に常駐させる事が簡単 主記憶 (ROM/RAM) 上のモジュールはモジュールディレクトリと呼ばれるファイルシステムのディレクトリに似た構造で管理される。外部記憶上のプログラムも予めロードする事によりROM化されたモジュールと同様に主記憶上に常駐した状態にすることが可能。 セキュリティに強い 各モジュールにCRCがあり、モジュールをモジュールディレクトリへ登録する際にチェックされるため、正当なモジュールのみメモリにロード可能。 デバッグが簡単 OS自体が構造化されているため、問題点の切り分けが行いやすい。 リビジョン/エディション モジュールにはリビジョン番号とエディション番号があり、同一名のモジュールがメモリ中に複数ある場合、最新のモジュールのみ有効となる。ROM化されたシステムをアップグレードする場合、古いモジュールを削除することなく、新しいモジュールのROMを追加するだけでよい(あるいは外部記憶上の新しいモジュールをRAMへロードするだけでも良い)。 ROM化可能 すべてのモジュールがリロケータブル(かつリエントラント)であることからROM化特有のアドレスを意識しないでプログラミングしたものを、そのままROM化できる。各モジュール(プログラム)は、すべて主記憶空間内のROM上で直接実行が可能である。 プログラムが使用する変数・スタック領域はカーネルによって実行時に動的に割り当てられる。 再入可能(リエントラント) プログラムがリエントラントであることはOS-9において必須の条件であり、リエントラントでないコードは利用できない。プログラムは自身を実行中に書き換えてはならない(自己書き換えコードはリエントラントではない)。 メモリ使用効率が高い プログラムがリエントラントであるため、コード領域を各プロセスで共有することが可能になり、メモリの利用効率が高くなる。また、OS自身がモジュールの集合であるので、必要なモジュールのみをロード(あるいはROM化)すればよい。 遅い 汎用性は高いが、専用に設計されたモノリシックOSに比べるとオーバヘッドが生じる。例えばデバイスドライバはそれぞれ固有のスタティックストレージと呼ばれる大域変数領域を持つため、カーネルの機能を利用する際には単純な関数呼び出しではなく原則としてソフトウェア割り込みを伴うシステムコールを用いる必要がある。
※この「モジュール構造」の解説は、「OS-9」の解説の一部です。
「モジュール構造」を含む「OS-9」の記事については、「OS-9」の概要を参照ください。
モジュール構造
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/10/03 17:04 UTC 版)
1983年、デンマーク・オーフス大学のトーベン・ピーターセン(Torben E. Petersen)らが、フィブロネクチンの一次構造の半分(推定1,880個の内、911個)を解析した論文で、フィブロネクチンの一次構造に3種類の内部ホモロジー(モジュール(module))が存在することを発見し、フィブロネクチンI型モジュール、フィブロネクチンII型モジュール、フィブロネクチンIII型モジュールと命名した。 フィブロネクチンI型モジュール、フィブロネクチンII型モジュール、フィブロネクチンIII型モジュールは、DNAシークエンシングから、フィブロネクチンの一次構造を決定した時にも確認された。 現在の知見では、I型モジュールが12個、II型モジュールが2個、III型モジュールが15~17個ある。すべてのモジュールは2つの逆平行βシートで構成されているが、I型およびII型モジュールは、2個のシステインがS–S 結合(ジスルフィド結合)を介してつながったシスチンを2つもつ。ジスルフィド結合の存在で構造が安定している。III型モジュール内にはジスルフィド結合をもたない。これによって、適当な外力が加わった際に部分的なアンフォールディングが起こりる。 1つのドメインは、数個〜10個のモジュールが集まって形成されている。
※この「モジュール構造」の解説は、「フィブロネクチン」の解説の一部です。
「モジュール構造」を含む「フィブロネクチン」の記事については、「フィブロネクチン」の概要を参照ください。
- モジュール構造のページへのリンク