이재우
운영체제 정의 ◦ OS(Operation System) ◦ 사용자와 컴퓨터 시스템 사이에 위치하여 컴퓨터 시스템의 전반 적인 동작을 제어하고 조정하며 ◦ 사용자에게 편리성을 제공하여 한정된 시스템 자원을 효율적으 로 사용할 수 있도록 관리하는 여러 시스템 프로그램들의 집합 운영체제 종류 ◦ 개인용컴퓨터와 중대형 컴퓨터 2
목적 ◦ 컴퓨터 시스템의 자원을 편리하게 사용할 수 있는 환경을 제공 ◦ 컴퓨터 시스템의 자원들을 효율적으로 관리하여 시스템의 성능을 최적화 기능 ◦ 컴퓨터의 기능을 사용자가 잘 활용하도록 돕고, ◦ 하드웨어가 성능을 잘 발휘하도록 관리 3
명령형 인터페이스 (CLI) 방 식 ◦ 운영체제가 제공하는 기능을 키보 드 입력을 통해 사용하는 인터페이 스 방법 MS 도스 (MS-DOS) 유닉스 (UNIX) 의 여러 쉘 (Shell) 윈도우즈의 명령 프롬프트 (Command Prompt) 그래픽 사용자 인터페이스 (GUI) 방식 ◦ 제록스 (Zerox) 사의 폴로 알토 (Palo alto) 연구소에서 1970 년대 처음 개발 애플의 맥 OS 유닉스의 X 윈도우 MS 윈도우 4
초기 운영체제 ◦ 첫 운영체제 1952 년 IBM-701 컴퓨터의 사용을 위해 GM(General Motors) 연구소 에서 개발한 프로그램 5
일괄처리방식 ◦ 일정 기간 또는 일정량의 자료 처리를 모아 두었다가 한 시점에 순 서적으로 일괄 처리하는 자료 처리 방식 ◦ 장단점 한 번 시스템을 차지한 자료는 시스템 자원을 독점하여 처리하므로 컴퓨터 시스 템을 효율적으로 사용 CPU 가 사용 가능하더라도 다른 처리를 할 수 없는 유휴 시간 (idle time) 을 갖게 되는 단점 작업 제출과 작업 완료 사이의 시간 (turn around time) 이 많이 걸려 작업 결과 를 빠르게 확인할 수 없는 단점 6
방식 ◦ 하나의 시스템을 여러 명의 사용자가 단말기를 이용하여 여러 작 업을 처리할 때 이용하는 처리 방법 ◦ CPU 의 이용 시간을 잘게 분할하여 여러 사용자의 작업을 순환하 며 수행 ◦ 실행 프로그램은 연산처리장치의 할당 시간을 돌아가며 부여 받 는 타임 조각 (time slice) 방법으로 시분할을 구현 ◦ 중앙처리장치의 유휴 시간을 줄일 수 있는 장점 7
방식 ◦ 2 개 이상의 여러 프로그램을 주기억장치에 동시에 저장하고 하나 의 CPU 로 실행하는 방식 ◦ 하나의 프로그램이 주변장치의 처리를 기다리는 동안 다른 프로 그램이 CPU 에서 실행될 수 있게 함으로써 전체적인 시스템의 처 리 효율을 높이는 방식 ◦ 기억장치 관리 기법과 CPU 스케쥴링 기법이 필요 8
방식 ◦ 2 개 이상의 중앙처리장치 (CPU, processor) 를 사용하여 작업을 여러 개 로 분담하여 프로그램을 동시에 수행하는 방식 종류 ◦ 비대칭적 (asymmetric) 다중 처리 방식 별도의 주 처리기만이 운영체제를 수행하며 제어를 담당 ◦ 대칭적 다중 처리 방식 모든 처리기들이 하나의 운영체제를 동시에 수행하며 각자의 작업을 수행 9
방식 ◦ 한 사람의 사용자가 한 대의 컴퓨터로 2 가지 이상의 작업 (task) 을 동시에 처리하거나 프로그램들을 동시에 구동시키는 기능 10
실시간 처리 시스템 ◦ 방식 처리를 요구하는 작업이 발생할 때마다 지정된 짧은 시간 내에 작업을 처리하여 확실한 응답이나 출력을 보장하는 시스템 ◦ 예 미사일 방어 시스템 좌석 예약 시스템 은행의 예금 업무 분산처리 시스템 ◦ 방식 네트워크를 통해 연결된 여러 자료 저장 장소와 컴퓨터 시스템에 작업 과 자원을 나누어 서로 통신을 하면서 일을 처리하게 하는 방식 11
12
Disk Operation System ◦ 디스크 중심의 명령행 사용자 인터페이스 (Command Line User Interface) 방식의 운영체제 ◦ 1981 년 8 월 버전 1.0 으로 시작 13
iOS 는 "iPhone OS" 란 명칭에서 아이패드 출시 이후, 모바일 OS 를 통칭하는 용어 로 쓰고 있습니다. OS 란 Operating System 의 약자로 PC, 휴대폰, 전자기기 등 의 하드웨어를 구동하는 Software 를 말합니다. iOS 버전 별 특징 14
GUI 방식 ◦ 도스 운영체제의 명령행 인터페이스 방식에서 발전하여 그래픽 사용자 인터페이스 (GUI) 방식을 채택한 운영체제 ◦ 1983 년 처음 출시 ◦ 1993 년 3.1 에서 부터 널리 사용 시작 윈도우 3.1 도 운영체제라기 보다는 운영환경에 불과한 것이었고, 도스가 실질 적인 운영체제 15
실질적인 GUI 운영체제 ◦ 파일 시스템 이외에는 MS-DOS 의 기능을 사용하지 않는 실질적 인 그래픽 사용자 인터페이스를 채택한 하나의 독립된 운영체제 16
17
Operating System/2 ◦ IBM 과 마이크로소프트 사가 협력 하여 개발 1987 년인텔의 CPU 에 적합하도 록 16 비트 운영체제 OS/2 를 개발 이후 인텔의 80386/80486 계열 CPU 에서 능력을 최대로 발휘하도록 설계한 운영체제 ◦ 1991 년 IBM 과 마이크로스프트는 결별하고 각각 독자적인 운영체제 를 개발 IBM 은 독자적으로 OS/2 를 발전시켜 인 텔의 CPU 에 적합하도록 완전한 32 비트 운영체제인 OS/2 2.0 을 1992 년에 발표 마이크로스프트가 OS/2 를 발전시킨 것 이 윈도우즈 NT 18
버클리 대학에서 유래한 데서 붙여 진 이름으로 무료 OS ◦ 장점 FreeBSD 라이센스를 따르며, 진정한 프리 라이센스. Application, OS 설치가 쉽다. 386 에서도 잘 돌아간다. 웹서버나 FTP 서버로 엄청난 기 능을 발휘한다. ◦ 단점 하드웨어 호환성은 솔라리스보 다 좋지만 윈도보다 떨어진다. 멀티미디어는 지원하지 않음 19
유닉스 (Unix) 기반의 운영체제 ◦ 핀란드의 리누스 토발즈 (Linus Torvalds) 에 의하여 개발 GPL ◦ 리눅스의 소스 코드를 일반공중허가 (GPL: General Public License) 에 따라 인터넷에 공개해 모든 사람이 자 유롭게 사용 ◦ 일반인들이 직접 리눅스의 개선에도 참여 특징 ◦ 인터넷 프로토콜인 TCP/IP 를 강력하게 지원하는 등 네트 워크 기능이 강화 ◦ 다중 사용자 (Multi User), 다중 프로그래밍 (Multi Programming) 방식을 지원하는 안정성 있는 운영체제 20
유닉스 (Unix) ◦ 벨 연구소의 데니스 리치 (Dennis M. Ritchie) 와 켄 톰슨 (Ken Thompson) 이 참여한 멀틱스 (MULTICS) 운영체제 팀에서 개발한 운영체제 ◦ PDP-7 이라는 새로운 시스템의 운영체제로 개발한 것이 유닉스 (UNICS : UNiplexed Information and Computing Service) ◦ 이것을 발전시켜 1973 년 새로 개발한 언어 C 를 이용하 여 시스템 PDP-11 을 위해 만든 운영체제가 유닉스 (Unix) ◦ 최초 C 언어로 작성된 소스 코드는 약 11,000 줄로 그 중 95% 인 10,000 줄은 C 언어로 작성되었으며 나머지 1,000 줄은 어셈블리 언어로 작성 이식성 (Portability) 이 좋은 운영체제 21
커널 (Kernel) ◦ 운영체제의 가장 핵심이 되는 모듈로 CPU 와 주기억장치를 관리하 고 시스템 호출을 처리하며 주변장치를 관리하는 기능 쉘 (Shell) ◦ 순수 유닉스 운영체제와 사용자 사이에서 중간적인 매개 역할을 하는 프로그램으로 도스와 같은 명령행 인터페이스 방식 ◦ 표준 UNIX 명령 인터프리터로서 사용자가 입력한 명령을 해석하 여 그에 맞는 다른 프로그램을 실행시키는 유틸리티 프로그램 ◦ 종류 스티븐 (Steven Bourne) 의 본쉘 (Bourne Shell, sh), 빌 조이 (Bill Joy) 의 C 쉘 (csh), 데이브 콘 (Dave korn) 의 콘쉘 (Korn Shell, ksh) 22