운영체제 (OS: Operating System)

Slides:



Advertisements
Similar presentations
1/29 Chapter 3: 시스템 소프트웨어 인터페이스 인간이 실질적으로 조작하는 기계의 부분 좋은 인터페이스 : 직관적 ( 사전지식, 경험으로 알 수 있음 ) 이어서 누구나 즉각적 사용 가능 사용자 ( 자연어 ) ↔ 응용 S/W↔ 시스템 S/W↔H/W( 기계어 )
Advertisements

- 1 - IT COOKBOOK 컴퓨터 기술 IT COOKBOOK Chapter 01. 서론.
Lee Hoon Copyright(c) 2008 LeeHoon All rights reserved. 제7강제7강.
윈도우 조 이충진, 김창완, 김현규, 최준영, 전병주, 송기훈. 목차  윈도우 최준영, 송기훈  윈도우 95 - 김현규, 이충진  윈도우 98 - 강창완, 전병주.
운영체제의 역사 작성 / 발표 오두환.  OS( 운영체제 ) 의 정의 OS(operating system) 란 ?? 머리 - > 계산 = Cpu 얼굴 + 몸매 = 그래픽카드 눈 = 모니터 머리 -> 기억 = HDD/SDD 입 = 스피커 귀 = 마이크 ….. 하드웨어하드웨어.
이재우.  운영체제 정의 ◦ OS(Operation System) ◦ 사용자와 컴퓨터 시스템 사이에 위치하여 컴퓨터 시스템의 전반 적인 동작을 제어하고 조정하며 ◦ 사용자에게 편리성을 제공하여 한정된 시스템 자원을 효율적으 로 사용할 수 있도록 관리하는.
운 영 체 제 실 습 ( 리눅스 서버관리입문 ) 개 요. 2/31 운영체제 (Operating System) 개요 시스템 소프트웨어 !!!  응용 프로그램과 하드웨어 사이의 인터페이스 역할  응용 소프트웨어를 실행하기 위하여 하드웨어 추상화 플랫폼과 공통 시스템 서비스를.
Dept. Computer Engineering DBLAB 정보처리개론 담당 교수 : 김정석 2009 년도 1 학기.
21C 멀티미디어 제 2 장 멀티미디어 컴퓨터와 주변장치 PC 의 종류  PC 의 종류 CPU 레지스터의 크기에 따라 16bit, 32bit, 64bit … 크기와 용도에 따라 Desktop pc, notebook pc, palm pc …
1/37 Chapter 4: 프로세서 성능과 휴대성을 위한 하드웨어 © The McGraw-Hill Companies, Inc., 세기의 가장 중요한 발명품 : 마이크로 프로세서 일상생활에 널리 사용됨 프로그램에 의한 적응성.
컴퓨터의 기본 개념. 목 차목 차 컴퓨터의 정의 컴퓨터의 세대별 분류 컴퓨터의 분류 컴퓨터의 종류 컴퓨터의 구성 컴퓨터의 동작원리 컴퓨터의 외양 컴퓨터의 내부 구조 단위.
컴퓨터의 구조 2006년 2학기 컴퓨터의 개념 및 실습.
2.1 컴퓨터 시스템의 구성 2.2 컴퓨터 시스템의 정보 표현 2.3 중앙처리장치 2.4 저장장치 2.5 컴퓨터 주변기기
Understanding of Ubiquitous & Computers Plus
OS 소개 Introduction 설계목표 기본 용어 Resource Management History.
마이크로 컨트롤러 Microcontroller.
Chapter 9. 컴퓨터설계기초 9-1 머리말 9-2 데이터 처리장치 (Datapath)
2007년 1학기 전산학개론 성신여자대학교 컴퓨터정보학부
PC와 인터넷 정강수 컴퓨터 구조와 웹의 이해 PC와 인터넷 정강수
소프트웨어와 운영체제.
1.1 병렬처리의 한계와 가능성 1.2 병렬처리의 단위 1.3 병렬컴퓨터의 분류 1.4 병렬컴퓨터의 성능 척도
2장 마이크로프로세서 구성요소 Slide 1 (of 19).
제 2장 컴퓨터 구조.
(강의 홈페이지: 강좌 개요 서울대학교 통계학과 2010년 2학기 컴퓨터의 개념 및 실습 (강의 홈페이지:
1장 유닉스 소개.
마이크로프로세서(Microprocessor,µP)
컴퓨터 과학 개론 √ 원리를 알면 IT가 맛있다 컴퓨터 과학도를 위한 첫 전공서 ehanbit.net.
강좌 개요 2009년 1학기 컴퓨터의 개념 및 실습.
Operating Systems Overview
과목 홈페이지  전산학개론 이메일 숙제를 제출할 경우, 메일 제목은 반드시 ‘[전산학개론]’으로 시작.
임베디드 시스템.
임베디드 하드웨어 Lecture #6.
컴퓨터 과학 개론 √ 원리를 알면 IT가 맛있다 컴퓨터 과학도를 위한 첫 전공서 ehanbit.net.
컴퓨터 구조학 정보보호학과.
소개: Unix란 무엇인가? 숙명여대 창병모 2009/09.
임베디드 운영체제 (리눅스 중심) Lecture #2.
사용자의, 사용자에 의한, 사용자를 위한 APT.상가 분양임대관리 System 제안서
임베디드 리눅스 시스템의 기본 개념 강의 목표 내용 임베디드 리눅스 시스템의 기본 개념과 주제 제시 1. 임베디드 시스템
컴퓨터 구조.
1 컴퓨터 시스템 소개.
4장. 컴퓨터 시스템의 구성과 기능 다루는 내용 컴퓨터 분해를 통한 본체 살펴보기 컴퓨터 구성요소 컴퓨터의 기능
2장 운영 체제의 개요 운영체제의 개념 운영체제의 유형 운영체제의 발전 과정 운영체제의 구성 운영체제 서비스 시스템 구조
정보(information) 데이터(data) 어떤 사물에 대한 소식이나 자료 가공된 데이터
1. Embedded System의 이해.
2 운영체제 소개.
운영체제 (Operating System)
임베디드 소프트웨어 동향. 임베디드 소프트웨어 동향 임베디드 S/W 시장분류 솔루션 측면 시스템 측면 운영체제 개발도구 설계도구 테스트도구 유선통신 무선통신 정보가전 자동차제어 산업자동화 사무자동화 군사/항공우주 의료장비 솔루션 공급 업체 임베디드 S/W시장 임베디드.

6 중앙처리장치의 조직과 기능 IT CookBook, 컴퓨터 구조와 원리 2.0.
컴퓨터 시스템의 개요.
Operating System System Program OS의 목적 OS의 종류 Application Program과 구별
3주 컴퓨터구조.
8086 프로세서의 구조 및 동작 방식 시스템 프로그래밍 - Lecture #2 신라대학교 컴퓨터공학과 시스템 프로그래밍.
운영체제 이나현.
제 1장 시스템 소프트웨어의 개요.
UNIX Internet Server의 대부분을 차지 대표적인 공급업체
제5장 CPU스케줄링(CPU Scheduling)
컴퓨터 시스템 개관 시스템 프로그래밍 - Lecture #1 신라대학교 컴퓨터공학과 시스템 프로그래밍.
1 컴퓨터 구조 IT CookBook, 컴퓨터 구조와 원리 2.0.
A Web-Based Little Man Computer Simulator
운영체제(Operating System)
제16,17,18장 분산 시스템.
제7강 PC정비사 1급(필기) Lee Hoon Copyright(c) 2008 LeeHoon All rights reserved.
운영체제 발표자료 B반 최민웅.
운영체제의 종류 장승빈.
제1장 정리 컴퓨터소프트웨어과 2-A반 주세호.
제02장 컴퓨터 개요.
1장 운영체제의 소개 컴퓨터소프트웨어 2-B 한아름.
임베디드 하드웨어 Lecture #6.
제 1 강 컴퓨터의 구조.
Presentation transcript:

운영체제 (OS: Operating System) 서울여자대학교 정보미디어대학 2008년 2학기

Introduction 교수소개 이름: 강 승 석 소속: 서울여자대학교 컴퓨터학부 컴퓨터학 전공 학사:고려대학교 정보통신대학 컴퓨터학과 졸업 석사: Dept. Computer Science, Michigan State University, East Lansing, USA 박사: Dept. Computer Science and Engineering, Michigan State University, East Lansing, USA 연구실 제 1과학관 307호 (#970-5755) msukang@swu.ac.kr 면담시간 목요일 78 교시 (3:00pm ~ 5:00pm)

Introduction 본 과목에 대해 교재 운영체제 개념 김길창, 김정국 편저 홍릉 과학 출판사 운영체제의 개념을 적절히 풀어서 기능별로 설명하며 좋은 예제를 사용 부교재 운영체제(내부 구조 및 설계원리), 김윤정 외 10인 (William Stalling) 운영체제 3rd ed., 김인국 외 6인, (by Gary Nutt) 운영체제 (OS Principles) 최은미 외 2인 (by L. Bic and A. Shaw)

Introduction 본 과목에 대해 성적평가 구성비율 시험 : 75% 숙제 : 10% 수시시험(퀴즈) : 10% 중간고사 35% 기말고사 45% 숙제 : 10% 기간은 1주일이고 개인별 숙제임 자료 조사, 문제풀이 수시시험(퀴즈) : 10% 수업 후 당일 배운 내용을 간단히 복습하는 1-2 문제 (4회 실시) 출석: 5% 수업 시작 후, 종료 후 부름 한번 결석 시 1점 감점, 지각 2회를 결석 1회로 취급

Introduction 평가 기준: 상대평가 F 학점을 받는 경우 상대평가 이므로 숙제는 스스로 할 것 A+(95~100), A0(90~94): 20~40% B+(85~89), B0(80~84): 30~50% C+(75~79), F(0~59): 10~50% Plus와 Zero는 절반 정도씩 배정함 F 학점을 받는 경우 수업 일수의 1/3을 초과한 결석학생 (중간, 기말) 시험 미 시행자 혹은 백지 답안 제출학생 성적 미달자 상대평가 이므로 숙제는 스스로 할 것

운영체제 (OS:Operating System) 강의내용 개요: Ch01~Ch03 소개 컴퓨터 시스템 구조 운영 체제 구조 프로세스 경영: Ch04~Ch07 프로세스 개념 병행 프로세스 교착 상태 기억 장치 경영: Ch08~Ch09 메모리 경영 가상 메모리 경영 보조 기억 장치 경영 파일과 보호: Ch10~Ch11 파일 시스템 보호 분산 처리: Ch12~Ch14 컴퓨터 네트워크 원격 파일 분산 컴퓨팅

운영체제의 종류 Microsoft Unix Macintosh IBM 기타 운영체제 MS-DOS Windows 1.0 / 2.0 / 3.0 / 3.1 / 95 / 98 Windows NT / 2000 / ME / XP / Vista Unix FreeBSD, Solaris, AIX, HP-UX, SCO-Unix, Xenix, Minix, Xinu,… Linux: Red Hat, Fedora, SUSE, Mandrake, Debian, Haansoft Macintosh MacOS I,…,IX, X IBM OS 360/370/390 기타 운영체제 Palm OS, Android, Win CE, Embedded OS, Real Time OS, …

컴퓨터 시스템의 기본구조 1946년부터 지금까지 변하지 않은 컴퓨터의 기본 요소 Processor Input Control Memory Datapath Output

Motherboard Video Card (AGP) CPU Memory

컴퓨터 시스템의 기본구조 중앙처리장치 (CPU: Central Processing Unit) 명령어들을 메모리로부터 가져와(fetch) 해독(decode)하고 실행 ALU, Registers, Control Unit 등으로 구성 시스템 버스 (System Bus) Data Bus: 시스템 구성요소 들을 연결하여 데이터 전송 Control Bus: 시스템 구성 요소들의 작동을 통제함 기억장치 (Memory) 프로그램과 자료를 저장 계층화 구조: Register, Cache, Main Memory, External Memory 입출력장치 (Input/Output Devices) Disk Drive, Display, Key board, Printer CPU, Memory 등과 시스템 버스로 연결

운영체제 (Operating System) ? CONVENIENCE COMPILER EDITOR . . . DB OS HARDWARE EFFICIENCY

운영 체제의 목적 운영체제 OS의 목적 OS의 역사 무엇인가? 어떠한 일을 하는가? 사용자의 편의성 자원의 효율적인 관리

컴퓨터 시스템의 계층

운영체제 응용 프로그램의 실행을 제어하는 Program 응용 프로그램들과 하드웨어 간의 Interface 목표 편리성 컴퓨터를 사용하기 쉽도록 함 효율성 컴퓨터 시스템 자원을 효율적인 방법으로 사용할 수 있도록 함 기능 추가 효과적인 응용 프로그램 개발과 검사, 새로운 시스템 기능 도입 시 기존의 서비스를 방해하지 않고 수용해야 함

각 시스템에서의 운영 체제 소개 초기 시스템 초기 일괄 처리 시스템 (Batch System) 다중 프로그래밍 (Multi-Programming) 시분할 (Time Sharing) 시스템 PC (Personal Computer) 시스템 병렬 시스템 (Parallel System) 분산 시스템 (Distributed System) 실시간 시스템 (Real Time System) 내장형 시스템 (Embedded System)

초기 시스템 초기 시스템 1956년 경 이전에 주로 이용 프로그래머가 모든 작업 수행 요청서에 사용희망시간 기재 후 예약시간동안 사용 스위치를 통해 수작업으로 프로그램을 적재(load) 후 실행 I/O 장치와 COMPILER는 후에 추가 활용 측면에서 비효율적임 (Sign-up Sheet) 예약시간 전에 끝나면 컴퓨터는 사용 안됨 예약시간 안에 작업 마치지 못하면 중단 후 나중에 다시 예약 준비 시간 (Warming up) 과다 Tape을 주로 이용 숙련되지 않은 사용자가 장치를 가동함

ENIAC Computer First General Purpose Digital Computer (1943~1946 U. of Pennsylvania) - 1900 additions per second

일괄 처리 Early batch system bring cards to 1401 read cards to tape put tape on 7094 which does computing put tape on 1401 which prints output

한 작업에 대한 card deck 예제

일괄 처리 간단한 모니터 (Simple Monitor) (1960~) Operator (전문가) 기계 장치를 전문으로 다루는 직업 등장 Batched (Tape Based) 의 의미 요구 수준이 비슷한 작업들을 함께 묶어서 실행 Fortran, Assembler, Fortran 세 작업 차례로 실행하면 작업 교체 시 부수적으로 시간이 소요됨 두 Fortran 작업을 묶어 연속해 실행하고 Assembler는 따로 실행 Resident Monitor 입출력 관리자 혹은 인터럽트 처리기를 메모리에 상주시킴 상주 프로그램에 의한 자동적인 작업 처리 제어 카드 번역

Simple (Resident) Monitor 상주 모니터의 역할 제어 카드 해석 $JOB, $FORT, $LOAD, $RUN, $END 프로그램 Loader (적재기)를 통한 프로그램 load Off-Line Processing 일괄처리 시스템에서 작업 명령어를 연속으로 읽어 들임 작업과 사용자 사이에 interaction이 없음 오류 발생, 현재 작업 진행정도 등을 쉽게 알 수 없음

Multiprogramming 다중 프로그래밍 (1962~) 한 시점에 운영체제가 여러 작업을 메모리에 적재 후 실행함 한 프로세스가 입출력을 실행하는 동안 다른 프로세스에 CPU를 할당하여 실행시킬 수 있음 시스템 자원을 효율적으로 사용하게 됨 다중 프로그래밍에서는 CPU가 항상 할 일이 있음 실행될 작업이 항상 대기하고 있는 경우  실행할 프로세스 관리 메모리를 적절히 운영해야 할 필요가 있음  메모리 관리 *프로그램이 여러 개 있을 때에 전체 처리 시간은 다중 프로그래밍을 하지 않으면 이들의 합이 되나 다중 프로그래밍을 하면 이들의 최대치에 접근한다.

CPU-I/O Overlap … … … I/O Operation Uses CPU Ready Processes CPU Device … Ready Processes I/O Operation CPU Device … Ready Processes Uses CPU CPU Device

Uniprogramming/Multiprogramming 프로세서는 프로그램이 계속 실행되기 위해 I/O 작업이 완료되기를 기다림 하나의 프로그램이 I/O 작업을 위해 기다리는 경우 프로세서는 다른 프로그램을 선택해서 실행함

Multiprogramming 하나의 프로그램이 I/O 장치 이용을 위해 대기하는 동안 CPU가 다른 프로그램을 실행할 수 있도록 함

Time Sharing System: 시분할 시스템 Abstract Machines Result Physical Machine Command Result Command … Result Command

Time Sharing System 시분할 시스템 (1970~) Batch 시스템의 단점은 사용자와 JOB 간의 Interaction이 없다는 데 있음 반환 시간이 길고 다단계 작업이 어려움 Time Sharing은 Multi-User, Multi-Access 방식임 Time-Sharing은 Multiprogramming을 이용하고 프로세스의 선택을 위해 CPU Scheduling 을 사용 여러 프로세스가 메모리를 충분히 사용하도록 가상메모리 이용 프로세스들 사이의 통신, 동기화, 교착상태 등을 고려해야 함 Time Slice 한 프로세스에 대해 한번에 할당되는 CPU 시간

CPU 의 Time Sharing Time slicing

Personal Computer 개인용 컴퓨터 (1970 중 후반) Macintosh의 Apple PC, IBM PC 및 호환 기종 초기 OS는 CP/M, MS/DOS 등 이었으나 현재는 대형 기종에서 사용했던 여러 고급 기능을 제공함 이런 추세의 대표적인 예는 MULTICS임 1965~1970년 MIT에서 개발 GE 645 대형 기계에 구현 UNIX도 PDP-11 위에 개발되면서 계속 발전함 IBM의 OS/2, Microsoft의 Windows, Apple의 MacOS 등 편리한 GUI 제공으로 사용이 용이 이런 추세는 workstation 제품에도 나타남

병렬 시스템 (Parallel System) Multi-processing 시스템 CPU가 여러 개 있어서 Bus, Clock, 메모리 등을 공유 Tightly Coupled System 처리 능력과 신뢰성의 향상 N개의 CPU가 있다고 N배의 성능이 향상되지 않음 메모리 접근 등의 여러 오버헤드 발생 한 프로세스 고장 시 다른 프로세스가 역할을 대신함 전체 시스템이 중단되지 않음 여러 개의 처리기를 활용하는 방식에 따라 대칭(동등한 관계): SMP (Symmetric Multiple Processing) 비대칭(주종 관계) 주 프로세서가 전체를 통제하고 종속 프로세서가 입출력이나 계산 등의 정해진 일 수행

Distributed System 분산 시스템 컴퓨터 네트워크를 이용 분산 시스템 구축 동기 메모리나 Clock을 공유하지 않고 독립적인 자원으로 처리 연결 형태는 LAN과 WAN Loosely Coupled System 다양한 성능의 CPU가 공존하며 주변장치를 공유하기도 함 분산 시스템 구축 동기 자원 공유: 다른 위치에 있는 자원 사용가능 계산의 신속화: 한 작업을 여러 사이트에 분배하여 동시 수행 신뢰성: 한 사이트 고장 시 다른 사이트에서 구동 통신: 사용자가 네트워크에 접근한다는 사실을 알지 못하게 함

Real-Time System: 실시간 시스템 On-Line 시스템과 Real-Time 시스템 두 시스템 모두 특수한 용도에 사용됨 은행과 항공 좌석 예약 시스템 등은 Online 시스템 공정 제어와 인공 위성 추적 시스템 등은 Real Time 시스템 입출력의 직접성과 이들 처리의 시한성(deadline)이 두 시스템을 구별하는 기준이 됨 Real-time 은 soft 시스템과 hard 시스템으로 구분 Soft RTS: 제한된 시간에 처리 하지 못해도 작동 Voice controller in a cell phone Hard RTS: 제한된 시간 내에 처리해야만 함 원자로 제어 시스템, 미사일 제어 시스템, 공정제어 시스템

Embedded System 내장형 시스템 특수한 목적의 시스템에 내장 휴대폰, 가전기기, PDA, Set-Top Box, 교통제어, Robotics 등 시스템의 특성으로는 내구성, 이동성, 실시간 및 낮은 가격 등이 요구됨 대표적으로 사용되는 운영체제에는 VxWorks, WinCE, JAVA와 Linux 계열 기능상의 특징 RAM 또는 메모리 기반 파일 시스템 빠른 부팅과 유무선 통신 XIP(eXecute In Place) 및 Component의 개념으로 운영체제 구성

Embedded System