세마포어(Semaphore)와 뮤텍스(Mutex) 동기화 도구인 세마포어(Semaphore)와 뮤텍스(Mutex) 공유된 자원에 여러 프로세스가 동시에 접근하면서 문제가 발생할 수 있다. 이러한 문제를 해결하기 위하여 공유된 자원의 데이터는 한 번에 하나의 프로세스만 접근할 수 있도록 제한을 두는 동기화 방식을 취해야한다. 동기화 도구에는 대표적으로 세마포어(Semaphore)와 뮤텍스(Mutex)가 있으며 이 두 방식은 모두 공유된 자원의 데이터를 여러 프로세스 또는 스레드가 접근하는 것을 막는 역할을 한다. 임계 영역(Critical Section) 멀티 프로세스 환경에서 둘 이상의 프로세스가 동시에 접근해서는 안되는 공유자원의 코드 영역이다. 즉 여러 프로세스가 동일한 자원을 동시에 참조하여 값이 ..
PCB(Process Control Block) Process Metadata 프로세스는 컴퓨터에서 연속적으로 실행되고 있는 동적인 상태의 컴퓨터 프로그램, 즉 하나의 작업 단위이다. 프로세스는 여러가지 특징을 가지고 있는데 이러한 특징을 Process Metadata 라고 한다. 이 메타데이터는 프로세스가 생성되면 PCB(Process Control Block)에 저장된다. 이러한 메타 데이터를 통해 CPU는 각 프로세스를 구분할 수 있고, 이를 통해 프로세스가 여러 개일 때 전부 관리할 수 있다. 이렇게 프로세스 여러 개를 CPU 스케쥴링을 통해 관리하는 것을 Process Management 라고 한다. ※Process Metadata - process-id : 새로운 프로세스에 시스템이 할당해주는..
프로세스(Process) ? - 프로세스란 실행 중에 있는 프로그램(Program)을 의미한다. - 스케줄링의 대상이 되는 작업(Task)와 같은 의미로 쓰인다. - 프로세스 내부에는 최소 하나의 스레드(Thread)를 가지고 있는데, 실제로는 스레드 단위로 스케줄링을 한다. - 하드디스크에 있는 프로그램을 실행하면, 실행을 위해서 메모리 할당이 이루어지고, 할당된 메모리 공간으로 바이너리 코드가 올라 가게 된다. 이 순간부터 프로세스라 부른다. 프로세스 상태(Process state) 1. Running state CPU에 의해서 실행되고 있는 상태 2. Ready State CPU 할당을 받으면 바로 Running State로 들어가 실행할 수 있는 상태(CPU를 사용하지 않고 있다.) 3. Bloc..
운영체제(OS; Operating System)란 컴퓨터 시스템은 대개 네 가지 구성요소인 하드웨어, 운영체제, 응용 프로그램 및 사용자로 구분할 수 있다. 하드웨어는 중앙 처리장치(CPU), 메모리 및 입출력(I/O) 장치로 구성되어, 기본 계산용 자원을 제공한다. 응용 프로그램인 워드 프로세서, 스프레드시트, 컴파일러, 웹 브라우저 등은 사용자의 계산 문제를 해결하기 위해 이들 자원이 어떻게 사용될지를 정의한다. 운영체제는 다양한 사용자를 위해 다양한 응용 프로그램 간의 하드웨어 사용을 제어하고 조정한다. 즉, 하드웨어를 관리하고 컴퓨터 시스템의 자원들을 효율적으로 관리하며, 응용 프로그램과 하드웨어 간의 인터페이스로써 다른 응용 프로그램이 유용한 작업을 할 수 있도록 환경을 제공해준다. 운영체제의 ..
- Total
- Today
- Yesterday
- SW
- 이차 리스트
- 보험
- 자료구조
- 완전탐색
- CS 스터디
- 프로그래머스강의
- It
- CS.
- 자료구조와알고리즘 23강
- 데이터베이스
- 파이썬
- 네트워크
- 정렬
- 리스트2
- 운영체제
- 연결리스트활용
- CS
- 프로세스 주소공간
- 리스트함축
- 알고리즘
- 코드업 기초
- 리스트
- 자바
- 스터디
- Greedy sort
- https
- 프로그래머스
- 리스트 복사
- 이진탐색
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |