운영체제 역할에 대해서 알아보자 !
1.1 운영체제의 역할
1. User Interface(편리성)
2. Resource Management(효율성)
3. Process and Thread management
4. System management
1.2 컴퓨터 시스템의 구성
- System Call Interface은 사용자가 직접 커널, 하드웨어를 조작하면 위험하기 때문에, 이것을 통로로 활용하여 조작 가능하다.
- System Call Interface은 커널의 기능 중에 사용자가 필요로 하는 기능들을 모아놓은 인터페이스다.
- Kernel은 통상 OS라고 한다.
1.2.1 컴퓨터 시스템의 구성 (기능)
1.3 운영체제 구분
1. 동시 사용자 수
2. 동시 실행 프로세스 수
3. 작업 수행 방식
1.4 동시 사용자 수
단일 사용자
- 한 명의 사용자만 시스템 사용 가능하다.
- 개인용 장비(PC, Mobile) 등에 사용한다.(Window10, android, MS-DOS 등)
다중 사용자
- 동시에 여러 사용자들이 시스템 사용한다.
- 서버 및 클러스터 장비 등에 사용한다.(Unix, Linux, Windows Server)
1.5 동시 실행 프로세스 수
단일작업
- 시스템 내에 하나의 작업(프로세스)만 존재하다.
- 운영체제 구조가 간단하다.
다중 작업
- 동시에 여러 작업(프로세스)이 가능하다.
- 운영체제 구조가 복잡하다.
작업 수행 방식에 대해서 간단히 알아보자 !
1.6.1 순차 처리
- 운영 체제 개념이 존재하지 않았다.
- 실행하는 작업 별 순차 처리한다.(예: 에니악)
1.6.2 Batch Processing Systems
- 모든 시스템을 중앙에서 관리 및 운영한다.
- 사용자의 요청 작업을 일정 시간 모아 두었다가 한번에 처리한다.
장점
- 시스템 지향적이다.
- 많은 사용자가 시스템 자원을 공유한다
- 처리 효율이 향상한다
단점
- 생산성이 저하한다.(같은 유형의 작업들을 모이기를 기다려야 됨)
- 긴 응답시간(Turnaround time)
1.6.3 Time Sharing Systems
- 여러 사용자가 자원을 동시에 사용한다.(OS가 파일 시스템 및 가상 메모리 관리)
- 사용자 지향적이다.(대화형 시스템, 단말기)
장점
- 응답시간 단축한다.
- 생산성이 향상된다.(프로세스 유휴시간 감소 효과)
단점
1.6.4 Distributed Processing Systems
- 네트워크를 기반으로 구축된 병렬처리 시스템이다.
- 사용자는 분산운영체제를 통해 하나의 프로그램, 자원처럼 사용 가능하다.
장점
- 자원 공유를 통한 높은 성능이 있다.
- 고신뢰성, 높은 확정성이 있다.
단점
1.6.5 Real-time Systems
- 작업 처리에 제한시간을 갖는 시스템이다.
- 제한 시간 내에 서비스를 제공하는것이 자원 활용률보다 중요하다.
종류
- Hard real-time task(발전소 제어, 무기 제어, 발사 제어)
- Soft real-time task(동영상 제어)
- Non real-time task
참고자료 : HPC, ChatGPT을 활용해서 작성하였습니다.