반응형

운영체제 (Operation System) 8

[OS] Lecture 5. Process Scheduling (1/4) / 운영체제 강의

프로세스 스케줄링을 해야하는 이유에 대해서 먼저 말해보자면 프로세스가 여러개니까 자원을 나누어 사용해야 한다. 자원 할당할 cpu를 선택하는 것을 스케줄링이라고 한다. 언제 누가 어느시간동안 사용해야할지 ( 시간 분할 time sharing 관리 ) 메모리 같은 경우는 프로세스 두 명이 반을 나누어서 사용하는 >> 공간 분할 (space sharing) 관리 시스템의 성능(performance) 향상 시스템을 효율적으로 사용하기 위함 * 대표적 시스템 성능지표 (index) 응답시간 : 요청을 보냈을 때 응답이 돌아오기까지의 시간 > interactive 대화형 시스템, real time 작업 처리량(through) : 단위시간 동안 얼마나 많은 일을 할 수 있는가 > batch system 자원 활용도..

[OS] Lecture 4. Thread management / 운영체제 강의

실이라는 뜻의 스레드 목적을 달성하기 위한 연산을 하는 프로세스 자원을 할당받고 제어해서 원하는 목적을 달성하는 것이 프로세스가 하는 일이다. 이중에서 제어 부분만 따로 떼어 놓은 것을 "스레드"라고 한다. 하나의 프로세스에 여러가지 스레드가 있을 수 있다. 프로세스는 리소스를 제어하는 녀석이다. 프로세스는 리소스를 제어하는 지역데이터를 사용하는 이유 > "제어"를 위해서 제어 부분만 떼어 놓는 부분을 쓰레드라고 하는데 리소스틑 공유한다. 같은 프로세스의 스레드들은 동일한 주소 공간을 공유한다. 자원을 공유하고 제어 부분만 가지고 있기 때문에 일반 프로세스보다 가볍다. 프로세서를 활요하는 기본 단위 제어요소는 개인이 가지고 있고, 코드와 데이터 = 자원은 공유되고 있다. - 사용자 응답성 스레드가 하나인..

[OS] Lecture 3. Process Management (2/2) / 운영체제 강의

* 인터럽트(interrupt) 예상치 못한, 외부에서 발생한 이벤트 Unexpected, external events 게임을 하는 데 게임 안에는 프로세스가 돈다. 프로세스가 예상하지 못한 순간에 마우스를 클릭한 상황 인터럽트의 종류 I/O interrupt / 키보드, 마우스 외부에서 발생한 Clock interrupt Console interrupt / 콘솔에서 발생한 Program check interrupt Machine check interrupt Inter-process interrupt System call interrupt 인터럽트라는 개념을 이해하는 게 중요하다 보통 왜 방해하는 지 묻겠죠? 인터럽트 처리과정 역시 커널이 개입해서 프로세스를 중단하고 인터럽트를 처리하게 된다. 어디서 왜..

[OS] Lecture 3. Process Management (1/2) / 운영체제 강의

https://www.youtube.com/watch?v=jZuTw2tRT7w&list=PLBrGAFAIyf5rby7QylRc6JxU5lzQ9c4tN&index=5 프로세스 실행의 주체 ** 프로세스(Process) * 작업(Job) / 프로그램(Program) - 실행할 프로그램 + 데이터 - 컴퓨터 시스템에 실행 요청 전의 상태 (디스크에 보관되어 있는 상태) * 프로세스 (Process) - 실행을 위해 시스템(커널)에 등록된 작업 - 시스템 성능 향상을 위해 커널에 의해 관리 됨 목표달성을 위해서 > 운영체제의 역할 : 시스템을 효율적으로 관리한다 ** 프로세스의 정의(알아두면 면접 때 좋을 것이다) *실행중인 프로그램 커널에 등록되고 커널의 관리하에 있는 작업 각종 자원들을 요청하고 할당 받을 ..

