Chapter2 : Operating System Structures
-Operating System Services
1) User Interface : Command Line Interface (CLI), Graphics User Interface(GUI) ,Batch
2) Program execution : 메모리에 로딩, run, end
3) I/O operations
4) File-system manipulation(파일 시스템 관리)
5) Communication : Shared memory 또는 message passing
6) Error detection
7) Resource allocation
8) Accounting : 사용자가 얼마나 어떤 컴퓨터 리소스를 사용하는지, To keep track
9) Protection and Security
CLI
Kernel 이나 Systems program에 함수들이 구현, Shell 안에서 실행 ex) man read , which ls
GUI
User-friendly desktop ex) Icons, 우리가 아는 마우스,키보드 등등
-> Many Systems now include both CLI and GUI interfaces
System Calls : 소프트웨어 인터럽트 통해 kernel 에 요청
(1) 운영체제가 서비스를 이용자에게 개방한 것, 이용자는 시스템 콜에 의해 복잡한 프로그래밍을 할 필요 X
(2) 사용자 프로그램에서 운영체제의 기능을 불러 내기 위한 프로그램 절차 호출 함수
Programming interfaces to the services provided by the os
API : 어떤 서비스를 어떻게 얻을지에 대한 함수의 정의
-운영체제와 응용프로그램 사이의 통신에 사용되는 언어나 메세지 형식
- Win32 API,POSIX API , JAVA API 등등
- 고유한 숫자 넘버링
- 내부구현 알 필요 x
- Kernel 에 접근
User Mode Process 가 system call을 하면 CPU는 인터럽트를 받아서 커널 함수를 실행한다. 0x80 -> 시스템 콜하는 인터럽트 주소
System Call Parameter Passing
1. registers 2. block, table, memory 3. stack by OS
System Call Type
-Process control
-File management
-Device management
-Information maintemance
-Communications
-Protection
Example : MS-DOS
-Single tasking
-Shell 부팅할 때 생성
-Single memory space
프로세스 딱 하나!
Example : FreeBSD
-Multitasking
-fork() System으로 Shell, process 생성
DTrace
- 어떤 동작, 기능을 했는지 Trace
'공부 > 운영체제' 카테고리의 다른 글
운영체제7 Deadlock (0) | 2020.07.03 |
---|---|
운영체제6 Process Synchronizaiton (0) | 2020.07.03 |
운영체제5 CPU Scheduling (0) | 2020.06.21 |
운영체제4 Threads (0) | 2020.06.17 |
운영체제3 Processes (1) | 2020.06.14 |