CS 공부 - 운영체제 2

[Operating System] 프로세스와 스레드

📌 프로세스와 스레드 프로세스 : 프로그램을 메모리 상에서 실행중인 작업, 각각 별도의 주소공간 할당(독립적) 스레드 : 프로세스 안에서 실행되는 여러 흐름 단위, stack만 따로 할당 받고 나머지 영역은 공유 - 하나의 프로세스가 생성될 때, 기본적으로 하나의 스레드 같이 생성됨(Main Thread) ✔ 프로세스의 구조 Code : 코드 자체를 구성하는 메모리 영역(프로그램 명령) Data : 전역변수, 정적변수, 배열 등 Stack : 지역변수, 매개변수, 복귀 주소와 로컬 변수와 같은 임시 자료, 리턴 값(임시 메모리 영역) Heap : 프로세스 실행 중에 동적으로 할당되는 메모리 ✔ 프로세스 제어 블록(Process Control Block, PCB) 개념 - 특정 프로세스에 대한 중요한 정보..

[Operating System] 운영 체제와 하드웨어

📌 운영 체제(OS, Operating System) [개념] - 하드웨어를 관리, 컴퓨터 시스템의 자원 관리, 응용 프로그램과 하드웨어 간의 인터페이스 - 사용자가 컴퓨터를 편리하고 효과적으로 사용할 수 있는 환경을 제공하는 시스템 소프트웨어 - 운영체제가 프로그램들을 실행하는 메인 프로그램, OS도 하나의 프로그램 - 프로그램 실행에는 하드웨어의 자원이 필요함, 따라서 하드웨어 자원을 사용해서 응용 프로그램을 관리 - 네트워크 통신, 입출력 장치 등 컴퓨터 사용에 필요한 것들을 관리 - Window, Linux, UNIX, MS-DOS 등이 있음 - 개발자가 짠 코드를 바탕으로 프로그램이 만들어짐 → 코드의 집합이 컴퓨터가 이해할 수 있는 코드로 컴파일 된 것을 프로그램이라고 함 → 프로그램을 실행하..