운영체제
[운영체제] 동시성, 병렬성
[운영체제] 동시성, 병렬성
2024.04.12동시성과 병렬성 동시성 : 특정한 순서 없이 겹치는 기간에 시작, 실행 및 완료되는 여러 작업에 관한 것을 의미합니다. 병렬성 : 멀티코어 프로세서에서 동시에 실행되는 동일한 작업의 여러 작업에 관한 것을 의미합니다. 동시성 CPU가 한 번에 많은 일을 처리하는 것에 중점을 두고 있습니다. 즉 많은 작업들을 아주 빠른 시간으로 교체하면서 전체 작업을 처리합니다. 작업의 처리를 빠르게 하기 위한 목적이 아닌 CPU를 효율적으로 사용하는 것에 중점을 둡니다. 스레드가 작업을 처리하다가 I/O 블록에 걸렸을 경우 CPU는 다른 스레드로 전환해서 작업을 진행합니다. I/O에 대한 작업은 CPU 담당이 아니기 때문에 I/O 블록으로 인해 대기하는 것보다는 다른 스레드로 전환해서 작업을 진행하는 것이 효율적입니다...
[운영체제] 프로세스 & 스레드에 대하여
[운영체제] 프로세스 & 스레드에 대하여
2024.03.26프로세스 운영체제에 의해 파일 시스템에 설치되어 있는 파일을 프로그램이라고 부릅니다. 프로세스는 프로그램의 실제 실행의 의미하며 프로그램 파일을 실행함으로써 프로그램 데이터들이 메모리에 올라와 CPU를 할당받고 명령을 수행하고 있는 상태 프로세스는 운영체제로부터 자원을 할당받은 최소 작업 단위 운영체제는 프로세마다 각각 독립된 메모리 영역을 Code/Data/Heap/Stack의 형식으로 할당합니다. 독립된 메모리 영역을 할당해 주기 때문에 프로세스 간 영향을 받지 않고 독립적인 작업을 수행할 수 있습니다. 기본적으로 다른 프로세스의 변수나 자료에 접근할 수 없고 IPC나 공유메모리 등의 통신기법들을 사용해서 프로세스 간 통신해야 합니다. 스레드 스레드는 프로세스가 운영체제로부터 할당받은 자원을 이용하는..