3과목 운영체제 강사 이 민 욱.

Slides:



Advertisements
Similar presentations
프로그램이란 프로그램 생성 과정 프로젝트 생성 프로그램 실행 컴퓨터를 사용하는 이유는 무엇인가 ? – 주어진 문제를 쉽고, 빠르게 해결하기 위해서 사용한다. 컴퓨터를 사용한다는 것은 ? – 컴퓨터에 설치 혹은 저장된 프로그램을 사용하는 것이다. 문제를 해결하기 위한.
Advertisements

프로그래밍언어론 TA 윤들녁. 소개 윤들녁 연락처 : 공대 7 호관 4 층 401 호 데이터베이스 연구실 실습 후 날짜 _ 학번.zip 으로.
Big Data & Hadoop. 1. Data Type by Sectors Expected Value using Big Data.
천안천일고등학교 Copyright © by Ryu Bin All rights reserved 프로그래밍 실무.
운 영 체 제 1 장 - 운영체제의 개요 정 민 영. 운영체제의 정의 운영체제 (operating system) - 컴퓨터 시스템에 의한 작업의 조작을 프로그래머나 시스템 운영자 대신 효율적이며 연속적으로 처리하여 최대의 성능을 유지할 수 있도록 컴퓨터의.
컴퓨터는 어떻게 동작?.
2010 – 06 – 24 주간 보고서.
컴퓨터와 인터넷.
컴퓨터 운영체제의 역사 손용범.
목 차 C# 언어 특징 .NET 프레임워크 C# 콘솔 프로그램 C# 윈도우 프로그램 실습 프로그래밍세미나 2.
네트워크 기술을 통한 현재와 미래 소개.
뇌를 자극하는 Windows Server 2012 R2
Power Java 제3장 이클립스 사용하기.
MS-Access의 개요 1강 MOS Access 2003 CORE 학습내용 액세스 응용 프로그램은 유용한 데이터를
1. Windows Server 2003의 역사 개인용 Windows의 발전 과정
1장. 이것이 C 언어다.. 1장. 이것이 C 언어다. 프로그래밍 언어 1-1 C 언어의 개론적 이야기 한글, 엑셀, 게임 등의 프로그램을 만들 때 사용하는 언어 ‘컴퓨터 프로그래머’라는 사람들이 제작 C 언어(C++ 포함)를 가장 많이 사용함.
컴퓨터 프로그래밍 기초 [Final] 기말고사
뇌를 자극하는 Windows Server 2012 R2
제 2 장 운영 체제 시스템 Section 1 초기 운영 체제 Section 2 운영 체제의 종류
운영체제 4장 요약정리(CPU 스케줄링) 2A 박훈.
Windows Server 장. 사고를 대비한 데이터 백업.
시스템집적반도체 설계 검증 환경과 기법 Ch 7.
UNIT 06 JTAG Debugger 로봇 SW 교육원 조용수.
제 3장 컴퓨터 시스템의 구조.
UNIT 07 Memory Map 로봇 SW 교육원 조용수.
Error Detection and Correction
                              데이터베이스 프로그래밍 (소프트웨어 개발 트랙)                               퍼스널 오라클 9i 인스톨.
