
프로세스란? → 실행 중인 프로그램은 프로세스라고 한다. 프로세스 : 메모리에 올려져서 실행중인 프로그램 코드 이미지(바이너리) : 실행 파일 (ex.ELF format) 응용프로그램 != 프로세스 → 응용프로그램은 여러 개의 프로세스로 이루어질 수 있다. 하나의 응용프로그램은 여러 개의 프로세스(프로그램)가 상호작용을 하면서 실행될 수도 있다. 간단한 C/C++ 프로그램을 만든다면 하나의 프로세스 여러 프로그램을 만들어서 서로 통신하면서 프로그램을 작성할 수도 있음 ( IPC 기법 ) 스케쥴러와 프로세스 Q. 누가 프로세스를 관리 할까요? A. 스케쥴러 → 스케쥴러가 스케쥴링하는 단위가 프로세스 스케쥴링 알고리즘 Q.어느 순서대로 프로세스를 실행시킬까? → 여러개의 프로세스가 있는데 어떤 걸 어느 시점..

- 프로세스 : 메모리에 올려져서 실행 중인 프로그램 - 응용 프로그램 != 프로세스 - 응용 프로그램은 여러 개의 프로세스로 이루어질 수 있음 - 하나의 응용 프로그램은 여러 개의 프로세스가 상호작용을 하면서 실행될 수도 있음 1. 배치 처리 시스템 → Application1 이 실행 끝나면 바로 다음 Application2 가 실행 : First In First Out ( 자료구조의 큐와 비슷 ) Q 왜 배치 처리 시스템을 사용하지 않고 멀티 프로그래밍, 시분할 시스템이 사용될까? → 배치 처리 시스템은 여러 프로그램을 순차적으로 실행시키는데 어떤 프로그램은 너무 시간이 많이 걸려 다른 프로그램을 실행하려면 많은 시간을 기다려야 하는 문제가 있다. 예를들면, 음악을 들으면서 문서 작업을 할 수 없고(..

CPU Protection Rings cpu 도 권한 모드라는 것을 가지고 있다. 1. 사용자 모드(user mode by application ) : 일반적인 명령 실행, 응용 프로그램이 사용 2. 커널 모드 (kernel mode by OS : OS가 cpu 를 쓸 때 사용하는 모드) : 특권 명령어 실행, 원하는 작업 수행을 위한 자원 접근을 가능하게 하는 모드 cf. kernel 이란? (사전적 의미 - 핵심 , 알맹이 ) : OS 본연의 기능을 OS kernel 이라고 한다. cf. shell 이란 ? ( 사전적 의미 - 껍데기 ) : OS를 둘러싸고 있는 프로그램 → 사용자 모드 : 응용 프로그램이 사용 → 커널모드 : OS 가 사용 → 명령 실행할 때 CPU 가 아무거나 실행하는 것이 아니라..

응용 프프로그램, 운영체제, 컴퓨터 하드웨어(시스템 리소스) 관계 ex. 운영체제는 도서관, 응용프로그램은 시민, 컴퓨터 하드웨어는 책 운영체제 역할 시민(응용프로그램)은 도서관에 원하는 책(자원)을 요청 도서관(OS)은 적절한 책(자원)을 찾아서 시민에게 빌려준다. 시민(응용프로그램)이 기한이 다 되면, 도서관(OS)이 해당 책(자원)을 회수 → OS는 응용프로그램이 요청하면 적절한 자원을 찾아서 빌려줬다가 회수 운영체제 없이 자원을 요청할 방법이 없음. 운영체제는 응용프로그램이 요청하는 메모리를 허가, 분배 운영체제는 응용프로그램이 요청하는 CPU 시간을 제공 운영체제는 응용프로그램이 요청하는 IO Device 사용을 허가/제어 사용자, 응용 프프로그램, 운영체제, 컴퓨터 하드웨어(시스템 리소스) 관..

운영체제의 역할 역할1. 시스템 자원(System Resource) 관리자 시스템 자원(System Resource) = 컴퓨터 하드웨어 운영체제가 하는 주요한 역할은 '컴퓨터 하드웨어를 관리하는 소프트웨어이다.' CPU(중앙처리장치) Memory(DRAM, RAM), I/O Devices(입출력장치 ex. 마우스, 모니터, 키보드, 네트워크) 저장매체(HDD, SDD) 컴퓨터 하드웨어는 스스로 할 수 있는 것이 없다. 그래서 운영체제가 필요하다. CPU : 각 프로그램이 얼마나 CPU 를 사용할지를 결정 할 수 없다. Memory : 각 프로그램이 어느 주소에 저장되어야 하는지, 어느 정도의 메모리 공간을 확보해줘야 하는지 결정할 수 없다. 저장매체(HDD, SSD) : 어떻게, 어디에 저장할 지 결정..