본문 바로가기

Operating System6

[ OS 기초 ] 12. I/O System and Disk Management 1. 입출력(I/O) 메커니즘이란? 2. 운영체제와 입출력(I/O) 3. 디스크 스케줄링 4. RAID 아키텍처 00 개요 컴퓨터로 게임을 할 때 아이템을 쓰기 위해서, 이동하기 위해서 마우스를 클릭하거나 키보드를 누른다. 이러한 마우스 클릭, 키보드 누름과 같은 행동은 입출력에 해당하는데, 운영체제는 이런 행동을 컴퓨터가 인식해 프로그램이 사용자가 의도한 결과(아이템 선택 또는 이동)를 화면상에 보여주는 과정에도 관여하고 있다. 이번 차시에서는 입출력 메커니즘과 이 과정에서 운영체제가 제공하는 기능들에 대해 알아보았다. 뿐만 아니라 디스크의 입출력 성능을 향상하기 위한 스케줄링 기법과 RAID(Redundant Array of Inexpensive Disks) 아키텍처에 대해 살펴보았다. 01 입출력 .. 2021. 7. 27.
[ OS 기초 ] 09. Virtual Memory (2) (앞에서 이어) 비연속 메모리 할당 기법과 각각의 특징, 주소 매핑, 메모리 관리, 공유 및 보호 1. segmentation system 2. hybrid paging and segmentation system 00 개요 운영체제의 주 기능 중 하나인 메모리 관리는 크게 메모리 연속 할당과 비연속 할당으로 구분할 수 있다. 앞서 연속 할당 방법의 Uni-programming, Multi-programming(FPM, VPM)에 대해 알아보았고 대표적인 비연속 할당 방법(Paging System, Segmentation System, Hybrid) 중 페이징 시스템까지 알아보았다. 이번 차시에서는 남은 두 방법인 세그멘테이션 시스템과 페이징시스템을 세그멘테이션 시스템과 결합한 하이브리드 시스템에 대해 살.. 2021. 7. 13.
[ OS 기초 ] 08. Memory Management 1. 메모리 관련 개념 - 종류, 계층, 워드와 블록, 주소 바인딩(address binding), Dynamic loading, Swapping 2. 메모리 할당 - 연속적 메모리 할당 : Uni programming / Multi programming (FPM, VPM)과 배치 전략 - 비연속적 메모리 할당( 다음에 다룰 것) 00 개요 운영체제는 자원을 잘 관리해 사용자와 응용 프로그램에 서비스를 제공하는 역할을 한다. 지금까지는 운영체제의 기능 중 프로세스 관리에 대해 살펴봤고, 다음에 나올 부분은 메모리 관리다. 운영체제가 메모리를 관리한다는 것은 뭔지, 어떻게 관리를 하는지에 대해 살펴보기 위한 기본적인 개념을 우선 살펴보고 메모리 할당 방식에 대해 알아보았다. 01 메모리, 메모리 관련 개념.. 2021. 7. 12.
[ OS 기초 ] 06. 프로세스 동기화, 상호배제 1. 동기화란? 2. 동기화의 개념과, 동기화를 하는 이유 3. 동기화와 관련된 개념 4. 상호배제와 기법 00 동기화란? 동기화(Synchronization) 은 쉽게 말해 시스템 프로세스 간 정보를 공유하는 행위라 정리할 수 있다. (프로세스의 대화) 01 동기화, 하는 이유 우리가 평소 이용하는 컴퓨터는 '다중 프로그래밍 시스템' => 여러 프로세스가 동시에 돌아간다 - 프로세스는? 자원을 제어해 작업을 수행하여 목적을 달성한다 - 그렇다면 여러 프로세스가 하나의 자원을 동시에 쓰려고 한다면? 문제가 발생할 수 있다 ex. race condition : 실행 순서에 따라 결과가 달라지는 것 특히 프로세스는 기본적으로 '비동기적' 이면서 '병행적' 이다 - 비동기적(Asynchronous) : 다른 .. 2021. 6. 30.
[ OS 기초 ] 02. 프로세스 관리 1. 프로세스와 JOB의 차이 2. 프로세스의 정의와 종류 3. 관련 개념(자원, PCB) 4. 프로세스의 상태 5. 인터럽트와 문맥교환(context swithcing) 00 도입 프로세스를 아주 단순화하면 '실행의 주체'다. 평소 컴퓨터를 쓰다가 응답이 없을 때 ctrl+alt+delete 클릭해서 열어보는 작업관리자에서도 프로세스와 각 프로세스가 얼마나 cpu를 할당받고, 메모리를 사용하고 있는지 확인할 수 있다. 운영체제의 주 기능 중 하나인 프로세스 관리에 대해 알아보기 위해 먼저 프로세스란 무엇이며, 어떤 방식으로 프로세스가 동작하는지(프로그램이 실행되는지, 작업이 수행되는지) 이해한 뒤 인터럽트의 개념까지 살펴보았다. 01 프로세스 프로세스를 이해하려면 먼저 Job(작업)의 개념도 알아야 한.. 2021. 6. 23.
[ OS 기초 ] 00. CS 개요 1. 컴퓨터, 어떻게 돌아가는걸까 2. 그럼 OS가 그 과정에서 담당하는 역할은? 3. 컴퓨터 하드웨어와 OS의 관계 - 프로세서, 메모리, 주변장치를 중심으로 00 도입 컴퓨터에 저장되어있는 영화를 볼 때 우리는 원하는 영화 파일을 마우스로 클릭하고 기다리면 화면에 비디오 플레이어가 뜨며 영상을 볼 수 있게 된다. 이 클릭을 통해 전달된 어떤 정보가 컴퓨터 내부에서 어떤 과정을 거쳐, 컴퓨터 어딘가에 저장되어있던 영화를 불러와 내가 보는 모니터에 띄워주는 과정을 거친 것이다. 컴퓨터에 대해 잘 몰라도 컴퓨터 안에 여러 물리적인 장치들이 있다는 것, 그리고 이 물리적인 장치들이 서로 통신을 하고 특정 작업을 한다는 건 알 수 있다. 이때 이 물리적인 장치를 하드웨어라 통칭하는데, 넓은 관점에서 이 하드웨.. 2021. 6. 17.