4. LAN의 배선체계 (3장. LAN: Local Area Network)
1장 운영체제 2-C반 운영체제 박소라.
1장. 데이터베이스 자료의 조직적 집합체_데이터베이스 시스템의 이해
1. C 언어 개요.
사용자 함수 사용하기 함수 함수 정의 프로그램에서 특정한 기능을 수행하도록 만든 하나의 단위 작업
Chap 6.Assembler 유건우.
UNIT 07 Memory Map 로봇 SW 교육원 조용수.
멀티미디어시스템 제 6 장. 운영체제 IT응용시스템공학과 김 형 진 교수.
2장. 데이터베이스 관리 시스템 데이터베이스 관리 시스템의 등장 배경 데이터베이스 관리 시스템의 정의
UNIX Unbounded A Beginning Approach
뇌를 자극하는 Windows Server 2012 R2
Go Lang 리뷰 이동은.
HTTP 프로토콜의 요청과 응답 동작을 이해한다. 서블릿 및 JSP 를 알아보고 역할을 이해한다.
Chapter6 : JVM과 메모리 6.1 JVM의 구조와 메모리 모델 6.2 프로그램 실행과 메모리 6.3 객체생성과 메모리
제1장 Unix란 무엇인가?.
제 1 장 운영 체제의 개요 Section 1 운영 체제의 개념 Section 2 운영 체제의 구성과 기능
Chap1. 운영체제의 개요 A 이 유 진.
Tiny OS와 NesC Tiny OS Part1. Won Mi Sun – 17 지능제어 연구실.
컴퓨터 시스템 하드웨어 컴퓨터 시스템 소프트웨어 C P U Control Unit 입 력 장 치 출 력 장 치 ALU
자바 5.0 프로그래밍.
ARM Development Suite v1.2
Part 1 개요 Chapter 1 : 컴퓨터와 프로그램 그리고 자바 Chapter 2 : 자바의 환경
“사람과 컴퓨터” 이 점 숙 컴퓨터와 소프트웨어 “사람과 컴퓨터” 이 점 숙
운영체제 1장 이성연.
네트워크 환경 구축과 이미지 전송 호스트/타겟 통신 직렬 통신을 이용한 이미지 전송 수퍼 데몬 BOOTP 환경 구축
제2강 : 전자계산기구조-컴퓨터 시스템 구성.
( Windows Service Application Debugging )
학습목표 처음 만드는 비주얼 베이직 프로그램 프로그램 실행과 실행 파일 생성. 학습목표 처음 만드는 비주얼 베이직 프로그램 프로그램 실행과 실행 파일 생성.
뇌를 자극하는 Solaris bible.
AT MEGA 128 기초와 응용 I 기본적인 구조.
기초C언어 제2주 실습 프로그래밍의 개념, 프로그램 작성 과정 컴퓨터시뮬레이션학과 2016년 봄학기 담당교수 : 이형원
공학도를 위한 C언어 프로그래밍실습1 -통합개발환경 사용법-
멀티미디어시스템 제 5 장. 멀티미디어 데이터베이스 개념 IT응용시스템공학과 김 형 진 교수.
발표자 : 이지연 Programming Systems Lab.
System Security Operating System.
운 영 체 제 강 원재.
제 4 장 Record.
운영체제의 개요 2학년 C반 채상훈.
1장 C 언어의 개요 C 언어의 역사와 기원 C 언어의 특징 프로그램 과정 C 프로그램 구조 C 프로그램 예제.
Completion Port기반의 채팅프로그램
과 목 명 : 운영체제 담당교수 : 박 승 기 학 과 : 컴퓨터 소프트웨어 학 번 : 이 름 : 최 현 식
2. 프로세스 B 안우진 - 운영체제 -.
LEON3 DBT 엔진을 이용한 ERC32 기반의 하이퍼바이저 프로토 타입 개발
Presentation transcript:

3과목 운영체제 강사 이 민 욱

운영체제 운영체제의 개념 1) 운영체제의 정의 ① 하드웨어를 제어하는 소프트웨어 ② 하드웨어를 활용할 수 있도록 펌웨어나 소프트웨어로 만들어진 프로그램 ③ 컴퓨터 본체 및 각 주변 장치를 가장 능률적이고, 경제적으로 사용할 수 있도록 하는 프로그램 ④ 컴퓨터를 편리하게 사용하고 하드웨어를 효율적으로 사용할 수     있도록 하는 프로그램 ⑤ 컴퓨터 자원들인 기억 장치, 프로세스, 파일 및 정보, 네트워크     및 보호 등을 효율적으로 관리할 수 있는 프로그램의 집합 2) 운영체제의 목적 및 목표 ① 컴퓨터 시스템의 처리량, 신뢰성을 최대화한다. ② 컴퓨터 시스템의 반환 시간, 응답 시간, 처리시간, 대기시간, 경과시간을 최소화함 ③ 컴퓨터를 구성하고 있는 자원을 효율적으로 운영하고 제어한다. ④ 사용자 인터페이스 제공 ⑤ 자원 스케줄링(자원 공유가 목적) ⑥ 데이터 공유 ⑦ 주변 장치 관리 ⑧ 시스템의 이식성(호환성)을 높인다. 3) 운영체제의 계층 구조 : 유틸리티와 하드웨어 사이

