1 / 28

Operating System 운영체제

Operating System 운영체제. 4190.307 Ⓒ 서울공대 OSLab. 연구실: 302동 3 24 호 전화: 880- 5583 이메일: yeom@snu.ac.kr 홈페이지 : dcslab.snu.ac.kr 내 course 참조 Office Hours: 화 , 목 1 4:30 -15:30 or by appointment. 염헌영 ( 컴퓨터공학부 교수). 담당조교. 김형석 302동 31 1-2 호실 전화: 880-185 6

isaiah
Download Presentation

Operating System 운영체제

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Operating System운영체제 4190.307 Ⓒ서울공대 OSLab

  2. 연구실: 302동 324호 • 전화: 880-5583 • 이메일: yeom@snu.ac.kr • 홈페이지: dcslab.snu.ac.kr 내 course 참조 • Office Hours: • 화,목 14:30 -15:30 or by appointment 염헌영 (컴퓨터공학부 교수) Operating System Concepts

  3. 담당조교 • 김형석 • 302동 311-2호실 • 전화: 880-1856 • 이메일: hskim@dcslab.snu.ac.kr • Office Hours:월, 수 2-3시 Operating System Concepts

  4. Course Information • 교재 : (1) 주교재: Silberschatz, P. Galvin& G. Gagne, Applied Operating System Concepts, First Ed., (Windows XPUpdate), Wiley. (2) 참고도서: L. F. Bic& A. Shaw, Operating Systems Principles, Prentice-Hall. Operating System Concepts

  5. Course Information • 평가 중간고사 (4월 말 예정): 30% 기말고사 (6월 초 예정): 60% 출석 및 기타: 10% (부정기적 Quiz 등) Operating System Concepts

  6. Chapter 1: Introduction • What is an Operating System? • Mainframe Systems • Desktop Systems • Multiprocessor Systems • Distributed Systems • Clustered System • Real -Time Systems • Handheld Systems • Computing Environments Operating System Concepts

  7. What is an Operating System? User OS HW • A program that acts as an intermediary between • a user of a computer and the computer hardware. • Operating system goals: • Execute user programs • Make solving user problems easier. • Make the computer system convenient to use. • Use hardware in an efficient manner. • “Performance” • Throughput --- jobs / sec. system oriented • Utilization --- % of time busy system oriented • Response time --- sec / job user oriented • user oriented index conflicts with system oriented indices • user (R)보다 system (U, T) 이 소중하면 batch 로 처리 (eg 동회) • 어떤 작업은 그 자체가 결정 (전화요금 – batch) (Web – 즉시처리) Operating System Concepts

  8. Computer System Components • Hardware – provides basic computing resources (CPU, memory, I/O devices, …). • Operating system – controls and coordinates the use of the hardware among the various application programs for the various users. • Applications programs – define the ways in which the system resources are used to solve the computing problems of the users (compilers, database systems, games, business programs). • Users (people, machines, other computers). Operating System Concepts

  9. Abstract View of System Components Operating System Concepts

  10. Operating System Definitions • Definition 1 -- Resource allocator • manages and allocates resources. • Definition 2 -- Control program • controls the execution of user programs and operations of I/O devices • . • Definition 3 -- Kernel • one program running at all times • memory resident all the time • all else depend on this program. Operating System Concepts

  11. Mainframe Systems • Batch: • 동회 인감증명 (system 위주, batch 처리의 사례) • 쌓이면  서류창고  복사  수입인지 서류 창고  대장기록 • 여러 사람 것을 한꺼번에 모아 (batch) 처리 • 자원의 절약 -- by batching similar jobs • Batch 이전의 초기 컴퓨터 (card reader, 프린터 …) • Load compiler from card reader into main memory • Put Bob’s source program (punch card) on card reader • Run Compiler, which reads Bob’s program from card reader • Generate Bob’s binary to card puncher • Batch 시스템의 등장– 당시에는 user 보다 HW 가 더 중요 (VLSI 이전) • Compile in batch (many source programs are on card reader) • Automatic job sequencing • automatically transfers control from one job to another. • First rudimentary operating system. • Job Control -- (load cc, read src, compile, load bin, run, output 처리 …) • Resident monitor • initial control in monitor • Job control (load, run) • When a user job completes -- control transfers back to monitor Operating System Concepts

  12. Memory Layout for a Simple Batch System Monitor Card Reader Printer CPU is idle While I/O is in progress Operating System Concepts

  13. MultiprogrammedBatch Systems Several jobs are kept in main memory at the same time, and the CPU is multiplexed among them. CPU tape … CPU Network CPU Operating System Concepts

  14. OS Features Needed for Multiprogramming • I/O routine supplied by the system. • Memory management – • the system must allocate the memory to several jobs. • 할당되는 크기, memory를 할당하는 순서 • CPU scheduling – • must choose among several jobs ready to run on CPU • 순서 • Allocation of devices. • 순서 Operating System Concepts

  15. Time-Sharing Systems–Interactive Computin(multi-user system) • -The CPU is multiplexed among several jobs • that are kept in memory and on disk (not on card reader ! ) • (the CPU is allocated to a job only if the job is in memory). -A job is swapped in and out of memory to the disk (not card reader). • Eg 한글97, 탐색기  한가해지면 disk 로 (not card reader) • -Users use (keyboard, mouse, CRT screen) to interact with program • instead of (card reader, printer, etc). • -On-line communication between the user and system is provided • when the operating system finishes the execution of one command, • OS asks next “control statement” from the user’s keyboard. • Eg 한글97, 탐색기, …. • -Response time should be short. (few seconds) •  Users are given illusion that he is using the whole system. Operating System Concepts

  16. Desktop (PC) Systems • Personal computers • computer system dedicated to a single user. • I/O devices • keyboards, mice, display screens, personal printer • (from old system’s card readers, shared line printers) • Goal change: • From Maximum hardware utilization • To  User convenience and responsiveness (혼자서 HW 다사용). • Do not need protection (Single user system) • Among users • Among user and system (minimum system is in ROM) • Vulnerable to worm, virus, etc. • PC operating systems (Windows, MacOS, Linux) Operating System Concepts

  17. Real-Time Systems • Eg: missile control, medical equipment control system. • sensor • system computer • control • Rigid response time requirement (milli-seconds 단위 or 더 빠름) • Real-Time systems may be either hard or soft real-time. • Hard 절대로 지켜야 원자력 발전소 제어기 • Soft 가급적 지켜야 인터넷 강연, robot arm control Operating System Concepts

  18. Real-Time Systems (Cont.) • Hard real-time: • Secondary storage limited or absent • (disk access time is not predictable) • data stored in memory • 다른 OS 와 상이한 policy를 사용해야 • (일반 OS -- no response time guarantee) • general-purpose operating systems. • Timesharing Systems • Soft real-time • Limited utility in industrial control of robotics • Useful in some applications (multimedia, virtual reality) . Operating System Concepts

  19. Parallel Systems • Multiprocessor system: Many CPU’s in close communication. • Tightly coupled system – • processors share memory and a clock; • communication usually takes place through the shared memory. • Advantages of parallel system: • Increased throughput (# of jobs / second) • Economical • Increased reliability • graceful degradation • fail-soft systems (fault tolerance – fault avoidance 와 비교) 용어 fault -- 고장자체 error – fault 의 파급효과 Operating System Concepts

  20. Parallel Systems (Cont.) • Symmetric multiprocessing (SMP) • Each processor runs identical copy of the operating system. • Many processes can run at once without performance deterioration. • Most modern operating systems support SMP • Asymmetric multiprocessing • Each processor is assigned a specific task; • master processor: • schedules and allocates work to slave processors. • More common in extremely large systems Operating System Concepts

  21. Symmetric Multiprocessing Architecture Operating System Concepts

  22. Distributed Systems • Distribute the computation among several physical processors. • Loosely coupled system – • each processor has its own local memory; • processors communicate with one another through various communications lines, • such as high-speed buses or telephone lines. • Advantages of distributed systems. • Resources Sharing (다른 노드에 있는 자원 활용) • illusion that there is only one OS • Computation speed up – load sharing • Reliability • Communications Operating System Concepts

  23. Distributed Systems (cont) • Requires networking infrastructure. • Local area networks (LAN) or Wide area networks (WAN) • Network Operating System • Each node (processor + OS) is autonomous • Aware of network Operating System Concepts

  24. General Structure of Client-Server Operating System Concepts

  25. Clustered Systems • Clustering allows two or more systems to share storage. • Provides high reliability. • Asymmetric clustering: • one server runs the application while other servers standby. • Symmetric clustering: • all N hosts are running the application. Operating System Concepts

  26. Handheld Systems • Personal Digital Assistants (PDAs) • Cellular telephones • Issues: • Limited memory • Small display screens • Limited power • Slow processors • 차세대 3G 무선전화기 Operating System Concepts

  27. Migration of Operating-System Concepts and Features Operating System Concepts

  28. Computing Environments • Traditional computing • Web-Based Computing • Embedded Computing Operating System Concepts

More Related