Transcript

운영체제

CompanyCompanyLogo

@@

2010년 2학기 컴퓨터의 개념 및 실습

서울대학교 통계학과

(http://dcom10.ez.ro)

시스템소프트웨어

소프트웨어 = 시스템소프트웨어 + 응용소프트웨어웨어 시 템 웨어 응용 웨어

시스템소프트웨어

사용자(또는응용소프트웨어)가컴퓨터시스템을용이하게활용하도록지원함

파운영체제, 컴파일러, 시스템도구등

운영체제 (O i S )운영체제 (Operating System)하드웨어와응용프로그램사이의인터페이스역할을담당하는시스템소프트웨어당하는시스템소프트웨어

2

Software (리뷰)

하드웨어를바탕으로컴퓨터가실제로작동하기위해필요한논리적구성요소

구분: 시스템소프트웨어 + 응용소프트웨어

User

Application Software

System Software

Hardware

3

운영체제의구성: 커널 + 서비스프로그램

커널 (Kernel, 좁은의미의운영체제)OS의핵심으로부팅할때 주기억장치에로드되어상주OS의핵심으로부팅할때 주기억장치에로드되어상주

운영체제중자주사용되는부분을커널로구성

CPU 스케쥴링, 인터럽트(interrupt) 처리루틴

시스템자원을관리하고입출력기능수행

서비스

필요할때 보조기억장치에서주기억장치로로드되어수행필요할때 보조기억장치에서주기억장치로로드되어수행

편리성제공 : 워드패드, 계산기, 그림판등

응용소프트웨어

시스템소프트웨어

서비스프로그램

커널

운영체제

4

운영체제의종류운영체제의종류

작업 방식 단일 작업, 다중 작업

사용자 단일 사용자 다중 사용자사용자 단일 사용자, 다중 사용자

동작 방식 일괄 처리, 시분할, 실시간

5

운영체제의종류 (작업방식)

단일작업(single tasking) : 한번에하나의작업만처단일작업( g g) 한번에하나의작업만처리

MS-DOS

다중작업(multi tasking) : 동시에두개이상

에서 한명령의수행이 나기UNIX, MS Windows등에서는한명령의수행이끝나기전에다른명령이나프로그램을수행할수있음

두개 이상의작업이번갈아가면서조금씩처리두개 이상의작업이번갈아가면서조금씩처리

6

운영체제의종류 (사용자)

단일사용자

MS-DOS, Windows 95 이전버전

다중사용자다중사용자

미니컴퓨터급 이상의컴퓨터에서는일반적으로다중사용자운영체제를사용함운영체제를사용함

다중사용자를지원하는경우에는사용자관리가필요

ID, PW, 권한부여

UNIX, Windows NT, Windows ServerWindows 98 이후버전

7

운영체제의종류 (동작방식)

일괄처리(batch processing) 일괄처리( p g)작업요청을일정량모아서한꺼번에처리

초기운영체제의형태, 비효율적 (작업이완전종료될(때까지기다리는시간이많음)

8

운영체제의종류 (동작방식)

시분할 (time sharing)여러작업을수행할때 컴퓨터처리능력을시간별로분할해서사용

일괄처리시스템에비해짧은응답시간을가짐일괄처리시스템에비해짧은응답시간을가짐

예) UNIX

각사용자가컴퓨터로부터서비스를제공받는시간을숫자로표시

1,4,7,...

2,5,8,...

3,6,9,...

,5,8,

9

운영체제의종류 (동작방식)

실시간(real time) : 정해진시간안에어떠한일이반드실시간( ) 정해진시간안에어떠한일이반시종료되어야하는시스템

매우빠른입력, 처리속도를가짐. RTOS (Real Time OS)라고부름

특수목적의전용프로그램을항상메모리에적재하여반복수행반복수행

증권거래관리시스템, 은행입출금시스템, 미사일제어, 우주선비행시스템등의운영체제우주선비행시 템등의운영체제

참고: 임베디드 OS는 대부분 RTOS

10

운영체제의종류 (기타)

분산운영체제분산운영체제

여러개의컴퓨터들을사용자에게하나의컴퓨터로보이게함

사용자는프로그램이나파일이어느컴퓨터에있는지알필요가없음

11

운영체제의기능운영체제의기능

프로그램 및 사용자 보호

입출력 관리

주기억 장치 관리주기억 장치 관리

CPU 관리 (프로그램 실행 관리)

유저 인터페이스

12

운영체제의기능

프로그램 및 사용자 보호 입/출력 관리

운영체제(OS)

유저 인터페이스

(OS)

주기억장치 관리 CPU 관리주기억장치 관리 CPU 관리

13

(1) 프로그램및 사용자보호

각사용자의시스템자원사용을통제A가 B의 파일삭제방지

일반사용자의 OS의구성요소제거방지

인증 과권한부여인증(authentication)과권한부여(authorization)

프로그램상호간의자원사용통제잘못된코드에의한자원의비효율적인사용방지

다른프로그램의불법접근으로부터운영체제보호저장데이터파괴, 프린터출력오류

프로그램은운영체제의시스템콜(system call)을 통해프로그램은운영체제의시스템콜(system call)을 통해서만운영체제의기능을이용함

OS는시스템호출을검사하여자원사용에문제가없는지를검사지를검사

14

(2) 입출력관리

인터럽트(interrupt) : 운영체제에게특정한서비스를수행하도록하는사건또는오류수행하도록하는사건또는오류

예) 출력장치가출력명령을끝마칠때

