
※ 세마포어든 모니터든 이것이 프로세스 수준에서 일어나는 것인지 Thread 수준에서 일어나는 것인지 깊게 신경쓰지 말자 ※ 우선은 세마포어와 모니터 그 자체의 원리를 이해하는 것에 초점을 맞추자 - 모니터는 세마포어의 단점을 해결한 상호 배제 메커니즘이다. - 모니터는 운영체제(OS)에서 처리하는게 아니라 java, C# 같은 프로그래밍 언어 차원에서 지원하는 방법이다. - java 코드를 예시로 모니터에 대해 알아보자 public class Health { private int health = 100; synchronized void increase(int amount) { health += amount; } synchronized void decrease(int amount) { health -= ..

- 아래의 글을 먼저 읽어본 후 세마포어 글을 읽어보자 2023.05.09 - [운영체제] - #20 프로세스 동기화 - 공유자원과 임계구역● 세마포어 예시 - 상호 배제(Mutual Exclusion) 메커니즘의 한 가지인 세마포어에 대해 알아보자 ex) 세마포어 예시 - 회사에서 직원들은 맡은 업무에 대한 문서 작업을 마치면 프린터로 결과물을 출력한다. - 이때 프린터는 네트워크를 통해 여러 PC와 연결돼있는 상태이다. 즉, (프린터 = 공유자원)이다.- 직원A와 직원B가 동시에 프린터 출력을 한다고 할 때 직원A의 컴퓨터와 직원B의 컴퓨터는 프린터를 차지하기 위해서 경쟁 조건(Rase Condition)이 되버린다.(서로 내가 먼저 출력하겠다고 하는 상태) - 이러면 직원 A의 결과물과 직원B의 결..
- Total
- Today
- Yesterday
- SQL
- Spring Boot
- 코테
- 빅데이터
- Phaser
- DART
- db
- spring
- MySQL
- Advanced Stream
- 빅데이터 분석기사
- 운영체제
- nosql
- node.js
- Stream
- MongoDB
- Java8
- git
- 자료구조
- java
- 메모리
- 프로세스
- 알고리즘
- jpa
- 코딩테스트
- Phaser3
- 프로그래머스
- API
- SpringBoot
- OS
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |