カーネル

カーネル(英:Kernel)とは、階層型に設計されたオペレーティングシステムの中核となる部分である。システムのリソースを管理し、ハードウェアとソフトウェアコンポーネントのやりとりを管理する。

オペレーティングシステムの基本コンポーネントとして、カーネルはメモリ、CPU、入出力を中心としたハードウェアを抽象化し、ハードウェアとソフトウェアがやり取りできるようにする。また、ユーザープログラムのための機能として、プロセスの抽象化、プロセス間通信、システムコールなどを提供する。

これらのタスクはカーネルによって方式が異なり、設計も実装も異なる。モノリシックカーネルは全てを一つの仮想アドレス空間に格納されたコードで実行して性能を向上させようとする。マイクロカーネルはサービスの大部分をユーザ空間で実行し、コードの保守性とモジュール性を向上させようとする[1]。多くのカーネルはこの二つのカテゴリのいずれか(あるいは中間)である。

全てではないが、多くのオペレーティングシステムはカーネルを内包する。ハードウェア/ソフトウェア間の通信を管理するソフトウェアとしてのカーネルは、性能、メモリ効率、セキュリティ、プロセッサのアーキテクチャなどが複雑に絡んだ問題への妥協的解答である。

多くの場合、ブートローダーがカーネルを特権モードのプロセスとして起動する[2]。しかし、初期化が完了すると、カーネルはいわゆるプロセスとしては存在せず、ディスクアクセスなどの高い特権レベルを必要とする処理を必要としたときにユーザプログラムから呼び出される機能の集合体として存在することになる。カーネルの処理の流れはユーザープロセスの処理の流れの延長上にあり、システムコールによってカーネルに処理が渡り、終了するとユーザーに戻っていく。初期化時のカーネルの処理の流れは「アイドルプロセス」とか「collects」と呼ばれ、プロセッサが何もしていないときに実行される。

カーネル開発はプログラミングの中でも最も複雑で難しいタスクのひとつと考えられる。オペレーティングシステムの中核部であるということは、高い性能を要求される最重要なソフトウェアであり、正しく設計し実装することは難しい。カーネルはユーザプログラムの互換性や移植性を考慮する必要などから、設計が制限されることもあり、そのことがさらに開発を難しくしている。

カーネルの仕事はコンピュータのリソースを管理し、他のプログラムがそれらのリソースを使って動作できるようにすることである。コンピュータの最も基本となる部品はCPUまたはマイクロプロセッサであり、それらが実際に様々なプログラムをカーネルの管理下で実行する。他の重要なリソースはコンピュータのメモリであり、実行すべきプログラムがそこにロードされ、プログラムが使用するデータも格納される[3][4]。さらにデバイスへのアクセスを可能とするため、カーネルはマザーボードの入出力も管理しなければならない[5]。最終的にカーネルはそれらのサービスにユーザープログラムがアクセスする手段を提供しなければならない。


「カーネル」(2007/08/13 03:08:54 JST)『ウィキペディア日本語版』
http://ja.wikipedia.org/wiki/カーネル

「カーネル」のサイトリスト : 1 - 10

1. e-words.jp
  • カーネルとは 【kernel】 - 意味・解説 : IT用語辞典
    カーネル】 OSの基本 Linuxは、OSの中核部分であるカーネルに様々なツールや機能が付加された OPENSTEP NeXT社のOSであるNeXTSTEPのカーネルより上位の層(APIや開発環境など)
  • 9xカーネルとは 【9x kernel】 - 意味・解説 : IT用語辞典
    9xカーネル】 Microsoft社のWindows 95/98/Meに搭載されているOSの基盤部分(カーネル)の俗称
2. www.kernel-map.co.jp
  • GISエンジンの先駆者 株式会社カーネルのサイトへようこそ -Beyond Imagination with GIS-
    カーネルのホームページでは、GIS(=地図情報システム)に最適なエンジンを主としたソフトウェア製品を紹介しています GISエンジンの先駆者 株式会社カーネルのサイトへようこそ -Beyond Imagination with GIS-