입력장치에요구한데이터가준비된경우입력장치에요구한데이터가준비된경우

0으로나누게될 때

접근할수 없는기억장소접근시수

인터럽트가발생하면, 운영체제는수행중이던작업의상태를기억시킨후, 인터럽트를처리

15

키보드인터럽트처리

수행중인작업

키보드인터럽트키보드인터럽트처리루틴

현재상태저장후

사용자가키보드를눌렀다는인터럽트신호발생

현재상태저장후작업전이

원래수행중이던

키보드입력처리

원래수행중이던작업으로전이

중단시점부터재수행

16

파일관리

여러보조기억장치마다저장및읽기방식이다름

운영체제는보조기억장치의종류에관계없이응용프로그램이읽고쓸수있는방법을제공해야함로그램이읽고쓸수있는방법을제공해야함

Create Delete Read Write등과 같은서비스를시스Create, Delete, Read, Write등과 같은서비스를시스템콜에의해서제공

17

(3) 주기억장치관리

주기억장치의어느부분이어떤프로그램에의해사용되고있는가를 (기억장치의한영역을이용해) 기록용되고있는가를 (기억장치의한영역을이용해) 기록

프로그램실행에주기억장치가필요할때할당하고프로그램실행에주기억장치가필요할때할당하고더이상필요하지않게될때회수

여러프로그램이동시에수행되므로, 주 기억장치는공유됨.다른사람의프로그램이나 OS 보호

프로그램할당방식

고정분할방식고정분할방식

가변분할방식

가상기억장치가상기억장치

18

고정분할할당

주기억장치를몇가지크기의분할로나눔주기억장치를몇가지 기의분할 나눔

프로그램의요청메모리크기보다크면서, 비어있는분할중가장작은메모리영역을할당

구현이빠르고간단

운영체제 운영체제운영체제

분할 1

분할 2

운영체제

프로그램 A

분할 2프로그램

분할 2

분할 3

분할 2

프로그램 BA, B 할당

internal fragmentation

분할 4 분할 4

internal fragmentation

19

가변분할할당

프로그램이요구하는만큼할당램이 구하 만큼할당

분할크기에융통성이있음, 그러나관리가복잡

운영체제

프로그램 A

운영체제

프로그램 A

프로그램 B

프로그램 C 프로그램 C

프로그램 B가끝나고D가 수행됨

프로그램 A,B,C가수행중

fragmentation

프로그램 C

프로그램 D

프로그램 C

fragmentation통합필요

external fragmentationg

20

가상기억장치(Virtual Memory)

주기억장치가 4MB인 경우, 전체크기가 20MB인 프로그램(들)을 (동시에) 수행하려면?로그램(들)을 (동시에) 수행하려면?

