운영 체제 서울대학교 통계학과 2009년 2학기 컴퓨터의 개념 및 실습 (http://dcom09.ez.ro)

Slides:



Advertisements
Similar presentations
을지대학교 무선 네트워크 사용 방법 2010 년 06 월 01 일. 을지대학교 무선 네트워크 사용 방법 1. PC 무선랜 카드 활성화 및 체크 1 단계 : 시작 -> 설정 -> 네트워크 설정 2 단계 : 무선 네트워크 설정 선택 -> 마우스 버튼 오른쪽 클릭 -> 사용.
Advertisements

Chapter 01. 컴퓨터 기초와 윈도우 XP. 2  학습목표 하드웨어와 소프트웨어의 종류 및 개념 컴퓨터 본체의 내부 구성 윈도우 XP 의 프로그램 실행 및 제거 프린터 드라이버의 설치 하드디스크의 추가 및 최적화 컴퓨터 사용에 필요한 유용한 프로그램.
난이도 : 초급 제1장 앱 인벤터 소개 및 준비.
컴퓨터는 어떻게 동작?.
Windows Function Windows XP Windows 7 Windows 8 FREE 조장 : 김동환 조원 : 전태우
2010 – 06 – 24 주간 보고서.
컴퓨터와 인터넷.
컴퓨터 운영체제의 역사 손용범.
목 차 C# 언어 특징 .NET 프레임워크 C# 콘솔 프로그램 C# 윈도우 프로그램 실습 프로그래밍세미나 2.
네트워크 기술을 통한 현재와 미래 소개.
뇌를 자극하는 Windows Server 2012 R2
1. Windows Server 2003의 역사 개인용 Windows의 발전 과정
Windows Server 장. Windows Server 2008 개요.
1장. 이것이 C 언어다.. 1장. 이것이 C 언어다. 프로그래밍 언어 1-1 C 언어의 개론적 이야기 한글, 엑셀, 게임 등의 프로그램을 만들 때 사용하는 언어 ‘컴퓨터 프로그래머’라는 사람들이 제작 C 언어(C++ 포함)를 가장 많이 사용함.
제 2 장 운영 체제 시스템 Section 1 초기 운영 체제 Section 2 운영 체제의 종류
운영체제 4장 요약정리(CPU 스케줄링) 2A 박훈.
Windows Server 장. 사고를 대비한 데이터 백업.
시스템집적반도체 설계 검증 환경과 기법 Ch 7.
운영체제와 Windows XP 초등 ICT 교육 방법론 2013년 1학기.
운영체제 박상민.
11 장 LAN 기본 개념과 Ethernet LAN
07. 디바이스 드라이버의 초기화와 종료 김진홍
CHAPTER 02 OpenCV 개요 PART 01 영상 처리 개요 및 OpenCV 소개.
11장. 포인터 01_ 포인터의 기본 02_ 포인터와 Const.
저장장치 테이프 I/O장치 작업 사용자 프린터 디스크 주기억장치(RAM) OS 카드판독기 CPU 키보드 처리장치.
리눅스 운영체제 운영체제 리눅스 소개 임베디드 리눅스 리눅스 명령어 한빛미디어(주).
                              데이터베이스 프로그래밍 (소프트웨어 개발 트랙)                               퍼스널 오라클 9i 인스톨.
뇌를 자극하는 Windows Server 장. Windows Server 2008 개요.
DK-128 실습 EEPROM 제어 아이티즌 기술연구소
6장 운영체제 6.1 운영체제란? 6.2 운영체제의 형태와 역사 6.3 운영체제의 구성 요소 6.4 커널과 프로세스
뇌를 자극하는 Windows Server 장. 장애 조치 클러스터.
1장 운영체제 2-C반 운영체제 박소라.
1장. 데이터베이스 자료의 조직적 집합체_데이터베이스 시스템의 이해
디지털회로설계 (15주차) 17. 시프트 레지스터와 카운터 18. 멀티바이브레이터 * RAM & ROM.
시스템 인터페이스 Lab3 Unix 사용법 실습.
강의 개요. 2014년 가을학기 손시운 지도 교수: 문양세 교수님.
메모리 관리 & 동적 할당.
멀티미디어시스템 제 6 장. 운영체제 IT응용시스템공학과 김 형 진 교수.
SAS Statistical Analysis System 통계패키지 실습 (2011년 1학기)
2장. 데이터베이스 관리 시스템 데이터베이스 관리 시스템의 등장 배경 데이터베이스 관리 시스템의 정의
뇌를 자극하는 Windows Server 2012 R2
제1장 Unix란 무엇인가?.
제 1 장 운영 체제의 개요 Section 1 운영 체제의 개념 Section 2 운영 체제의 구성과 기능
OS 역사 손병규.
Tiny OS와 NesC Tiny OS Part1. Won Mi Sun – 17 지능제어 연구실.
DK-128 실습 내부 EEPROM 제어 아이티즌 기술연구소 김태성 연구원
컴퓨터 시스템 하드웨어 컴퓨터 시스템 소프트웨어 C P U Control Unit 입 력 장 치 출 력 장 치 ALU
04. DBMS 개요 명지대학교 ICT 융합대학 김정호.
제7강 PC정비사 1급(필기) Lee Hoon Copyright(c) 2008 LeeHoon All rights reserved.
LabVIEW WiznTec 주임 박명대 1.
네트워크 환경 구축과 이미지 전송 호스트/타겟 통신 직렬 통신을 이용한 이미지 전송 수퍼 데몬 BOOTP 환경 구축
( Windows Service Application Debugging )
뇌를 자극하는 Solaris bible.
AT MEGA 128 기초와 응용 I 기본적인 구조.
컴퓨터 구성요소와 사용 컴퓨터 문서 작업 인터넷 활용
3과목 운영체제 강사 이 민 욱.
멀티미디어시스템 제 5 장. 멀티미디어 데이터베이스 개념 IT응용시스템공학과 김 형 진 교수.
발표자 : 이지연 Programming Systems Lab.
운영체제 (Operating Systems)
System Security Operating System.
과제 4: Thread (5월 9일까지) 4장 연습문제 풀이
Installation Guide.
운영체제의 개요 2학년 C반 채상훈.
06. 디바이스의 등록과 해제 김진홍
Wake On Lan 발표자: 김 홍 기 김홍기 조성오
1장 C 언어의 개요 C 언어의 역사와 기원 C 언어의 특징 프로그램 과정 C 프로그램 구조 C 프로그램 예제.
DBMS & SQL Server Installation
TCP/IP를 이용한 마우스 공유 (Synergy 따라하기)
Windows XP Professional 장점
2. 프로세스 B 안우진 - 운영체제 -.
Presentation transcript:

운영 체제 서울대학교 통계학과 2009년 2학기 컴퓨터의 개념 및 실습 (http://dcom09.ez.ro)

시스템 소프트웨어 소프트웨어 = 시스템 소프트웨어 + 응용 소프트웨어 시스템 소프트웨어 사용자(또는 응용 소프트웨어)가 컴퓨터 시스템을 용이하게 활용하도록 지원함 운영체제, 컴파일러, 시스템 도구 등 운영체제 (Operating System) 하드웨어와 응용 프로그램 사이의 인터페이스 역할을 담당하는 시스템 소프트웨어

Software (리뷰) 하드웨어를 바탕으로 컴퓨터가 실제로 작동하기 위해 필요한 논리적 구성 요소 구분: 시스템 소프트웨어 + 응용 소프트웨어 Hardware System Software Application Software User

운영체제의 구성: 커널 + 서비스 프로그램 커널 (Kernel, 좁은 의미의 운영체제) OS의 핵심으로 부팅할 때 주기억장치에 로드되어 상주 운영체제 중 자주 사용되는 부분을 커널로 구성 CPU 스케쥴링, 인터럽트(interrupt) 처리 루틴 시스템 자원을 관리하고 입출력기능 수행 서비스 필요할 때 보조 기억장치에서 주기억 장치로 로드되어 수행 편리성 제공 : 워드패드, 계산기, 그림판 등 응용소프트웨어 시스템소프트웨어 서비스프로그램 커널 운영체제

운영 체제의 종류 작업 방식  단일 작업, 다중 작업 사용자  단일 사용자, 다중 사용자 동작 방식  일괄 처리, 시분할, 실시간

운영 체제의 종류 (작업 방식) 단일 작업(single tasking) : 한 번에 하나의 작업만 처리 MS-DOS 다중 작업(multi tasking) : 동시에 두 개 이상 UNIX, MS Windows등에서는 한 명령의 수행이 끝나기 전에 다른 명령이나 프로그램을 수행할 수 있음 두 개 이상의 작업이 번갈아 가면서 조금씩 처리

운영 체제의 종류 (사용자) 단일 사용자 MS-DOS, Windows 95 이전 버전 다중 사용자 미니 컴퓨터 급 이상의 컴퓨터에서는 일반적으로 다중 사용자 운영 체제를 사용함 다중 사용자를 지원하는 경우에는 사용자 관리가 필요 ID, PW, 권한 부여 UNIX, Windows NT, Windows Server Windows 98 이후 버전

운영 체제의 종류 (동작방식) 일괄 처리(batch processing) 작업 요청을 일정량 모아서 한꺼번에 처리 초기 운영 체제의 형태, 비효율적 (작업이 완전 종료 될 때까지 기다리는 시간이 많음)

각 사용자가 컴퓨터로부터 서비스를 제공 받는 시간을 숫자로 표시 운영 체제의 종류 (동작방식) 시분할 (time sharing) 여러 작업을 수행할 때 컴퓨터 처리 능력을 시간별로 분할해서 사용 일괄 처리 시스템에 비해 짧은 응답 시간을 가짐 예) UNIX 1,4,7,... 2,5,8,... 3,6,9,... 각 사용자가 컴퓨터로부터 서비스를 제공 받는 시간을 숫자로 표시

운영 체제의 종류 (동작방식) 실시간(real time) : 정해진 시간 안에 어떠한 일이 반드시 종료되어야 하는 시스템 매우 빠른 입력, 처리 속도를 가짐. RTOS (Real Time OS)라고 부름 특수 목적의 전용 프로그램을 항상 메모리에 적재하여 반복 수행 증권 거래 관리 시스템, 은행 입출금 시스템, 미사일 제어, 우주선 비행 시스템 등의 운영 체제 참고: 임베디드 OS는 대부분 RTOS

운영체제의 종류 (기타) 분산 운영 체제 여러 개의 컴퓨터들을 사용자에게 하나의 컴퓨터로 보이게 함 사용자는 프로그램이나 파일이 어느 컴퓨터에 있는지 알 필요가 없음

운영 체제의 기능 프로그램 및 사용자 보호 입출력 관리 주기억 장치 관리 CPU 관리 (프로그램 실행 관리) 유저 인터페이스

운영체제의 기능 입/출력 관리 프로그램 및 사용자 보호 운영체제 (OS) 유저 인터페이스 주기억장치 관리 CPU 관리

(1) 프로그램 및 사용자 보호 각 사용자의 시스템 자원 사용을 통제 프로그램 상호간의 자원 사용 통제 A가 B의 파일 삭제 방지 일반 사용자의 OS의 구성요소 제거 방지 인증(authentication)과 권한부여(authorization) 프로그램 상호간의 자원 사용 통제 잘못된 코드에 의한 자원의 비효율적인 사용 방지 다른 프로그램의 불법 접근으로부터 운영체제 보호 저장 데이터 파괴, 프린터 출력 오류 프로그램은 운영체제의 시스템 콜(system call)을 통해서만 운영체제의 기능을 이용함 OS는 시스템 호출을 검사하여 자원 사용에 문제가 없는지를 검사

(2) 입출력 관리 인터럽트(interrupt) : 운영 체제에게 특정한 서비스를 수행하도록 하는 사건 또는 오류 예) 출력 장치가 출력명령을 끝마칠 때 입력 장치에 요구한 데이터가 준비된 경우 0으로 나누게 될 때 접근할 수 없는 기억장소 접근 시 인터럽트가 발생하면, 운영체제는 수행 중이던 작업의 상태를 기억시킨 후, 인터럽트를 처리

