운영체제의 특징
운영체제 종류
운영체제의 개념
운영체제는 사용자가 컴퓨터 하드웨어를 쉽게 사용하도록 인터페이스를 제공하는 소프트웨어
운영체제에서 커널의 기능
운영체제는 인터페이스(쉘) + 커널의 구조이다.
(커널: 운영체제의 핵심이 되는 기능들이 모여있는 컴퓨터 프로그램)
윈도즈 운영체제
- 그래픽 사용자 인터페이스 (GUI) 제공
- 선점형 멀티태스킹 방식 제공
- 자동 감지 기능 제공
- OLE 사용
유닉스 계열 운영체제 특징
- 대화식 운영체제
- 다중 작업 기능
- 다중 사용자 기능 제공
- 이식성 제공
- 계층적 트리 구조 파일 시스템 제공
운영체제 핵심 기능 파악
운영체제 핵심 기능
- 반입 기법: 주 기억장치에 적재할 다음 프로세스의 반입 시기를 결정하는 기법
- 배치 기법: 배치 기법: 디스크에 프로세스를 어느 위치에 저장할 지 결정
- 할당 기법: 프로세스를 주기억장치에 어떤 방법으로 할당할 지 결정
- 교체 기법: 어떤 프로세스를 제거할 것인지 결정
- 최초 적합(First-fit)
- 최적 적합(Best-fit)
- 최악 적합(Worst-fit)
프로세스 관리
- 생성 상태
- 준비 상태
- 실행 상태
- 대기 상태
- 완료 상태
생성, 준비, 실행, 대기 완료
1. 디스패치: 준비 -> 실행
2. 타이머 런 아웃: 실행 -> 준비
3. 블록: 프로세스가 실행상태가 될수 없는 상태
4. 웨이크 업 : 대기 상태 -> 준비 상태
프로세스 스케줄링
- 서비스 시간: 프로세스가 결과 산출까지 소요되는 시간
- 응답시간(반환 시간): 대기시간 + 수행시간
- 평균 응답시간
- 대기 시간
- 응답률: (대기시간 + 서비스시간)/서비스시간
- 선점형 스케줄링: 하나의 프로세스가 차지하고 있으면 우선순위가 높은 다른 프로세스가 현재 프로세스를 중단시키고 점유하는 방식
- 비선점형 스케줄링: 한 프로세스가 할당받으면 작업 종료까지 다른 프로세스는 점유가 불가능한 방식
- 라운드로빈(RR): 같은 크기의 CPU 할당
- SRT: 가장 짧은 시간이 소요되는 프로세스를 먼저 수행
- 다단계 큐: 여러 개의 큐를 사용하여 서로 다른 스케줄링 수행. 우선순위가 높은 큐가 낮은 큐에 비해 더 많이 수행
- 다단계 피드백 큐: CPU 와 입출력 위주인 프로세스의 특성에 따라 큐마다 서로 다른 CPU시간 할당량 부여
- 우선순위: 우선순위에 따라 할당
- 기한부: 작업들이 명시된 시간이나 기한 내에 완료
- FCFS: 도착한 순서에 따라 할당
- SJF: 도착한 시점에 가장 짧은 서비스 시간을 갖는 프로세스 우선
- HRN: 응답률((대기시간+서비스시간)/서비스시간) 이 가장 높은 프로세스 우선
- 프로세스 스케줄링 알고리즘 계산법
반환시간 = 종료시간 - 도착시간
대기시간 = 반환시간 - 서비스시간
가상화, 클라우드
- 가상화 개념
가상화는 물리적인 리소스를 사용자에게 하나로 보이게 하거나, 하나의 물리적인 리소스를 여러 개로 보이게 하는 기술
- 클라우드 컴퓨팅
인터넷을 통해 가상화된 컴퓨터 시스템 리소스를 제공하고 정보를 클라우드에 연결된 다른 컴퓨터로 처리하는 기술
클라우드 컴퓨팅 분류
사설 클라우드 + 공용 클라우드 + 하이브리드 클라우드
- IaaS: 서브 스토리지 같은 시스템 자원을 클라우드로 제공하는 서비스
- PaaS: 인프라를 생성, 관리하는 복잡함 없이 어플리케이션 개발을 가능하게 하는 서비스
- SaaS: 소프트웨어 및 관련 데이터는 중앙에 호스팅되고 사용자는 웹 브라우저 등의 클라이언트를 통해 접속하여 서비스 형태로 이용하는 서비스