반응형

CS 3

뮤텍스(Mutex), 스핀락(SpinLock), 세마포어(Semaphore)

다중프로그래밍으로 여러 작업을 동시에 실행가능한 환경이 됐다. 이러한 환경은 탁월한 성능 및 메모리를 자랑한다. 하지만, 그에 대한 대가로 공유자원을 여러 프로세스, 혹은 스레드에서 사용하게 되어 데드락(교착 상태)이 자주 발생하게 되는`동기화 문제`가 자주 발생하게 된다. OS에서의 데드락을 발생시키는 원인은 상호배제, 점유대기, 비선점, 순환대기가 있는데, 이 4가지가 모두 지켜지지 않으면 데드락이 발생한다. 이번에 포스팅할 뮤텍스, 스핀락, 세마포어 방식은 위 4가지 조건 중 상호배제를 준수하여 데드락이 발생되지 않도록 하는 방법이다. 뮤텍스(Mutex) 정의 자체는 여러 스레드를 실행하는 환경에서 자원 접근에 대한 제한을 위한 메커니즘이다. 하지만 이 정의로는 완벽하게 이해하기 어렵다. 아래 그림..

CS/운영체제 2022.10.19

[매트 스터디] 2주차 HTTP 기본 & HTTP 메서드

우아한테크코스 레벨2 에서 매트가 주관한 스터디로, 인프런 김영한님의 강의 모든 개발자를 위한 HTTP 웹 기본 지식 스터디를 진행중이다. 이 포스팅에서는 스터디에 PR을 날릴 내용과 함께 스터디 시간에 얻어간 내용을 적을 예정이다. 1. HTTP 기본 우리는 대부분의 통신을 Http에 넣어서 통신하고 있다. Html, Text, Json, Xml 등. 데이터를 주고받을 때에 Http를 사용하기 때문에 개발자라면 Http 지식은 기본 교양으로 가지고 있어야 한다. 현재 우리가 가장 많이 사용하고 있는 것은 Http/1.1 버전이다. Http/2, Http/3 버전이 있음에도 Http/1.1 버전을 사용하는 이유는 우리가 필요로 하는 기본 스펙이 충분히 존재하기 때문이다. Http/2, Http/3 버전은..

CS/Http, Network 2022.05.09

[매트 스터디] 1주차 인터넷 네트워크 & URI와 웹 브라우저 요청 흐름

우아한테크코스 레벨2 에서 매트가 주관한 스터디로, 모든 개발자를 위한 HTTP 웹 기본 지식 스터디를 진행중이다. 이 포스팅에서는 스터디에 PR을 날릴 내용과 함께 스터디 시간에 얻어간 내용을 적을 예정이다. PR에 적을 내용은 아래와 같다. 인프런 강의를 듣고 요약한 내용 인프런 강의 QNA를 보고 공부한 내용 책/구글링을 통해 추가적으로 공부한 내용 매주 주말에 작성할 예정이며, 월요일에 스터디를 진행하고 추가로 내용을 더 기록할 예정이다. 1. 인터넷 네트워크 우리는 인터넷 네트워크를 통해 수많은 통신을 하고 있다. 당장 모르는 내용이 생겨 구글링을 할 때도, 새로운 맛집을 찾기 위해 네이버 지도를 킬 때에도 우리는 항상 네트워크를 연결하여 요청을 보내고 응답을 받고 있다. 이번 시간에는 네트워크..

CS/Http, Network 2022.04.30
1
반응형