사용자가 키보드를 눌렀다는 인터럽트 신호 발생 키보드 인터럽트 처리 수행중인 작업 사용자가 키보드를 눌렀다는 인터럽트 신호 발생 키보드 인터럽트 처리 루틴 현재 상태저장 후 작업 전이 원래 수행 중이던 작업으로 전이 중단 시점부터 재수행 키보드 입력처리

파일 관리 여러 보조기억 장치마다 저장 및 읽기 방식이 다름 운영체제는 보조기억 장치의 종류에 관계없이 응용 프로그램이 읽고 쓸 수 있는 방법을 제공해야 함 Create, Delete, Read, Write등과 같은 서비스를 시스템 콜에 의해서 제공

(3) 주기억 장치 관리 주 기억 장치의 어느 부분이 어떤 프로그램에 의해 사용되고 있는가를 (기억장치의 한 영역을 이용해) 기록 프로그램 실행에 주 기억 장치가 필요할 때 할당하고 더 이상 필요하지 않게 될 때 회수 여러 프로그램이 동시에 수행되므로, 주 기억 장치는 공유됨. 다른 사람의 프로그램이나 OS 보호 프로그램 할당 방식 고정 분할 방식 가변 분할 방식 가상 기억 장치

고정 분할 할당 주 기억 장치를 몇 가지 크기의 분할로 나눔 프로그램의 요청 메모리 크기보다 크면서, 비어있는 분할 중 가장 작은 메모리 영역을 할당 구현이 빠르고 간단 운영체제 분할 1 분할 2 분할 4 분할 3 프로그램 A 프로그램 B 프로그램 A, B 할당 internal fragmentation

