멀티 태스킹, 멀티 프로그래밍, 멀티 프로세싱은 컴퓨터 시스템의 성능과 효율성을 향상시키는 데 중요한 역할을 한다. 여러 작업을 동시에 처리할 수 있고, 자원을 효율적으로 활용할 수 있어 작업을 빠르게 처리할 수 있다. 하지만, 이 3가지 개념이 너무나 헷갈리기에 정리하는 글을 써본다. 멀티 태스킹(Multi Tasking) 멀티 태스킹은 하나의 CPU에서 여러 작업(Task)을 동시에 실행되는 것을 의미한다. 지금은 아니지만 옛날에는 컴퓨터에 CPU가 1개 있었고, CPU 안에는 연산하는 시스템이 1개여서 특정 시간에 특정 작업 1개만 실행시킬 수 있었다. 만약 프로그램1을 실행시키면 프로그램1의 작업이 종료될 때까지 프로그램2는 실행시키지 못하고 계속 대기해야하는 것이다. 이 점을 보완하고자 하는 방..
컨텍스트 스위칭(Context Switching) 컨텍스트 스위칭(Context Switching)은 운영체제가 현재 실행 중인 프로세스와 다음으로 실행할 프로세스 사이의 교체를 의미한다. 즉, 한 프로세스가 실행 중인 상태에서 다른 프로세스로 교체하기 위해 현재 프로세스의 상태 정보를 저장하고, 다음 프로세스의 상태 정보를 읽어오는 작업을 수행하는 것이다. 컴퓨터를 하다보면 여러개의 프로그램을 띄워 놓고 작업을 해본적이 있을 것이다. 예를 들면, 한글을 띄워놓고 타이핑을 하다가도 코드를 컴파일 하고, 구글에 검색을 하고 등등.. 여러가지 프로그램을 실행중인 상태에서 하나씩 작업을 할 때, 우리는 각 프로그램에서 작업했던 부분들을 그대로 유지한채 이어서 작업을 진행해 나갈 수 있다. 컨텍스트 스위칭은 이..
CPU(Central Processing Unit)는 컴퓨터의 핵심적인 처리 장치로, 명령어를 실행하고 데이터를 처리하는 역할을 담당한다. CPU는 프로세서 내부에 다양한 하드웨어 구성 요소와 기능을 포함하고 있다. 그리고 운영체제는 CPU와 하드웨어들의 자원을 효율적으로 관리해서 응용 프로그램이 원활하게 동작되도록 한다. 운영체제는 프로세스들을 처리하기 위해 CPU의 기능과 시스템 자원에 접근할 수 있어야 한다. 하지만 컴퓨터의 주요한 자원에 무분별하게 접근할 수 있는 것은 아니다. 운영체제는 접근할 수 있는 권한이 부여된 요청만 CPU에 접근을 허락한다. 이 권한은 4가지로 분류되며, 접근 권한들을 분류하여 나눈 것을 CPU Protection Ring이라고 한다. CPU Protection Ring..
하드웨어(Hardware) 하드웨어(Hardware)는 컴퓨터 시스템을 구성하는 물리적인 부품이나 장치이다. 일반적으로 하드웨어는 실체가 있고 사람이 만질 수 있으며 컴퓨터를 작동시키는 데 쓰인다고 생각하면 된다. 하드웨어는 컴퓨터의 동작과 기능을 수행하는 데 필요한 전자적인 회로, 기계적인 부품, 주변 장치 등으로 구성된다. 그리고 하드웨어들은 데이터 처리, 데이터 저장, 표시, 통신의 기능을 수행한다. 하드웨어 종류 - CPU(중앙 처리 장치, Central Processing Unit) - 메모리(Memory) - 저장 장치(Storage Device) - 입력 장치(Input Device) - 출력 장치(Output Device) 등등.. 소프트웨어(Software) 소프트웨어(Software)는..