티스토리 뷰

TIL

[OS] 가상 메모리, 동기와 비동기

Redirect 2022. 8. 15. 00:06
728x90

스케줄러

한정된 자원을 효율적으로 사용하기 위해 입력된 프로세스를 어떤 순서로 실행시킬지 정하는 역할을 합니다.

728x90

 

동기와 비동기

동기는 데이터를 주고 받을 때 서로 주고 받는 순서가 같다는 것을 의미하고 비동기는 그렇지 않다는 것을 의미합니다.

동기식 작업은 작업을 요청하고 그것이 응답될 때 까지 기다리다가 다음 작업을 합니다.

 

 

가상 메모리

가상 메모리란 프로세스 전체가 메모리에 올라오지 않더라도 실행이 가능하도록 하는 기법입니다.

 

 

캐시의 지역성

캐시는 주기억장치에서 자주 사용하는 프로그램과 데이터를 저장해두어 속도를 빠르게 하는 메모리를 의미하며 이에 따라 가까운 미래에 같은 주소에 있는 특정 데이터를 자주 참조할 것 같은 경우를 시간적 지역성이라 하고 데이터 조회 시 데이터가 순서대로 접근 되는 경우를 공간적 지역성이라고 합니다.

 

 

교착상태(데드락, Deadlock)의 개념과 조건

교착상태란 둘 이상의 스레드가 점유하고 있는 서로 다른 자원을 서로 기다릴 때 무한 대기에 빠지게 되는 상황을 말합니다.

상호배제, 점유 대기, 비선점, 순환 대기 이 네 가지 조건이 동시에 성립할 때 데드락이 발생합니다.

상호 배제는 동시에 한 thread만 자원을 점유할 수 있는 상황이고, 점유 대기는 thread가 자원을 보유한 상태에서 다른 thread가 보유한 자원을 추가적으로 기다리는 상황입니다. 또 비선점은 다른 thread가 사용 중인 자원을 강제로 선점할 수 없는 상황을 뜻하고, 순환 대기는 대기 중인 thread들이 순환 형태로 자원을 대기하는 상황을 말합니다.

 

 

 

728x90

'TIL' 카테고리의 다른 글

[Java] StringBuffer  (0) 2024.06.21
[OS] 프로세스와 스레드, Thread-safe  (0) 2022.08.13
[Network] DNS, RESTful  (0) 2022.08.02
[Network] Socket, PDU  (0) 2022.08.01
[Network] HTTP/HTTPS와 CORS  (0) 2022.07.31
300x250
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크