가변 분할 할당 프로그램이 요구하는 만큼 할당 분할 크기에 융통성이 있음, 그러나 관리가 복잡 fragmentation 운영체제 프로그램 A 프로그램 B 프로그램 C 프로그램 D 프로그램 B가 끝나고 D가 수행됨 프로그램 A,B,C가 수행 중 fragmentation 통합필요 external fragmentation

가상 기억 장치(Virtual Memory) 주 기억 장치가 4MB인 경우, 전체 크기가 20MB인 프로그램(들)을 (동시에) 수행하려면? 프로그램 중에서 수행되고 있는 일부만 주 기억 장치에 있도록 하고 나머지는 보조 기억 장치에 저장 (필요할 때만 주 기억 장치에 적재) 실제 메모리보다 훨씬 큰 논리적 메모리 가정 컴퓨터 사용 중, 수행 프로그램의 개수가 늘어나면 성능이 저하되는 이유 중 하나

가상 기억 장치(Virtual Memory) 프로그램B 프로그램C 보조기억장치 주기억장치 수행에 필요한 프로그램의 부분들만 주기억장치에 적재 사용자 A의 가상기억장치 사용자 B의 가상기억장치 사용자 C의 가상기억장치

(4) CPU 관리 (프로그램 실행 관리) 프로세스(process) : 실행중인 프로그램 여러 프로그램을 수행할 경우, CPU scheduling 필요 CPU 스케줄링 기법 FIFO Round robin Priority scheduling

