プロセス、スレッド、IO、デッドロックなどをカバーする、Javaオペレーティングシステムに関するByteDanceの内部のクレイジーなメモ。

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

現代のコンピューターシステムは、1つ以上のプロセッサ、メインメモリ、プリンター、キーボード、マウス、モニター、ネットワークインターフェイス、およびさまざまな入出力デバイスで構成されています。

プロセス、スレッド、IO、デッドロックなどをカバーする、Javaオペレーティングシステムに関するByteDanceの内部のクレイジーなメモ。

 

ただし、プログラマーはこれらのハードウェアを直接処理することはなく、各プログラマーがコンピューターシステムのすべての詳細を習得することは不可能であるため、コードを記述する必要はありません。そのため、ハードウェアに基づいて、コンピューターは-レイヤーでインストールされます。ソフトウェア、このソフトウェアの層は、ユーザーが入力した指示に応答することでハードウェアを制御する効果を達成し、ユーザーのニーズを満たすことができます。この種のソフトウェアはオペレーティングシステムと呼ばれます。そのタスクは、ユーザープログラムに、より優れた、シンプルで明確な機能を提供することです。コンピュータモデル。

私たちの一般的なオペレーティングシステムは、主にWindows、Linux、FreeBSDまたはOSXです。このようなグラフィカルインターフェースを備えたオペレーティングシステムは、グラフィカルユーザーインターフェース(GUI)と呼ばれ、テキストベースおよびコマンドラインベースのオペレーティングシステムは、通常、シェルと呼ばれます。 。以下は、調査するオペレーティングシステムのコンポーネントです。

プロセス、スレッド、IO、デッドロックなどをカバーする、Javaオペレーティングシステムに関するByteDanceの内部のクレイジーなメモ。

 

これはオペレーティングシステムの簡略図です。下部はハードウェアです。ハードウェアには、前述のチップ、回路基板、ディスク、キーボード、モニターなどのデバイスが含まれます。ハードウェアの上はソフトウェアです。ほとんどのコンピュータには、カーネルモードとユーザーモードの2つの操作モードがあります。ソフトウェアの最も基本的な部分はオペレーティングシステムです。カーネルモードで実行されます。カーネルモードは、チューブモードとコアモードとも呼ばれます。どちらもオペレーティングシステムです。状態は別の名前です。オペレーティングシステムはハードウェアにアクセスでき、マシンが実行できるすべての命令を実行できます。ソフトウェアの残りの部分はユーザーモードで実行されます。

ユーザーインターフェイスプログラム(シェルまたはGUI)はユーザーモードであり、ユーザーモードの最下位レベルにあるため、ユーザーはWebブラウザー、電子メールリーダー、音楽プレーヤーなどの他のプログラムを実行できます。さらに、ユーザーモードに近ければ近いほど、アプリケーションを簡単に作成できます。特定のメールリーダーが気に入らない場合は、なんらかの方法で書き換えることができますが、オペレーティングシステムや割り込みハンドラを自分で作成することはできません。このプログラムは、外部からの変更を防ぐためにハードウェアによって保護されています。

このノートの全体的なコンテキストを最初に見てください

プロセス、スレッド、IO、デッドロックなどをカバーする、Javaオペレーティングシステムに関するByteDanceの内部のクレイジーなメモ。

 

プロセス、スレッド、IO、デッドロックなどをカバーする、Javaオペレーティングシステムに関するByteDanceの内部のクレイジーなメモ。

 

プロセス、スレッド、IO、デッドロックなどをカバーする、Javaオペレーティングシステムに関するByteDanceの内部のクレイジーなメモ。

 

プロセス、スレッド、IO、デッドロックなどをカバーする、Javaオペレーティングシステムに関するByteDanceの内部のクレイジーなメモ。

 

プロセス、スレッド、IO、デッドロックなどをカバーする、Javaオペレーティングシステムに関するByteDanceの内部のクレイジーなメモ。

 

プロセス、スレッド、IO、デッドロックなどをカバーする、Javaオペレーティングシステムに関するByteDanceの内部のクレイジーなメモ。

 

プロセス、スレッド、IO、デッドロックなどをカバーする、Javaオペレーティングシステムに関するByteDanceの内部のクレイジーなメモ。

 

ByteDanceによって内部的に強制されたこのJavaオペレーティングシステムのノートを受け取る必要がある友人は、画像でそれを取得する方法を確認できます!

オペレーティングシステムを知る

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

コンピュータハードウェアの紹介

オペレーティングシステムミュージアム

オペレーティングシステムの概念

システムコール

オペレーティングシステムの構造

プロセス、スレッド、IO、デッドロックなどをカバーする、Javaオペレーティングシステムに関するByteDanceの内部のクレイジーなメモ。

 

プロセスとスレッド

処理する

プロセス間通信

スケジューリング

プロセス、スレッド、IO、デッドロックなどをカバーする、Javaオペレーティングシステムに関するByteDanceの内部のクレイジーなメモ。

 

メモリの抽象化なし

メモリの抽象化:アドレス空間

仮想メモリ

ページ置換アルゴリズム

プロセス、スレッド、IO、デッドロックなどをカバーする、Javaオペレーティングシステムに関するByteDanceの内部のクレイジーなメモ。

 

ファイルシステム

ファイル

目次

ファイルシステムの実装

ファイルシステムの管理と最適化

プロセス、スレッド、IO、デッドロックなどをカバーする、Javaオペレーティングシステムに関するByteDanceの内部のクレイジーなメモ。

 

I / O

I / Oデバイス

I / Oソフトウェアの原則

I / O階層

プレート

時計

プロセス、スレッド、IO、デッドロックなどをカバーする、Javaオペレーティングシステムに関するByteDanceの内部のクレイジーなメモ。

 

デッドロック

資源

デッドロック

Beiダチョウアルゴリズム

デッドロックの検出と回復

デッドロック回避

デッドロックを破壊する

その他の問題

総括する

プロセス、スレッド、IO、デッドロックなどをカバーする、Javaオペレーティングシステムに関するByteDanceの内部のクレイジーなメモ。

 

オペレーティングシステムのインタビューの質問

プロセス、スレッド、IO、デッドロックなどをカバーする、Javaオペレーティングシステムに関するByteDanceの内部のクレイジーなメモ。

 

ByteDanceによって内部的に強制されたこのJavaオペレーティングシステムのノートを受け取る必要がある友人は、画像でそれを取得する方法を確認できます!

 

おすすめ

転載: blog.csdn.net/qq_46388795/article/details/108664127