1. 운영체제
- 운영체제(Operating System)란?
- 하드웨어를 효과적으로 사용할 수 있도록 해주는 프로그램
- 메모리 사용 제어 –> Memory
- 파일 시스템 관리 –> Disk
- 작업 스케줄링 –> CPU
- 계정 관리 –> 사용자
- 보안 관리 –> 네트워크
- 하드웨어를 효과적으로 사용할 수 있도록 해주는 프로그램
- 컴퓨터 시스템을 구성하고 있는 주기억 장치,입출력 장치, 처리 시간 등의 시스템 자원을 언제 배분할 것인가를 결정하는 프로그램 기능을 가리킨다.
- 스케줄링된 프로세서 컨트롤의 목적은, 여러 개의 프로세서가 공동으로 하나의 일을 수행하는 경우!에 전체로서 그 일의 실행 시간을 최단으로 하도록 제어하는 것.
*그러나, 시스템 자원에 제약이 있을 경우는 반드시 그 일을 최단 시간에 종료시킬 수 있다고 한정하지 않음
->이러한 경우 자원의 사용률에 대해 모순을 초래하지 않는 범위에서 그 일의 실행 시간이 가장 짧아지도록 차선의 스케줄링을 생각하게 됨.
2. 운영체제 구분
- 인터페이스에 의한 구분
- 문자(명령어)기반
- CP/M , UNIX, DOS, OS/400, VMS, MVS, ….
- GUI(Graphic User Interface) 기반
- Lisa, Mac OS, New Tide, Windows, OS/2, Next, …
- 문자(명령어)기반
- 실행단위에 의한 구분
- 단일 프로세스(Process) 체제
- DOS, ~Windows 3.x –> 단일 사용자용 [요즘에 다루어 지지 않음..]
- 멀티 프로세스 체제
- Windows 95/98, OS/2 , Max OS –> 단일사용자용
- UNIX, OS/400, VMS, MVS , NEXT –> 다중 사용자 용
- 단일 프로세스(Process) 체제
3.UNIX의 특징

- 개방형 시스템(open system)
- multi-user/process system
- background
- pipelining
- 자원공유(resource-sharing)
- 계층적 파일시스템(hierarchical file system) -> 쉽게 말해 windows의 c\ 밑에 여러가지 폴더가 존재 하고 그 아래 또 다른 폴더가 존재하는 형식
-> windows는 문자 기반의 OS인 unix를 사용하기 편리하게 GUI기반으로 만든 OS임으로 구조가 비슷할 수 바께 없다. - 이식성(portability)
- 쉘 프로그래밍(shell programmng)
- 풍부한 유틸리티(rich utilities) -> vi편집기가 아닌 여러가지 명령어 ex) ls , cd , ifconfig 등
- 오랜 역사(long history)
4.Unix 특성(복습)
- 동시에 여러 사용자가 컴퓨터 시스템을 사용할 수 있게 한다.
- 프로그램 및 프로세스와 파일의 생성, 수정 그리고 삭제를 제공한다.
- 프로세스와 파일의 위치를 부여하는 디렉토리 계층을 제공한다.
- 공유 자원에 대해 경쟁을 벌이는 프로세스들이 공정하고 효과적인 방법으로 프로세서, 메모리 그리고 디스크 공간을 공유하게 한다.
- 프로세스와 주변장치간에 의사소통을 할 수 있게 하고, 상이한 기계상에서도 그들 사이의 의사소통이 가능하게 한다.
- 많은 표준 유틸리티를 갖추고 있다.
- 많은 고품질의 상업용 소프트웨어 패키지가 제공된다.
- 라이브러리 루틴과 유사한, 잘 정의된 시스템 호출을 통해 프로그래머들이 운영적 특성에 쉽게 접근할 수 있다.
- 이식성이 우수한 운영체제이고, 그러므로 광범위하며 다양한 기종에서 이용할 수 있다.
댓글 없음:
댓글 쓰기