💻 컴퓨터공학/운영체제
CPU를 효율적으로 사용하기 위한 스케줄링
CPU를 효율적으로 사용하기 위한 스케줄링
2021.10.09스케줄링(Scheduling) 🔥 프로세스는 생성, 준비, 실행, 대기, 종료의 5가지 상태(5-State)를 바탕으로 실행됩니다. 그리고 프로세스는 각 상태를 프로세스 자신이 바꾸는 것이 아닌, CPU 스케줄러라는 것에 의해서 관리되고 전환됩니다. 이렇게 스케줄러가 프로세스에 CPU를 할당하는 작업을 스케줄링이라 하며, 프로세스의 현재 상황을 보면서 CPU를 어떻게 할당해야 시스템 자원을 효율적으로 사용할 수 있을지 결정합니다. 스케줄링은 프로세스 관리 범주에 따라 다음과 같이 나뉩니다. 고수준: 시스템 자원을 할당받기 위한 프로세스의 수를 결정하는 단계 중간수준: 시스템 상황에 따라 실행 중인 프로세스를 중지하거나 활성화하는 단계 저수준: 준비 중인 프로세스에게 CPU를 할당하거나, 할당된 프로세스를..
프로세스와 쓰레드의 차이
프로세스와 쓰레드의 차이
2021.10.03프로세스 (Process) 🔥 프로그램이 실행되어 메모리에 올라가면 이를 프로세스라 합니다. 각 프로세스는 [ 코드 ・ 데이터 ・ 스택 ・ 힙 ] 영역으로 구성되며, 서로 독립적인 관계입니다. 또한 프로그램이 메모리에 올라가 프로세스가 되기 위해서는 먼저 프로세스 제어 블록(PCB)이라는 것이 생성되어야 합니다. 이 블록은 프로세스가 실행되기 위해 필요한 정보들을 담고 있는 자료구조이며, 프로세스 구분자, 메모리 관리 정보, 각종 레지스터 정보 등이 담겨 있습니다. 프로세스가 동작을 마무리하면, 메모리에서 내려감과 동시에 프로세스 제어 블록도 폐기됩니다. 5-State Process Model 운영체제는 프로세스를 효율적으로 실행하기 위해 5가지 상태 프로세스 모델을 사용합니다. 1. 생성 상태 (Cre..
기본적인 컴퓨터 구조
기본적인 컴퓨터 구조
2021.10.01🖥 폰 노이만 구조 오늘날의 컴퓨터는 대부분 미국의 수학자인 폰 노이만이 고안한 폰 노이만 구조를 따르고 있습니다. 이 구조가 등장하기 전에는 컴퓨터를 사용할 때마다 전선을 새롭게 연결하여 회로를 구성해야 했습니다. 하지만 폰 노이만은 이런 과정이 너무나 비효율적이라 생각했고, 하드웨어는 그대로 두면서 작업을 위한 프로그램만 메모리에 올려 사용하는 방식을 생각했습니다. 이러한 생각은 결과적으로 컴퓨터 이용을 간편하게 만들어 주었고, 운영체제를 비롯한 모든 프로그램이 메모리를 이용하기 때문에 오늘날 프로그래밍 또한 가능해졌습니다. 폰 노이만 구조는 운영체제와 관련된 내용을 이해할 때, 정말 중요한 바탕이 되니 꼭 이해하는 것이 좋습니다. 🤔 하드웨어 알아보기 CPU CPU는 명령어를 해석하여 실행하는 장치..
운영체제(OS) 개요
운영체제(OS) 개요
2021.09.28컴퓨터를 잘 모르는 분들도 운영체제(OS: Operating System)라는 용어는 들어본 적이 있으실 거예요. 운영체제는 컴퓨터를 켤 때 가장 먼저 실행되는 소프트웨어로, 오늘날 많은 사람들이 이용하고 있는 Windows와 Mac OS, 그리고 Linux 등이 해당됩니다. 또한 운영체제는 컴퓨터에만 포함되는 것이 아닌, 기본적으로 스마트폰이나 스마트 와치, 자동차 네비게이션 등에도 들어가 있습니다. 이처럼 대부분의 기기들은 모두 운영체제를 포함하고 있는데, 운영체제는 어떤 이유에서 필요한 걸까요? 🤔 대표적으로 아래 4가지의 이유를 들 수 있습니다. 1. 효율성 우리는 컴퓨터를 사용할 때 한 가지 작업만 하는 경우는 그다지 많지 않습니다. 웹 서핑을 하면서 음악도 듣고, 중간에 지인에게 연락이 오면 ..