OS Chapter 2. システム構造
3684 ワード
Chapter 2. システム構造
ユーザ|GUI、バッチ、コマンドライン|ユーザインタフェース|システムコール|サービス|OS|ハードウェア学習?
1. Operating-System Services
UI (User Interface)
これはユーザーがコンピュータシステムと会う場所です.
Batch Interface:コマンドをファイルに配置してコマンドを実行するインタフェース.(バッチファイル)
CLI:知ってる?コマンド#コマンド#
GUI:わかった?ビデオカード
プロセス間の情報交換を担当します.
技法上はShared MemoryとMessage Pasingがあります
もちろんメッセージングは遅くなるでしょう?
커널↔사용자 프로그램 이어주는 인터페이스예요.
User Application
User mode
System call Interface
Kernel mode
😀 例を挙げましょうか.ユーザープログラムにディスク上のファイルを開けてもらいたい(つまり、ファイルシステムにアクセスしたい).
KernelModeに切り替えるべきでしょうか?この場合はシステムコールを使用します
fopen()
関数が呼び出されると、オペレーティングシステムは시스템 콜 테이블(or 인터럽트 벡터)
を参照します.システム・チャートは、メモリ・アドレスのセットであり、各メモリ・アドレスは
인터럽트 서비스 루틴
を指す.(割り込みサービスルーチンは、通常、Cで記述されるコードである.)
fopen() 👉 System Call Table 체크 👉 Table 속에서 인터럽트 서비스 루틴을 실행해요.
システム呼び出しの例には、fork()、exit()、read()、write()などの関数が含まれます.
ただし、標準ライブラリ(Standard Library)は、ユーザを直接呼び出すのは危険で不便である.
stdio.h
は一種です.Call by Value
Call by Reference
プログラムでStackにパラメータを追加し、オペレーティングシステムから値を減算します.
4. Operating System Structure
👉 現代のオペレーティングシステムは階層管理システムである.
Simple Structure
MS-DOS
Microsoftが開発したウィンドウの前で初めて使用したオペレーティングシステムです.
No階層化
User Progは、I/Oルーチンに直接アクセスして書き込みを行います.
したがって、User Progに障害が発生すると、システム全体に問題が発生します.
汎用マルチユーザインタラクティブ、時分割処理システムのオペレーティングシステム.
MS-DOSよりも機能が分離されていますが、依然として...Too much
Monollitic構造:実施、メンテナンスが困難.
階層化方法はオペレーティングシステム
더 세분화해 계층을 분리
である.第N層→0:0はハードウェア,Nはユーザインタフェースである.
メンテナンスに非常に有利です.
キー要素のみを残す
가벼운 커널
です.長所
短所
커널을 확장
の技術.(OOPで言うようにモジュラー化)モジュールをプロセスにリアルタイムで貼り付けて正常に動作させることができます.
各機能を独立して管理できます.
デバイスドライバはすべてモジュール化されています!
.dll
ファイルはモジュールです.스마트폰
はオペレーティングシステム構造の最新バージョンです.커널의 핵심만 남긴 것
このハイブリッドシステム.残りの部分は単独で実施する
iOS:BSDを核心とし、残りはすべてアップルが独自に実施
Android:Linuxはコア、自己実装ライブラリ
Reference
この問題について(OS Chapter 2. システム構造), 我々は、より多くの情報をここで見つけました https://velog.io/@jhy979/OS-Chapter-2.-시스템-구조テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol