[운영체제] 프로세스 관리 - 프로세스간 통신과 자원공유의 문제점
프로세스 간의 협력, 분산 처리를 위해 멀티 프로세싱을 이용한다. 하지만 각각의 프로세스가 자신만의 메모리 공간을 가지고 있기 때문에 직접적으로 데이터를 공유할 수 없다. 따라서 자원을 공유하고 통신하기 위한 방법이 필요하다. 이러한 프로세스간 통신을 위한 방법을 IPC(Inter...
프로세스 간의 협력, 분산 처리를 위해 멀티 프로세싱을 이용한다. 하지만 각각의 프로세스가 자신만의 메모리 공간을 가지고 있기 때문에 직접적으로 데이터를 공유할 수 없다. 따라서 자원을 공유하고 통신하기 위한 방법이 필요하다. 이러한 프로세스간 통신을 위한 방법을 IPC(Inter...
운영체제는 다수의 프로세스를 효율적으로 실행하기 위해 프로세스의 생명주기를 제어하는 프로세스 스케줄링 기능을 수행한다. 프로세스 스케줄링은 역할별로 단계를 나누어 new, ready, running, wait, suspend 상태로의 이전을 관리한다.
Stack Stack(스택) 자료구조는 이름 그대로 쌓아올리다와 같은 의미이다. 예를 들어, 책상위에 쌓인 책과 비슷한 구조라고 할 수 있다. 밑에서 책을 차곡차곡 올리고 뺄때는 위에서부터 빼낸다. 이러한 구조를 후입선출(LIFO, Last-In-First-Out) 구조라고 부른다...
Array와 List는 다수의 데이터를 저장하고 조작하는 기본적인 자료구조이자 다른 자료구조들을 구현하기 위해 중요한 자료구조이다.
우리가 컴퓨터를 사용할때 브라우저, 카카오톡 등 여러가지 응용 프로그램을 사용한다. 각 프로그램들은 실행되기 위해서 메모리 공간과 자원을 할당받아야하고 실행된 후에도 지속적으로 관리되어야 하는데 이와 같은 과정을 운영체제가 처리해준다. 즉, 운영체제는 메모리와 CPU를 사용하여 프...