본문 바로가기

OS3

[OS/운영체제] CS 질문 정리 🙋‍♀️ 공부하는 과정에 있습니다. 틀린 부분에 대한 지적은 언제든 환영합니다. CPU 스케줄링 알고리즘 Q. 에이징( Aging)? 우선순위나 어떠한 이유로 자원을 점유하지 못하지만 시간이 지날수록 우선순위가 높아져 결국은 자원을 점유하게 만드는 기법 Q. 기아(Starvation)? 작업을 하기 위해 프로세스가 자원을 할당받아야하는데 우선순위나 어떠한 이유로 자원을 점유하지 못한 상태로 계속 대기하는 것 Q. SJF를 preemptive(선점)한 방식으로 구현하기 위해서는 ready queue에 새로운 프로세스가 도착할 때마다 CPU에게 interrupt를 걸어야하나요? preemptive SJF는 새로운 프로세스가 도착하면, 도착한 프로세스의 CPU 시간(버스트 크기)과 현재 실행 중인 프로세스의 .. 2023. 2. 7.
[OS/운영체제] 운영체제란 운영체제 (Operatting System) 컴퓨터 시스템의 각종 하드웨어적인 자원과 소프트웨어적인 자원을 효율적으로 운영, 관리함으로써 사용자가 시스템을 이용하는데 편리함을 제공하는 시스템 소프트웨어 ✔ 즉, 사용자가 컴퓨터(하드웨어)를 사용하기 위해 필요한 소프트웨어 사용자는 어플리케이션(App)을 통해 컴퓨터에 원하는 작업을 요청 OS 위에서 구동하는 App은 OS에게 해당 요청을 전달 OS에서 해당 작업에 필요한 자원 할당 하드웨어에서 해당 작업 수행할 수 있게 도와줌 운영체제는 사용 분류에 따라 임베디드, 서버, 모바일, 데스크탑으로 분류될 수 있다. 대표적인 운영체제 : Windows, Linux, Mac Os, iOS ... 1. 운영체제의 목적 🚗 주된 목적은 컴퓨터 하드웨어를 관리하는 것.. 2023. 1. 28.
[OS/운영체제] CPU 스케줄링과 알고리즘 CPU 스케줄링 ( CPU Scheduling ) CPU 이용률을 극대화하기 위해서는 멀티프로그래밍(multiprogramming)이 필요하다. 하지만 만약 CPU core가 하나라면 한 번에 하나의 프로세스만 실행 가능할 것이다. 이때 필요한 것이 CPU 스케줄링이다. ✔ 즉, CPU 스케줄링은 언제 어떤 프로세스에 CPU를 할당할지 결정하는 작업이라고 할 수 있다. 1. CPU - I/O Burst Cycle 프로세스 실행은 CPU 실행과 I/O 대기 사이클로 구성된다. CPU burst : 프로그램 실행 중 CPU 연산이 연속적으로 실행되는 상황 I/O Burst : 프로그램 실행 중 I/O 장치의 입출력이 이루어지는 상황 모든 프로그램은 CPU, I/O burst의 연속이지만, 프로그램의 종류에 .. 2023. 1. 24.