FIFO (First In First Out) 처리를 요구한 순서대로 수행 짧은 시간을 요하는 프로세스도 오래 기다릴 수 있음(Unfair) 대화형 시스템에 부적합 일괄처리에 용이 C B A CPU 수행대기중인 작업리스트 수행시작 수행완료

Round Robin 한 프로세스를 일정한 시간 만큼만 수행하고 현재 상태를 저장한 다음, 돌아가면서 다음 프로세스를 같은 방식으로 수행(Fair) 현재 프로세스 상태를 계속적으로 저장해야 함 대화형 시스템에 적합 C B A CPU 수행대기중인 작업리스트 수행시작 수행완료 A’ 할당된 시간 종료 할당된 시간에 완료되지 못한 작업

Priority Scheduling CPU 각 프로세스마다 우선순위를 부여하여 우선순위가 높은 프로세스부터 수행 어떻게 우선순위를 부여 하는가가 문제 실행시간의 추정치가 가장 작은 작업에 우선순위를 주는 경우를 생각 할 수 있음 UNIX : Round Robin + Priority C B A CPU 수행대기중인 작업리스트 B,C,A의 순서로 수행 수행완료 실행시간의 추정치

(6) 사용자 인터페이스 커맨드라인 방식 GUI (Graphical User Interface) 방식 MS DOS, UNIX 명령어를 키보드를 통해 문자형태로 입력 사용자가 명령어에 익숙해져야 함 GUI (Graphical User Interface) 방식 MS Windows, Mac OS 마우스를 통해 원하는 아이콘을 선택/실행 정확한 명령어를 몰라도 사용 가능