2. 시스템 소프트웨어 1) 언어 번역과정 ① 어셈블러     저급 언어로 작성된 원시 프로그램을 목적 프로그램으로 변환 ② 매크로 프로세서     어셈블리어를 사용하기 쉽도록 명령어들을 문자로 치환하여 확장 ③ 컴파일러     고급 언어로 작성된 원시 프로그램을 목적 프로그램으로 변환 ④ 인터프리터     고급 언어로 작성된 원시 프로그램을 실행하되 목적 프로그램은     만들지 않고 대화식으로 처리 ⑤ 링커     두 개 이상의 목적 프로그램을 합쳐서 실행 가능한 프로그램으로     만든다. ⑥ 로더      프로그램을 실행하기 위하여 프로그램을 보조 기억 장치로부터     컴퓨터의 주기억 장치에 올려놓는다. 2) 시스템 프로그램의 주요 역할 ① 프로그램을 기억 장치에 상주  ② 인터럽트를 관리 ③ 기억 장치를 관리                     ④ 주변 장치를 관리 ⑤ 파일들을 관리

3) 어셈블리 번역 방법 ① 1-pass 어셈블러    한 번에 번역한다. 속도가 빠르다. 프로그램하기 어렵다. ② 2-pass 어셈블러    두 번에 번역한다, 속도가 느리다, 프로그램하기 용이하다. 4) 매크로 프로세서의 기본 기능 ① 매크로 : 프로그램 작성시 한 프로그램 내에서 동일한 코드가 반복될 경우 반복되는 코드를 한번만 작성하여 특정 이름으로 정의한 후 그 코드가 필요할 때마다 정의된 이름을 호출하여 사용하는 것 ② 매크로 프로세서 : 원시 프로그램에 존재하는 매크로 호출 부분에 매크로(Macro) 프로그램을 삽입하여 확장된 원시 프로그램을 생성하는 시스템 소프트웨어 ③ 매크로 프로세서 처리 과정 : 매크로 정의 인식 → 매크로 정의 저장 → 매크로 호출 인식 → 매크로 확장과 인수(매개 변수) 치환

5) 로더의 일반적인 기능 ① 할당(Allocation)                           ② 연결(Linking) ③ 재배치(Relocation)                         ④ 적재(Loading) 6) 로더의 종류 ① Compile-and-go 로더    번역 프로그램(어셈블러, 컴파일러)과 로더가 하나로 구성 ② 절대 로더(Absolute Loader)    ㉠ 할당 - 프로그래머       ㉡ 연결 - 프로그래머    ㉢ 재배치 - 어셈블러       ㉣ 적재 - 로더 ③ 직접 연결 로더(Direct-Linking-Loader, 재배치 로더)    로더가 할당, 연결, 재배치, 적재를 모두 수행하는 로더로 가장    일반적인 사용되는 로더 ④ Dynamic 로더    프로그램을 한꺼번에 적재하는 것이 아니라 실행 시 필요한 부분    만을 차례로 적재하는 방식

3. 운영체제의 발전 1) 운영체제의 발전 과정 ① 일괄 처리(Batch Processing) 시스템 ② 다중 프로그래밍(Multi Programming) 시스템 ③ 온라인(On-Line Processing System) 시스템 ④ 시간 분할 처리(Time-Sharing Processing) 시스템 ⑤ 실시간 처리(Real Time Processing) 시스템 ⑥ 다중 모드 처리(Multi Mode Processing) 시스템 ⑦ 분산(Distributed) 시스템 ⑧ 병렬(Parallel) 시스템 2) 일괄 처리(Batch Processing) 시스템 ① 시대적으로 가장 먼저 현재 운영체제 형태의 모습을 갖춘    처리 방식이다. ② 시스템의 효율 향상을 위하여 작업량이 일정한 수준이 될 때까지    모아두었다가 한꺼번에 일시에 처리한다. 3) 다중 프로그래밍(Multi Programming) 시스템 ① 몇 개의 작업을 동시에 주기억장치에 적재하여 실행하는 처리 기법 ② 처리량의 극대화를 꾀한다.

4) 시간 분할 처리(Time-Sharing Processing) 시스템 ① 여러 명의 사용자가 사용하는 컴퓨터 시스템에서 사용자들이    프로그램을 번갈아 가며 처리 ② 일정 시간 단위로 CPU를 한 사용자에서 다음 사용자로 신속하게    전환함으로 동시에 여러 사용자가 사용 ③ 다중 프로그래밍 방식과 결합하여 모든 작업이 동시에 진행되는    것처럼 하는 대화식(interactive) 처리 ④ 라운드 로빈(Round Robin) 방식 ⑤ 다중 프로그래밍은 처리량의 극대화, 시간 분할 처리는 응답 시간의    최소화 5) 실시간 처리(Real Time Processing) 시스템 ① 실행 결과를 즉시 받아 볼 수 있어 응답 시간이 짧다. ② 우주 왕복선이나 레이다 추적기 등과 같이 정해진 시간에 반드시    수행되어야 하는 작업에 적당   6) 다중 모드 처리(Multi Mode Processing) 시스템    일괄처리, 시간 분할 처리, 실시간 처리를 모두 수행할 수 있는    운영 방식

