Computer Science/Operating System(20)
-
프로세스와 스레드, 멀티 프로세스와 멀티 스레드
프로그램 프로그램이란 어떤 작업을 위해 실행할 수 있는 파일이다. 프로세스 프로세스란 메모리에 올라와 실행되고 있는 프로그램의 인스턴스(독립적 개체)를 말한다. 운영체제로부터 시스템 자원을 할당받는 작업의 단위이다. 여기서 시스템 자원이란 다음과 같다. CPU 시간 주소 공간 메모리 공간 : Code, Data, Stack, Heap으로 이루어진 구조 Code 코드 자체를 구성하는 메모리 영역 Data 초기화된 데이터 전역변수, 정적 변수, 배열 Stack 임시 메모리 영역 지역변수, 매개변수, 리턴 값 Heap 동적 할당 시 사용 new(), malloc() 기본적으로 프로세스마다 적어도 하나의 스레드를 가진다. 스레드 스레드란 프로세스 안에서 실행되는 여러 흐름 단위를 말한다. 스레드의 경우에는 St..
2023.11.06 -
운영체제(OS, Operating System)란
운영체제(OS, Operating System) 하드웨어와 컴퓨터 시스템의 자원들을 효율적으로 관리하며, 응용 프로그램과 하드웨어 간의 인터페이스로써 다른 응용 프로그램이 유용한 작업을 할 수 있도록 환경을 제공해준다. 즉, 운영체제는 사용자가 컴퓨터를 편리하고 효과적으로 사용할 수 있도록 환경을 제공하는 시스템 소프트웨어이다. 운영체제의 구조 운영체제는 커널과 인터페이스로 구성되어 있다. 커널은 프로세스 관리, 메모리 관리, 저장장치 관리와 같은 운영체제의 핵심적인 기능을 모아놓은 것으로, 운영체제의 성능을 좌우한다. 인터페이스는 사용자의 명령을 전달하고 실행 결과를 사용자에게 알려주는 역할을 한다. 운영체제는 커널과 인터페이스를 분리하여 같은 커널을 사용하더라도 다른 인터페이스를 가질 수 있다. 인터..
2023.11.06