프로그램중에서수행되고있는일부만주기억장치에있도록하고나머지는보조기억장치에저장 (필요할때있도록하고나머지는보조기억장치에저장 (필요할때만주 기억장치에적재)

실제메모리보다훨씬큰논리적메모리가정

컴퓨터사용중, 수행프로그램의개수가늘어나면성능이저하되는이유중하나

21

가상기억장치(Virtual Memory)

보조기억장치

프로그램

보조기억장치

주기억장치사용자 A의가상기억장치

A

프로그램

가상기억장치

사용자 B의 램B가상기억장치

프로그램C

수행에필요한프로그램의

사용자 C의가상기억장치

부분들만주기억장치에적재

22

(4) CPU 관리 (프로그램실행관리)

프로세스(process) : 실행중인프로그램세 (p ) 실행중인 램

CPU는한순간에하나의프로세스를수행하고있음

여러프로그램을수행할경우, CPU scheduling 필요여러 로 램을수행할경우, CPU scheduling 필

CPU 스케줄링기법

FIFORound robinPriority scheduling

23

FIFO (First In First Out)

처리를요구한순서대로수행처리를요구한순서대로수행

짧은시간을요하는프로세스도오래기다릴수있음(Unfair)( )대화형시스템에부적합

일괄처리에용이일괄처리에용이

수행대기중인작업리스트

C B A CPU

수행대기중인작업리스트

수행시작 수행완료

24

Round Robin

한프로세스를일정한시간만큼만수행하고현재상태를저장한다음, 돌아가면서다음프로세스를같은방식으로수행(Fair)현재프로세스상태를계속적으로저장해야함

대화형시스템에적합

수행대기중인작업리스트

C B A CPU수행시작 수행완료

A’

할당된시간종료할당된시간에완료되지못한작업

25

Priority Scheduling

각프로세스마다우선순위를부여하여우선순위가높각 세 마다우선순위를부여하여우선순위가높은프로세스부터수행

어떻게우선순위를부여하는가가문제

실행시간의추정치가가장작은작업에우선순위를주는경우를생각할수있음

UNIX : Round Robin + Priority

수행대기중인작업리스트

의순서 수행 수행완료

C B A CPUB,C,A의순서로수행 수행완료

실행시간의실행시간의추정치

26

(6) 사용자인터페이스

커맨드라인방식커맨 라인방식

MS DOS, UNIX명령어를키보드를통해문자형태로입력

사용자가명령어에익숙해져야함

GUI (Graphical User Interface) 방식

MS Windows, Mac OS마우 를통해원하는아이콘을선택 실행마우스를통해원하는아이콘을선택/실행

정확한명령어를몰라도사용가능

27

운영체제의예운영체제의예

DOS

MS Windows

UNIX

GNU/LINUX

Mac OSMac OS

Embedded OS

28

DOS (Disk Operating System)

Microsoft에서 1981년 IBM-PC를 위해운영체제로개발 (MS DOS)발 (MS-DOS)

부팅(booting), 부트스트래핑(bootstrapping) 부팅(booting), 부트스트래핑(bootstrapping) 컴퓨터전원을켰을때 OS가디스크에서메모리로읽혀지는과정

단일사용자용운영체제, 메모리관리능력의한계

29

MS WindowsWindows 3.x

운영체제는아님

멀티태스킹, GUI 제공

Windows 95Plug and PlayOLE (Object Linking and Embedding): 여러개의자료를서로연결하거나결합할수있도록하는기능서로연결하거나결합할수있도록하는기능

Windows NT (New Technology)다중사용자 OS이전의 PC용 Windows와다르게설계

Windows 2000, Windows XP (NT 5.1)Windows VistaWindows Windows 7 (NT 6.1)Wi d CE ( b dd d )Windows CE (embedded compact)

30

MS Windows 가계도

31

Windows 7

http://blog.naver.com/taejin7144/110000888981 32

UNIX

PDP-7에서프로그램개발을위한운영체제개발(1969 B ll L b )(1969, Bell Lab.)이식성(portability), 작은커널크기, 공개소스코드(C language로 작성)(C language로 작성)

다양한버전다양한버전

System V, SunOS, Solaris, Ultrix (DEC), AIX (IBM), IRIX, Xenix, Linux (PC용)( )

대부분의 OS에서 핵심부분은 UNIX를 모델로함

대형컴퓨터및전문적인목적으로사용

최근 GUI 를통한사용의편리성제공

33

유닉스및 유사시스템의진화

34

Mac OS

Mac OSApple에서초보자도배우기쉽고사용하기쉬운컴퓨터시스템을위해설계

GUI 기반 마우스중심의사용자인터페이스 (IBM GUI 기반, 마우스중심의사용자인터페이스 (IBM, MS보다앞섬)

Mac OS XMac OS X오리지널 Mac OS와는달리 UNIX 기반의 OS임버전명칭에대형고양이과동물이름을적용버전명칭에대형고양이과동물이름을적용

Cheetah (Mac OS X v10.0, 최초의데스크탑용버전)Puma, Jaguar, Panther, Tiger, LeopardSnow Leopard (Mac OS X v10.6, 현재버전)

iOS: Mac OS X의특수화된버전. 아이폰, 아이팟, 아이패드등에적용패드등에적용.

35

Mac OS X

36

GNU/Linux

■ 그누(GNU, GNU’s Not UNIX 의약자)( )■ 완전한공개운영체제

■ GNU 프로젝트를지칭하기도함

GNU 라이선스: 누구나자유롭게 “실행 복사 수정”할수있고 누구도■ GNU 라이선스: 누구나자유롭게 실행, 복사, 수정 할수있고, 누구도그런권리를제한해서는안된다는내용을포함 (카피레프트)

■ GNU 시스템중가장흔한것이 GNU/Linux 또는 Linux 배포판이라불리는시스템이다라불리는시스템이다

■ 리눅스(Linux)리누스 발 ( ld )가 만든 의 클론■ 리누스토발즈(Linus Torvalds)가 만든 Unix의 클론

■ 리눅스커널(kernel)과 GNU 프로젝트의라이브러리도구가포함된전체운영체제를지칭

■ 소스가“완전공개된자유로운”운영체제

■ Free software + Open source의대표적표본

■ Linux 커널은전세계개발자들이자발적으로참여하여만들어가고■ Linux 커널은전세계개발자들이자발적으로참여하여만들어가고있다

37

안드로이드 (Android)(원래 의미는 ‘인간형 로봇’)

Google에서 리눅스커널과 GNU를 기반으로개발한

(원래 의미는 인간형 로봇 )

g 에서 리눅 커널과 를 기반 개발한모바일운영체제

최초버전은 Android라는명칭의회사에서개발. 구글이 2005년도에회사를사들임.구글은안드로이드의모든소스코드를오픈소스라이선스인아파치라이선스로배포하고있다선스인아파치라이선스로배포하고있다

안드로이드각버전은간식이름을코드네임으로삼음안드로이드각버전은간식이름을코드네임으로삼음

Android 1.5: 컵케이크

도넛, 이클레어, 프로요(Froyo), 진저브레드도넛, 이클레어, 프로 (Froyo), 진저브레

안드로이드 2.2

38

내장형 OS

내장형(embedded) 컴퓨터시스템, 즉 특정기기에컴퓨팅기능을( )추가한시스템에서의컴퓨팅환경을지원하는 OS특징

C t 필요한소수의기능만을탑재Compact – 필요한소수의기능만을탑재

Efficient대부분 RTOS. 즉, 제한된시간내에반드시계산을완료해야대부분 OS. 즉, 제한된시간내에반 시계산을완 해야하는제약조건을만족시키고, 멀티태스킹이필수로지원됨.

종류

기기의종류만큼다양함기기의종류만큼다양함

PDA용

iPhone OS (Max OS X를기반으로함)iPhone OS (Max OS X를기반으로함)Windows CE , Pocket PC, Windows Mobile

로봇, 스마트폰, 디지털미디어플레이어, …

39

국산 OS?

OS 환경(2008.3 기준)환경( 기준)

현재 PC용 OS는 MS 윈도우가세계시장의 91.58%, 국내시장에선 98.8%를독점하고있다. 또한임베디드 OS는 외산인심비안 윈도우모바일 공개SW인리눅스(Li ) 등이국내시장비안, 윈도우모바일, 공개SW인리눅스(Linux) 등이국내시장의 93.2%를차지하고있으며, 서버용 OS도 대부분 IBM, HP, Sun 등 글로벌업체들의유닉스(UNIX) OS가 대부분을점유하고있다하고있다. (출처: ZDNet 뉴스, 2008.03.19)

Tmax WindowTmax Window우리나라최초의 GUI 인터페이스를가진운영체제

과연실체는??과연실체는??‘바다’

삼성이독자적으로만든스마트폰 OS (2009~)삼성이독자적 로만든스마트폰 OS (2009 )

40

Tmax Window?http://www.tmaxwindow.co.kr/

내세우는 특징▲MS 윈도우 및 MS 오피스 프로그램과의 높은 호환성▲작은 커널을 통한 안정성▲작은 커널을 통한 안정성▲다양한 운영체제를 지원하는 범용성▲데이터베이스관리시스템내장을 통한 데이터관리의 효율성▲개인, 기업에 따른 차별화된 맞춤형 보안▲MS 윈도우와 유사한 인터페이스 • 결론

실제 상황은?- 날 웃긴 ‘티맥스 윈도우 9’- 티맥스 윈도 발표회, 하지 말았어야 했다

결• 3년 간의 개발 실패•2010년 6월 삼성 SDS가 티맥스코어회사 인수티맥스 윈도 발표회, 하지 말았어야 했다

- 티맥스 윈도는 짜집기?- Tmax Window, 급하게 먹고 체하다

41


Recommended