본문 바로가기
반응형

운영체제6

[OS] 현대 운영체제는 어떤 프로세스 스케줄링을 사용하나? 현대 운영체제(예: Windows, macOS, Linux)는 단순한 스케줄링 알고리즘(SJF, FCFS, RR 등)을 그대로 쓰지 않고, 이들을 혼합하거나 개선한 복합적 스케줄러를 사용합니다.즉, 이론적인 알고리즘을 현실에 맞게 최적화한 것입니다.🪟 Windows: Multilevel Feedback Queue (MLFQ) 기반✅ 특징 요약:선점형 스케줄링우선순위 기반 + 라운드로빈 방식의 혼합프로세스의 행동에 따라 우선순위를 동적으로 조정I/O 중심 프로세스는 빠르게 응답할 수 있게 높은 우선순위CPU 중심 프로세스는 점차 낮은 우선순위로 밀려남📌 사용하는 기술들:Dynamic Priority Adjustment (동적 우선순위 조정)Quantum (타임 슬라이스): 프로세스 우선순위에 따라 퀀텀.. 2025. 8. 5.
[OS] 프로세스 스케줄링(대기시간, 반환시간) 선점형 스케줄링하나의 프로세스가 CPU를 차지하고 있을 때, 우선순위가 높은 다른 프로세스가 현재 프로세스를 중단시키고 CPU를 점유하는 스케줄링 방식비교적 응답이 빠르다는 장점이 있지만, 처리 시간을 예측하기 힘들고 높은 우선순위 프로세스들이 계속 들어오는 경우 오버헤드를 초래실시간 응답환경, Deadline 응답환경 등 우선순위가 높은 프로세스를 빠르게 처리해야 할 경우 등에 유용- 라운드로빈(Round Robin, RR) 스케줄링예시1)대기시간(CPU 사용 없이 즉, 실행 안 하고 큐에 대기한 총 시간)=완료시점-도착시각(Arrival Time)-실행시각(Burst Time) 예)개념 이해 버전:P1 큐대기없었음 따라서 0P2 1에 도착해서 4까지 대기(4-1) +P3,4 실행 시간 대기(16-8).. 2025. 8. 5.
[컴퓨터구조] 컴퓨터 본체로 알아보는 컴퓨터 구조와 부팅 과정 본체 구성 요소메인보드(마더보드)마더보드(matherboard)라고도 불리며 주회로가 내장된 보드CPU나 램과 같은 시스템이 작동되기 위한 주요 부품 장착과 주변 장치를 연결할 수 있는 인터페이스를 제공하는 인쇄회로기판(PCB)을 의미컴퓨터 전원 공급 장치로부터 전기를 받아 CPU, 칩셋, 메인 메모리, 확장 카드에 이를 내보내는 전원 커넥터 및 회로를 포함여기위에 CPU, RAM등이 연결되어 작동한다.중앙 처리 장치(CPU, 휘발성)명령어의 해석과 자료의 연산, 비교 등의 처리를 제어하는 컴퓨터 시스템의 핵심 장치다양한 입력 장치로부터 명령을 받아 처리한 후, 그 결과를 출력 장치로 보내는 일련의 과정을 제어하고 조정하는 일을 수행제어장치, 연산장치, 레지스터 세 부분으로 구성됨사람의 뇌와 같은 역할을.. 2025. 1. 21.
[OS] 시스템 콜(System Call) 시스템 콜(System Call)은 운영체제의 커널이 제공하는 서비스에 응용 프로그램이 접근할 수 있도록 하는 인터페이스입니다. 응용 프로그램이 파일 시스템 접근, 네트워크 통신, 메모리 관리 등의 시스템 리소스를 사용하고자 할 때, 직접적으로 하드웨어를 조작하는 대신 시스템 콜을 통해 운영체제에 요청을 하게 됩니다. 이를 통해 운영체제는 안전하고 효율적으로 시스템 리소스를 관리할 수 있습니다.시스템 콜의 주요 기능프로세스 관리: 프로세스의 생성, 실행, 종료 등을 관리합니다. 예를 들어, fork(), exec(), exit() 등의 시스템 콜이 이에 해당합니다.파일 조작: 파일 생성, 읽기, 쓰기, 삭제 등 파일 시스템과 관련된 작업을 수행합니다. open(), read(), write(), clos.. 2024. 8. 24.
[OS] 문맥 교환(Context Switch), PCB 문맥 교환(Context Switch)이란?문맥 교환은 하나의 프로세스가 CPU를 사용 중인 상태에서 다른 프로세스가 CPU를 사용하도록 하기 위해, 이전의 프로세스의 상태(문맥context : PC, 레지스터등의 모든 내용 통튼 것)을 보관하고 새로운 프로세스의 상태를 적재하는 작업을 말합니다. 여러 프로세스가 끊임없이 빠르게 번갈아가며 실행되는 원리  이때 한 프로세스의 문맥은 그 프로세스의 프로세스 제어 블록(PCB)에 기록되어 있습니다.PCB(Process Control Block)란?운영체제가 시스템 내의 프로세스들을 관리하기 위해 프로세스마다 유지하는 정보들을 담는 커널 내 자료구조로 커널 영역에 존재합니다. 따라서 메모리내의 커널영역에 있는 PCB를 보고 운영체제는 프로세스를 관리합니다. 사.. 2024. 8. 24.
[OS] 프로세스 프로그램과 프로세스프로그램과 프로세스는 컴퓨터 시스템에서 자주 사용되는 용어이지만, 두 용어는 서로 다른 개념을 나타냅니다. 이 두 용어의 차이와 프로그램이 프로세스가 되기까지의 과정을 아래에서 설명하겠습니다.프로그램(Program): 프로그램은 저장 장치에 저장되어 있는, 실행 가능한 코드의 정적인 집합입니다. 프로그램은 디스크와 같은 비휘발성 메모리에 저장되며, 사용자가 요청할 때까지 실행되지 않습니다. 프로그램은 소프트웨어 개발자에 의해 작성되고, 컴퓨터에서 실행될 수 있는 명령어들과 데이터를 포함합니다.프로세스(Process): 프로세스는 실행 중인 프로그램의 인스턴스입니다. 프로세스는 운영체제에 의해 할당된 메모리 공간과 시스템 자원을 사용하며, 동적인 상태를 유지합니다. 프로세스는 프로그램 카.. 2024. 8. 24.
반응형