3. ja.wikipedia.org
  • カーネル - Wikipedia
    オペレーティングシステムの基本コンポーネントとして、カーネルはメモリ、CPU、入 出力を中心としたハードウェアを抽象化し、ハードウェアとソフトウェアがやり取りできる ようにする
  • カーネル・サンダース - Wikipedia
    称号はケンタッキー・カーネル
  • Linuxカーネル - Wikipedia
    LinuxカーネルGNU/Linuxオペレーティングシステムを構成する基本要素となるカーネル を取り上げて言うときに使われる語である
  • マイクロカーネル - Wikipedia
    OSが担う各種機能のうち、必要最小限のみをカーネル空間に残し、 その上でファイルシステムやデバイスドライバといった準カーネル機能をそれらのアプリケーションとして実装し、ユーザー空間で動作させる
  • TOPPERS/JSPカーネル - Wikipedia
  • カーネル - Wikipedia
    カーネルについて記述しています
4. www.kernel.co.jp
  • カーネルコンセプト 愛知県 名古屋 就職求人 コンピュータ
    カーネルITグループの情報が載っているページ: 1.カーネルコンセプトは、 に出ています 2.カーネル・ソフト・エンジニアリングは、 に出ています 3.カーネル情報サービスは、 に出ています 1.(株)カーネル・ソフト・エンジニアリング 2
  • カーネルキャリアスクール
    フレーム未対応の方は、 メニューページ へ
5. www.kfc.co.jp
  • 日本ケンタッキー・フライド・チキンホームページ
    商品情報、店舗検索カーネルサンダース物語、CM情報等
  • ケンタッキーフライドチキン カーネルの部屋
    1890年9月9日 ケンタッキー州最大の都市ルイビルとはオハイオ川ひとつを隔てた町、インディアナ州ヘンリービルで、ハーランド・サンダースは生まれました
  • ケンタッキーフライドチキン
    ケンタッキー・フライド・チキンのサイト
  • ケンタッキーフライドチキン
    ホーム > カーネルフェスティバル
6. www.kernel-sys.co.jp
  • 日本カーネルシステム株式会社 | Top
    研究、製品開発、システム構築の受託、 日本カーネルシステム株式会社、 当社製品、採用、その他に関する. お問い合わせはこちらまで
7. www.atmarkit.co.jp
  • @IT:全貌を現したLinuxカーネル2.6[第1章](3/3)
    エンタープライズ向けに刷新されたカーネル・コア 6月に正式リリースされる予定の次期安定版カーネルの改良点や新機能を詳しく解説する 第2回 マイクロカーネル方式とリアルタイム性能. 第3回 スタンドアロン方式とリアルタイム性能
  • Linuxカーネル2.5 最新開発動向(1/2)
    カーネル開発の現場ではどのようなことが起こっているのか? なお、最新の開発版カーネルに入ったホットトピックを中心に扱うため、今後の動向によっては解説そのものが意味を成さなくなったり、機能自体がまったく姿を変えてしまう可能性もある
  • @IT:全貌を現したLinuxカーネル2.6[第1章](1/3)
    エンタープライズ向けに刷新されたカーネル・コア 2003年6月に正式リリースされる予定の次期安定版カーネルの改良点や新機能を詳しく解説する
  • @IT:全貌を現したLinuxカーネル2.6[第1章](3/3)
    エンタープライズ向けに刷新されたカーネル・コア 6月に正式リリースされる予定の次期安定版カーネルの改良点や新機能を詳しく解説する 第2回 マイクロカーネル方式とリアルタイム性能. 第3回 スタンドアロン方式とリアルタイム性能 ..
  • Linuxカーネル - @IT
    カーネル自体やファイルシステムの技術解説、IA-64 Linuxにかかわる企業やカーネルメンテナのインタビュー、チューニングまで カーネル自体やファイルシステムの技術解説、IA-64 Linuxにかかわる企業やカーネルメンテナのインタビュー、チューニングまで
8. www.a-yu.com
  • カーネルの再構築
    カーネルをアップグレードすると, 今までサポートされていなかったデバイスドライバが 使えるようになったり, 古いバージョンより速く動いたり, 安定度が高まる, バグが修正 されてる, などのメリットがあります. 新しくサポートされるハードウェアがどの
9. www.kernelj.co.jp
  • カーネルシステムズ株式会社
    カーネルシステムズ株式会社 · 新着情報 · イメージファイリング · データエントリー · 統合ソリューション · 製品情報 · 会社情報 · 採用情報 · お カーネルシステムズ株式会社 · 新着情報 · イメージファイリング · データエントリー · 統合ソリューション · 製品情報 · 会社情報 · 採用情報
10. www.kernel1991.co.jp
jump-to-nav
printfooter