Download presentation
Presentation is loading. Please wait.
Published byTheresa Fisher Modified 6년 전
1
운영 체제 서울대학교 통계학과 2009년 2학기 컴퓨터의 개념 및 실습 (
2
시스템 소프트웨어 소프트웨어 = 시스템 소프트웨어 + 응용 소프트웨어 시스템 소프트웨어
사용자(또는 응용 소프트웨어)가 컴퓨터 시스템을 용이하게 활용하도록 지원함 운영체제, 컴파일러, 시스템 도구 등 운영체제 (Operating System) 하드웨어와 응용 프로그램 사이의 인터페이스 역할을 담당하는 시스템 소프트웨어
3
Software (리뷰) 하드웨어를 바탕으로 컴퓨터가 실제로 작동하기 위해 필요한 논리적 구성 요소
구분: 시스템 소프트웨어 + 응용 소프트웨어 Hardware System Software Application Software User
4
운영체제의 구성: 커널 + 서비스 프로그램 커널 (Kernel, 좁은 의미의 운영체제)
OS의 핵심으로 부팅할 때 주기억장치에 로드되어 상주 운영체제 중 자주 사용되는 부분을 커널로 구성 CPU 스케쥴링, 인터럽트(interrupt) 처리 루틴 시스템 자원을 관리하고 입출력기능 수행 서비스 필요할 때 보조 기억장치에서 주기억 장치로 로드되어 수행 편리성 제공 : 워드패드, 계산기, 그림판 등 응용소프트웨어 시스템소프트웨어 서비스프로그램 커널 운영체제
5
운영 체제의 종류 작업 방식 단일 작업, 다중 작업 사용자 단일 사용자, 다중 사용자
동작 방식 일괄 처리, 시분할, 실시간
6
운영 체제의 종류 (작업 방식) 단일 작업(single tasking) : 한 번에 하나의 작업만 처리
MS-DOS 다중 작업(multi tasking) : 동시에 두 개 이상 UNIX, MS Windows등에서는 한 명령의 수행이 끝나기 전에 다른 명령이나 프로그램을 수행할 수 있음 두 개 이상의 작업이 번갈아 가면서 조금씩 처리
7
운영 체제의 종류 (사용자) 단일 사용자 MS-DOS, Windows 95 이전 버전 다중 사용자
미니 컴퓨터 급 이상의 컴퓨터에서는 일반적으로 다중 사용자 운영 체제를 사용함 다중 사용자를 지원하는 경우에는 사용자 관리가 필요 ID, PW, 권한 부여 UNIX, Windows NT, Windows Server Windows 98 이후 버전
8
운영 체제의 종류 (동작방식) 일괄 처리(batch processing) 작업 요청을 일정량 모아서 한꺼번에 처리
초기 운영 체제의 형태, 비효율적 (작업이 완전 종료 될 때까지 기다리는 시간이 많음)
9
각 사용자가 컴퓨터로부터 서비스를 제공 받는 시간을 숫자로 표시
운영 체제의 종류 (동작방식) 시분할 (time sharing) 여러 작업을 수행할 때 컴퓨터 처리 능력을 시간별로 분할해서 사용 일괄 처리 시스템에 비해 짧은 응답 시간을 가짐 예) UNIX 1,4,7,... 2,5,8,... 3,6,9,... 각 사용자가 컴퓨터로부터 서비스를 제공 받는 시간을 숫자로 표시
10
운영 체제의 종류 (동작방식) 실시간(real time) : 정해진 시간 안에 어떠한 일이 반드시 종료되어야 하는 시스템
매우 빠른 입력, 처리 속도를 가짐. RTOS (Real Time OS)라고 부름 특수 목적의 전용 프로그램을 항상 메모리에 적재하여 반복 수행 증권 거래 관리 시스템, 은행 입출금 시스템, 미사일 제어, 우주선 비행 시스템 등의 운영 체제 참고: 임베디드 OS는 대부분 RTOS
11
운영체제의 종류 (기타) 분산 운영 체제 여러 개의 컴퓨터들을 사용자에게 하나의 컴퓨터로 보이게 함
사용자는 프로그램이나 파일이 어느 컴퓨터에 있는지 알 필요가 없음
12
운영 체제의 기능 프로그램 및 사용자 보호 입출력 관리 주기억 장치 관리 CPU 관리 (프로그램 실행 관리) 유저 인터페이스
13
운영체제의 기능 입/출력 관리 프로그램 및 사용자 보호 운영체제 (OS) 유저 인터페이스 주기억장치 관리 CPU 관리
14
(1) 프로그램 및 사용자 보호 각 사용자의 시스템 자원 사용을 통제 프로그램 상호간의 자원 사용 통제
A가 B의 파일 삭제 방지 일반 사용자의 OS의 구성요소 제거 방지 인증(authentication)과 권한부여(authorization) 프로그램 상호간의 자원 사용 통제 잘못된 코드에 의한 자원의 비효율적인 사용 방지 다른 프로그램의 불법 접근으로부터 운영체제 보호 저장 데이터 파괴, 프린터 출력 오류 프로그램은 운영체제의 시스템 콜(system call)을 통해서만 운영체제의 기능을 이용함 OS는 시스템 호출을 검사하여 자원 사용에 문제가 없는지를 검사
15
(2) 입출력 관리 인터럽트(interrupt) : 운영 체제에게 특정한 서비스를 수행하도록 하는 사건 또는 오류
예) 출력 장치가 출력명령을 끝마칠 때 입력 장치에 요구한 데이터가 준비된 경우 0으로 나누게 될 때 접근할 수 없는 기억장소 접근 시 인터럽트가 발생하면, 운영체제는 수행 중이던 작업의 상태를 기억시킨 후, 인터럽트를 처리
16
사용자가 키보드를 눌렀다는 인터럽트 신호 발생
키보드 인터럽트 처리 수행중인 작업 사용자가 키보드를 눌렀다는 인터럽트 신호 발생 키보드 인터럽트 처리 루틴 현재 상태저장 후 작업 전이 원래 수행 중이던 작업으로 전이 중단 시점부터 재수행 키보드 입력처리
17
파일 관리 여러 보조기억 장치마다 저장 및 읽기 방식이 다름
운영체제는 보조기억 장치의 종류에 관계없이 응용 프로그램이 읽고 쓸 수 있는 방법을 제공해야 함 Create, Delete, Read, Write등과 같은 서비스를 시스템 콜에 의해서 제공
18
(3) 주기억 장치 관리 주 기억 장치의 어느 부분이 어떤 프로그램에 의해 사용되고 있는가를 (기억장치의 한 영역을 이용해) 기록 프로그램 실행에 주 기억 장치가 필요할 때 할당하고 더 이상 필요하지 않게 될 때 회수 여러 프로그램이 동시에 수행되므로, 주 기억 장치는 공유됨. 다른 사람의 프로그램이나 OS 보호 프로그램 할당 방식 고정 분할 방식 가변 분할 방식 가상 기억 장치
19
고정 분할 할당 주 기억 장치를 몇 가지 크기의 분할로 나눔
프로그램의 요청 메모리 크기보다 크면서, 비어있는 분할 중 가장 작은 메모리 영역을 할당 구현이 빠르고 간단 운영체제 분할 1 분할 2 분할 4 분할 3 프로그램 A 프로그램 B 프로그램 A, B 할당 internal fragmentation
20
가변 분할 할당 프로그램이 요구하는 만큼 할당 분할 크기에 융통성이 있음, 그러나 관리가 복잡 fragmentation
운영체제 프로그램 A 프로그램 B 프로그램 C 프로그램 D 프로그램 B가 끝나고 D가 수행됨 프로그램 A,B,C가 수행 중 fragmentation 통합필요 external fragmentation
21
가상 기억 장치(Virtual Memory)
주 기억 장치가 4MB인 경우, 전체 크기가 20MB인 프로그램(들)을 (동시에) 수행하려면? 프로그램 중에서 수행되고 있는 일부만 주 기억 장치에 있도록 하고 나머지는 보조 기억 장치에 저장 (필요할 때만 주 기억 장치에 적재) 실제 메모리보다 훨씬 큰 논리적 메모리 가정 컴퓨터 사용 중, 수행 프로그램의 개수가 늘어나면 성능이 저하되는 이유 중 하나
22
가상 기억 장치(Virtual Memory)
프로그램B 프로그램C 보조기억장치 주기억장치 수행에 필요한 프로그램의 부분들만 주기억장치에 적재 사용자 A의 가상기억장치 사용자 B의 가상기억장치 사용자 C의 가상기억장치
23
(4) CPU 관리 (프로그램 실행 관리) 프로세스(process) : 실행중인 프로그램
여러 프로그램을 수행할 경우, CPU scheduling 필요 CPU 스케줄링 기법 FIFO Round robin Priority scheduling
24
FIFO (First In First Out)
처리를 요구한 순서대로 수행 짧은 시간을 요하는 프로세스도 오래 기다릴 수 있음(Unfair) 대화형 시스템에 부적합 일괄처리에 용이 C B A CPU 수행대기중인 작업리스트 수행시작 수행완료
25
Round Robin 한 프로세스를 일정한 시간 만큼만 수행하고 현재 상태를 저장한 다음, 돌아가면서 다음 프로세스를 같은 방식으로 수행(Fair) 현재 프로세스 상태를 계속적으로 저장해야 함 대화형 시스템에 적합 C B A CPU 수행대기중인 작업리스트 수행시작 수행완료 A’ 할당된 시간 종료 할당된 시간에 완료되지 못한 작업
26
Priority Scheduling CPU 각 프로세스마다 우선순위를 부여하여 우선순위가 높은 프로세스부터 수행
어떻게 우선순위를 부여 하는가가 문제 실행시간의 추정치가 가장 작은 작업에 우선순위를 주는 경우를 생각 할 수 있음 UNIX : Round Robin + Priority C B A CPU 수행대기중인 작업리스트 B,C,A의 순서로 수행 수행완료 실행시간의 추정치
27
(6) 사용자 인터페이스 커맨드라인 방식 GUI (Graphical User Interface) 방식 MS DOS, UNIX
명령어를 키보드를 통해 문자형태로 입력 사용자가 명령어에 익숙해져야 함 GUI (Graphical User Interface) 방식 MS Windows, Mac OS 마우스를 통해 원하는 아이콘을 선택/실행 정확한 명령어를 몰라도 사용 가능
28
운영 체제의 예 MS-DOS MS Windows UNIX (LINUX) OS/2 Mac OS Embedded OS
29
DOS (Disk Operating System)
Microsoft에서 1981년 IBM-PC를 위해 운영 체제로 개발 (MS-DOS) 부팅(booting), 부트스트래핑(bootstrapping) 컴퓨터 전원을 켰을 때 OS가 디스크에서 메모리로 읽혀 지는 과정 단일 사용자용 운영체제, 메모리 관리 능력의 한계
30
MS Windows Windows 3.x Windows 95 Windows NT (New Technology)
운영체제는 아님 멀티태스킹, GUI 제공 Windows 95 Plug and Play OLE (Object Linking and Embedding): 여러 개의 자료를 서로 연결하거나 결합할 수 있도록 하는 기능 Windows NT (New Technology) 다중 사용자 OS 이전의 PC용 Windows와 다르게 설계 Windows 2000 Windows XP Windows Vista Windows CE (임베디드 OS)
31
Windows Vista
32
UNIX PDP-7에서 프로그램 개발을 위한 운영 체제 개발 (1969, Bell Lab.)
이식성(portability), 작은 커널 크기, 공개 소스 코드 (C language로 작성) 다양한 버전 System V, SunOS, Solaris, Ultrix (DEC), AIX (IBM), IRIX, Xenix, Linux (PC용) 대부분의 OS에서 핵심 부분은 UNIX를 모델로 함 대형 컴퓨터 및 전문적인 목적으로 사용 최근 GUI 를 통한 사용의 편리성 제공
33
OS/2, Mac OS OS/2 Mac OS IBM사에서 다중 작업 지원을 위해 개발
편리한 GUI 제공, DOS/Windows에 대한 호환성, 통합된 네트워크 환경, 안정성 Mac OS Apple에서 초보자도 배우기 쉽고 사용하기 쉬운 컴퓨터 시스템을 위해 설계 GUI 기반, 마우스 중심의 사용자 인터페이스 (IBM, MS보다 앞섬)
34
Mac OS X
35
임베디드(Embedded) OS 로봇, 스마트폰, 디지털 미디어 플레이어, …
특징 Compact – 필요한 소수의 기능만을 탑재 Efficient 대부분 RTOS. 즉, 제한된 시간 내에 반드시 계산을 완료해야 하는 제약조건을 만족시키고, 멀티태스킹이 필수로 지원됨. 종류 기기의 종류 만큼 다양함 PDA용 iPhone OS (Max OS X를 기반으로 함) Windows CE , Pocket PC, Windows Mobile 로봇, 스마트폰, 디지털 미디어 플레이어, …
36
국산 OS? OS 환경(2008.3 기준) TmaxOS 개발계획 대대적 기사화 (2008.03) 범용 OS 임베디드 OS
현재 PC용 OS는 MS 윈도우가 세계시장의 91.58%, 국내시장에선 98.8%를 독점하고 있다. 또한 임베디드 OS는 외산인 심비안, 윈도우 모바일, 공개SW인 리눅스(Linux) 등이 국내시장의 93.2%를 차지하고 있으며, 서버용 OS도 대부분 IBM, HP, Sun 등 글로벌 업체들의 유닉스(UNIX) OS가 대부분을 점유하고 있다. (출처: ZDNet 뉴스, ) TmaxOS 개발계획 대대적 기사화 ( ) 범용 OS 임베디드 OS
37
Tmax Window? 내세우는 특징 현재 상황은???? 날 웃긴 ‘티맥스 윈도우 9’
내세우는 특징 ▲MS 윈도우 및 MS 오피스 프로그램과의 높은 호환성 ▲작은 커널을 통한 안정성 ▲다양한 운영체제를 지원하는 범용성 ▲데이터베이스관리시스템내장을 통한 데이터관리의 효율성 ▲개인, 기업에 따른 차별화된 맞춤형 보안 ▲MS 윈도우와 유사한 인터페이스 현재 상황은???? 날 웃긴 ‘티맥스 윈도우 9’ 티맥스 윈도 발표회, 하지 말았어야 했다 티맥스 윈도는 짜집기?
Similar presentations