[OS] Lecture 2. OS Overview (3/3) / 운영체제 강의

== 운영체제의 구조 == 커널(Kernel) - OS의 핵심 부분 (메모리 상주) : 가장 빈번하게 사용되는 기능들 담당(시스템 관리 processor, memory, Etc) 등 메모리에 항상 올라가 있는 것들은 커널 : 동의어 (핵, 관리자 프로그램, 상주 프로그램, 제어 프로그램 등) 운영체제에서 커널을 제외한 나머지 것들을 유틸리티(Utility) - 비상주 프로그램(메모리에 항상 올라가있지 않은) - UI등 서비스 프로그램 하드웨어가 있고 그 하드웨어를 관리하는 Kernel이 있고, Kernel에게 무언가를 요청하는 통로 > System calls Utilites가 감싸는 부분까지가 OS applications 사용자가 사용하는 서비스 Kernerl 운영체제가하는 일은 리소스를 관리하는 일이다..

[OS] Lecture 2. OS Overview (2/3) / 운영체제 강의

운영체제의 역할 운영체제의 구분 동시사용자 수 동시 실행 프로세스 수 작업방식(사용자 관점) 운영체제의 구조 운영체제의 기능 [OS] Lecture 2. OS Overview (2/3) / 운영체제 강의 운영체제의 구분 - 작업 수행 방식 * 운영체제 개념이 존재하지 않음 사용자가 기계어로 직접 프로그램을 작성 컴퓨터에 필요한 모든 작업 프로그램에 포함 > 프로세서에는 명령어 저장 방법, 계산 대상, 결과 저장 위치와 방법, 출력시점, 위치 등 * 실행하는 작업별 순차 처리 각각의 작업에 대한 준비 시간 소요 (overhead)를 다루기 위한 방법 >> Batch system 개념이 등장한다. 배치 시스템 모든 시스템을 중앙(전자계산소 등)에서 관리 및 운영 사용자의 요청작업(천공카드 등)을 일정 시간 ..

[OS] Lecture 2. OS Overview (1/3) / 운영체제 강의

2. [OS] Lecture 2. OS Overview (1/3) / 운영체제 강의 첫번째 수업에서는 운영체제가 관리하는 하드웨어 * 운영체제란? 컴퓨터 하드웨어를 효율적으로 관리해서 사용자 또는 운영프로그램에게 서비스를 제공하는 녀석 - 운영체제가 실제로 어떤 역할을 하는지 확인 * User interface(편리성) 마우스가 떠있는 화면을 문자를 기반으로 Character user Interface를 사용했고 GUI(Graphical User Interface) EUCI (End-User Comfortable Interface) > 예) mp3 이 기계만의 ui * Resource management(효율성) 리소스를 관리하는 것 ( 하드웨어, 만질 수 있음 ) 소프트웨어 리소스( 만질 수 없음) 주..

[OS] Lecture 1. Computer System Overview / 운영체제 강의

고성능의 컴퓨터 하드웨어 cpu, gpu, memory, hdd/sdd 저장장치, LAN(네트워크 장치) os - 효율적으로 활용할 수 있는 os가 필요하다. os 가 있어야 게임이 가능함 > 하드웨어를 효율적으로 관리한다. 사용자 응용프로그램들에게 서비스를 제공하는 역할을 한다. * 운영체제란? 컴퓨팅 자원들을 효율적으로 관리해서 그것을 통해 사용자에게 서비스를 제공하는 소프트웨어 컴퓨터 하드웨어 컴퓨터 시스템을 관리하는 녀석 * 컴퓨터 하드웨어 프로세서 : 계산하는 녀석 (CPU/GPU그래픽카드/응용전용처리장치 등) 메모리 : 주 기억장치/ 보조 기억장치 등 (무언가를 저장하는 녀석) 주변장치 : 키보드/마우스, 모니터/프린터, 네트워크 모뎀 등 (그 외의 장치, 입/출력/네트워크 장치) * 프로세서..

반응형