Operation System
"운영체제? 그게 뭘까?"
흔하게 Window7, 8, 10 정도 생각 하실거라고 생각합니다.
그 운영체제가 어떠한 원리로 돌아가고 있는지에 대해 알아보는 시간을
가져보도록 할껀데요.
먼저 전체적으로 본 후에 하나씩 다룰 예정입니다.
운영체제의 역할은 무엇일까?
사용자가 응용 프로그램(**.exe)을 실행 할 수 있는 기반 환경을 제공하여
컴퓨터를 편리하게 사용할 수 있도록 도와주고,
자원을 효율적으로 관리할 수 있도록 여러 기능을 제공합니다.
일반적으로 컴퓨터 사용자와 하드웨어(H/W), 소프트 웨어(S/W)로 나눕니다.
컴퓨터사용자
- 일반 사용자
- 전문 프로그래머(개발자)
자원을 효울적으로 관리 한다고 했는데 자원은 무엇인지 알아보도록 하겠습니다.
자원?
- Resource(소프트웨어 S/w, 하드웨어 H/w)
< 소프트웨어 (S/w) >
-시스템 소프트웨어
-응용 프로그램 : 사용자나 전문가에 의해 만들어진 프로그램(게임, MS Office 등)
-유틸리티 프로그램
< 하드웨어 (H/w) >
1.CPU(중앙처리장치)
-프로세스
- 실행중인 프로그램
- 비동기식
-스케줄링
-비선점 스케줄링
- FIFO, SJF, HRN, 기한부, 우선순위
-선점 스케줄링
- SRT, RR, MLQ, MFQ
-PCB(Process Control Block)
-프로세스 상태 전이
-준비 -> 실행 (Dispatch)
-실행 -> 준비 (TimeOut)
-실행 -> 대기 (Sleep, Block)
-대기 -> 실행 (wake up)
-교착상태
- 예방 , 회피 , 발견 , 회복
2.메모리
-주기억장치(RAM)
-반입(Fetch) 전략
-요구 반입, 예상 반입, 페이지 교체
-배치(Placement) 전략
-최초, 최적, 최악 적합
-가상기억장치
- 고정분할(Paging)
- 가변분할(Segment)
-Thread(쓰레드)
-슬레싱(slashing) 개념
-워킹 셋
-구역성 이론 (시간, 공간)
-보조기억장치(HDD)
-디스크 스케줄링
< 출력장치(키보드,마우스,모니터 등) >
- 프로그램에 의한 I/O
- 인터럽트에 의한 I/O
- DMA에 의한 I/O
- Cycle Steel
- Channel에 의한 I/O
전체적으로 보면 이정도로 나눌 수 있는데요.
다음시간부터 차례대로 보도록 하겠습니다
피드백은 언제나 환영입니다.