7) 용어 정리 ① 다중 프로그래밍(Multi Programming)     하나의 주기억 장치와 CPU로 구성된 컴퓨터 시스템에서 주기억    장치에 여러 개의 프로그램을 적재하여 처리하는 방식으로 단위    시간 내에 처리량을 최대로 한다. ② 다중 프로세싱(Multi Processing)    하나의 주기억 장치와 여러 개의 CPU로 구성된 컴퓨터 시스템에서    주기억 장치에 하나 또는 여러 개의 프로그램을 적재하여 처리하는    방식으로 보통 병렬 시스템을 말한다. ③ 다중 컴퓨터(Multi Computer)    여러 개의 독립적인 컴퓨터 시스템에서 하나의 작업을 공동으로    처리할 수 있는 시스템으로 보통 분산 컴퓨터 시스템이라고 한다. ④ 멀티 태스킹(Multi Tasking)    하나의 주기억 장치와 CPU로 구성된 컴퓨터 시스템에서 여러 개의    프로그램을 동시에 처리할 수 있는 방식으로 사용자 관점에서의    다중 프로그래밍을 말한다. 예) 다운받으며 음악을 듣는다. 8) Bench Mark Program    컴퓨터 시스템이나 CPU, 운영체제 등의 전반적인 성능을 측정, 비교하는 프로그램을 말한다. 운영체제의 성능을 평가한다면 실제 처리할  작업의 환경을 가상적으로 구축하고 가상 데이터를 입력하여 작업의    처리량, 반환 시간, 신뢰성 등을 비교 평가하게 된다.

4. 운영체제 시스템의 성능 평가 1) 성능 평가 요인 4가지 ① 처리량(Throughput)    동일한 시간(단위 시간) 내에서 얼마나 많은 작업량을 처리할 수 있는가의 요인 ② 반환 시간(Turn around time)    요청한 작업에 대하여 그 결과를 사용자에게 되돌려 줄 때까지 소요 되는 시간 ③ 신뢰도(Reliability)    작업의 결과를 얼마나 정확하고 믿을 수 있는가의 요인 ④ 이용 가능도(Availability)    시스템의 전체 운영 시간 중에서 실제 가동하여 사용 중인 시간의    비율(오류 없이 작동된 시간의 비율) 2) 다중 프로그래밍에서의 시간(Time) ① 응답 시간(Response time)    작업이 처음 실행되기까지 걸린 시간으로 반응 시간이라고도 한다. ② 대기 시간(Waiting time)     실제 작업을 CPU가 실행하지 않은 시간들을 더한 시간 ③ 실행 시간(Running time)    CPU가 작업을 처리하는 시간을 더한 시간 ④ 반환 시간(Turn around time) :    실행 시간과 대기 시간을 모두 더한 시간으로 작업이 완료될 때 까지 걸린 시간

5. 운영체제 구성 요소(기능에 따른 분류) 1) 운영체제 구성 요소(기능에 따른 분류) ① 제어 프로그램(Control Program)    - 감시 프로그램(Supervisor Program) : 중추적인 역할을 담당, 운영체제 제어 루틴의 호출을 인식, 해당 루틴의 동작을 감시 감독    - 데이터 관리 프로그램 (Data Management Program) : 자료 전송, 파일의 조작 및 처리, 입출력 자료와 프로그램의 논리적인 연결, 파일과 데이터를 표준화 처리    - 작업 관리 프로그램(Job Control Program) : 다른 업무로의 이행을 자동적으로 수행 하기 위한 준비 및 그 처리 완료를 담당 작업의 연속 처리를 위한 스케줄 및 시스템 자원 할당 운영체제의 각종 제어 루틴(프로세스 관리, CPU 스케줄링,..)의  수행 순서를 관리 사용자의 명령어 및 프로그램에 따라 제어 루틴들의 작업 시기를 조절 ② 처리 프로그램(Processing Program)   - 언어 번역 프로그램(Language Translator Program)   - 서비스 프로그램(Service Program)   - 문제 프로그램(Problem Program)