운영 체제의 예 MS-DOS MS Windows UNIX (LINUX) OS/2 Mac OS Embedded OS

DOS (Disk Operating System) Microsoft에서 1981년 IBM-PC를 위해 운영 체제로 개발 (MS-DOS) 부팅(booting), 부트스트래핑(bootstrapping) 컴퓨터 전원을 켰을 때 OS가 디스크에서 메모리로 읽혀 지는 과정 단일 사용자용 운영체제, 메모리 관리 능력의 한계

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)

Windows Vista http://blog.naver.com/taejin7144/110000888981

UNIX PDP-7에서 프로그램 개발을 위한 운영 체제 개발 (1969, Bell Lab.) 이식성(portability), 작은 커널 크기, 공개 소스 코드 (C language로 작성) 다양한 버전 System V, SunOS, Solaris, Ultrix (DEC), AIX (IBM), IRIX, Xenix, Linux (PC용) 대부분의 OS에서 핵심 부분은 UNIX를 모델로 함 대형 컴퓨터 및 전문적인 목적으로 사용 최근 GUI 를 통한 사용의 편리성 제공

OS/2, Mac OS OS/2 Mac OS IBM사에서 다중 작업 지원을 위해 개발 편리한 GUI 제공, DOS/Windows에 대한 호환성, 통합된 네트워크 환경, 안정성 Mac OS Apple에서 초보자도 배우기 쉽고 사용하기 쉬운 컴퓨터 시스템을 위해 설계 GUI 기반, 마우스 중심의 사용자 인터페이스 (IBM, MS보다 앞섬)

Mac OS X

임베디드(Embedded) OS 로봇, 스마트폰, 디지털 미디어 플레이어, … 특징 Compact – 필요한 소수의 기능만을 탑재 Efficient 대부분 RTOS. 즉, 제한된 시간 내에 반드시 계산을 완료해야 하는 제약조건을 만족시키고, 멀티태스킹이 필수로 지원됨. 종류 기기의 종류 만큼 다양함 PDA용 iPhone OS (Max OS X를 기반으로 함) Windows CE , Pocket PC, Windows Mobile 로봇, 스마트폰, 디지털 미디어 플레이어, …

국산 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 뉴스, 2008.03.19) TmaxOS 개발계획 대대적 기사화 (2008.03) 범용 OS 임베디드 OS

Tmax Window? 내세우는 특징 현재 상황은???? 날 웃긴 ‘티맥스 윈도우 9’ http://www.tmaxwindow.co.kr/ 내세우는 특징 ▲MS 윈도우 및 MS 오피스 프로그램과의 높은 호환성 ▲작은 커널을 통한 안정성 ▲다양한 운영체제를 지원하는 범용성 ▲데이터베이스관리시스템내장을 통한 데이터관리의 효율성 ▲개인, 기업에 따른 차별화된 맞춤형 보안 ▲MS 윈도우와 유사한 인터페이스 현재 상황은???? 날 웃긴 ‘티맥스 윈도우 9’ 티맥스 윈도 발표회, 하지 말았어야 했다 티맥스 윈도는 짜집기?