본문 바로가기
728x90

Computer Science/OS10

[OS] 병행프로세스 안녕하세요. 오늘은 병행 프로세스에 대하여 알아보겠습니다. 우리는 피씨를 이용할 때 음악을 들으며 문서작업을 하기도 하고 동시에 메신저를 사용하기도 합니다. 이러한 여러 작업, 즉 프로세스들을 운영체제는 단순하게 순차처리하는 것이 아닌 병행으로 처리해야 합니다. 특히 병행 프로세스가 서로 유기적으로 상호작용하며 동작하는 경우에는 다양한 문제가 발생할 수 있습니다. 해서 이번 포스팅에서는 병행프로세스의 개념에 대해 간단하게 알아보고 다음 포스팅에서는 병행 프로세스에서 발생할 수 있는 문제와 해결방안에 대하여 알아보겠습니다. 병행프로세스 병행성(concurrency)은 여러 개의 프로세스 혹은 스레드가 동시에 수행되는 시스템의 특성을 말하는데요. 한마디로 동시에 여러개의 프로세스가 수행되는 것입니다. 이렇게.. 2023. 4. 17.
[OS] 프로세스 스케줄링 알고리즘 지난 포스팅에서 프로세스 스케줄링의 개념에 대해 알아보았는데요. 이번 포스팅에서는 프로세스 스케줄링의 알고리즘에 대하여 알아보겠습니다. 스케줄링 알고리즘 스케줄링 알고리즘의 종류는 아래와 같습니다. FCFS SJF SRT RR HRN 다단계피드백큐 크게 선점과 비선점으로 구분해 보겠습니다. 선점알고리즘 RR 다단계피드백큐 SRT 비선점알고리즘 FCFS SJF HRN 각각의 알고리즘의 개념과 장단점에 대해 알아보겠습니다. FCFS(First Come First Served) 이름과 같이 준비 큐에 도착한 순서에 따라 디스패치하는 비선점 알고리즘입니다. 장점 가장 간단한 스케줄링 기법입니다. 단점 긴 프로세스가 먼저 들어온 경우 짧은 프로세스가 긴 프로세스의 종료를 기다려야 하는 경우가 발생할 수 있습니다... 2023. 3. 15.
[OS] 프로세스 스케줄링 스케줄링이란 여러 가지 작업의 처리순서를 결정하는 것을 말합니다. 이러한 스케줄링은 디스크 스케줄링, 프로세스 스케줄링 등이 있는데요. 오늘은 프로세스 스케줄링에 대해서 알아보겠습니다. 프로세스 스케줄링? 주어진 프로세스가 여러개인 경우에 프로세스 처리 순서를 결정하는 것을 뜻합니다. 스케줄링의 단계 작게는 두가지 크게는 세 가지로 나뉘게 됩니다. 상위단계스케줄링 하위단계스케줄링 중간단계 스케줄링 상위단계 스케줄링 작업들이 작업큐에 들어올 때 어떤 작업을 프로세스로 만들 것인가를 결정하는 단계입니다. 작업을 프로세스로만드는 작업과 관계되는 것인 만큼 시스템 자원을 효율적으로 이용할 수 있도록 합니다. 만약 CPU가 여유롭다면 CPU 작업을 먼저 프로세스로 만들어주는 등 요청 작업을 상황에 맞춰 스케줄링합.. 2023. 3. 13.
[OS] 프로세스 관리와 쓰레드 프로세스와 운영체제 운영체제, 다른 말로 프로세스 관리자는 이름 그대로 프로세스를 관리하는 역할을 합니다. 아래 세가지 역할을 수행합니다. 프로세스의 생성 및 종료 프로세스의 실행을 위한 스케줄링 작업 프로세스의 상태 관리 프로세스의 생성과 종료 프로세스의 생성 프로세스 생성 방법은 크게 두 가지입니다. 1. 사용자가 프로그램을 직접 실행 2. 한 프로세스가 다른 프로세스 생성 (프로세스 생성 시스템 호출 이용) 시스템 호출은 사용자모드에서 자원 할당이 필요하여 커널모드로 변경 시 사용되는 호출이라고 설명한 적이 있습니다. 두 번째 상황에서 시스템 호출을 하는 프로세스를 부모 프로세스, 시스템 호출을 통해 새로 만들어진 프로세스를 자식 프로세스라고 합니다. 부모프로세스도 부모프로세스가 존재할 수 있습니다.. 2023. 3. 5.
728x90