728x90
- 프로세스 동기화란?
- 데드락
- 임계구역
- 세마포어
- 루텍스락
- 메모리 관리 전략
- 메모리 관리 배경
- 메모리 용량이 증가함에 따라 프로그램의 크기 또한 계속 증가하고 있기 떄문에 메모리는 언제나 부족
- 제한된 물리 메모리의 효율적인 사용과 메모리 참조 방식을 제공하기 위한 전략
해결책으로 나온 방법 중 일부가 paging, segmentation입니다 - Paging
프로세스가 저장될 때 논리메모리로 공간관리가 되어 물리메모리에 순서 상관없이 프레임에 매핑된다.
문제점 : 내부 단편화가 심해진다. - Segmentation
페이징처럼 같은 논리/물리 메모리 크기로 넣는게 아니라 서로 다른 논리적 단위 세그먼트로 분할하여서 넣는다.
문제점 : 중간에 프로세스가 빠지면 구멍 뚫리면서 외부 단편화가 일어남 - https://velog.io/@sinichy7/%EB%A9%94%EB%AA%A8%EB%A6%AC-%EA%B4%80%EB%A6%AC-%EC%A0%84%EB%9E%B5
- 메모리 관리 배경
- 가상 메모리
- 가상 메모리 : 메인 메모리의 영역을 하드디스크까지 확장하는 기법
- 배경
실행되는 코드의 전부를 물리 메모리에 존재시켜야 했고, 메모리 용량보다 큰 프로그램은 실행시킬 수 없었다.
또한 멀티 프로세스상에서 여러 프로그램을 동시에 메모리에 올리기에는 용량의 한계와,
페이지 교체등의 성능 이슈가 발생했기 때문에 이를 해결하기 위해 가상 메모리 기법이 나오게 되었습니다. - 가상 메모리가 하는 일
가상 메모리는 시스템 라이브러리가 여러 프로세스들 사이에 공유될 수 있도록 합니다.
프로세스들이 메모리를 공유하는 것을 가능하게 하고, 프로세스들은 공유 메모리를 통해 통신할 수 있게 됩니다 - Demand Paging (요구 페이징)
프로그램 실행 시작 시에 프로그램 전체를 디스크에서 물리 메모리에 적재하는 대신,
초기에 필요한 것들만 적재하는 전략을 요구 페이징이라고 합니다 - 페이지 교체 알고리즘
프로세스의 동작에 필요한 페이지를 요청하는 과정에서 page fault가 발생하게 되면,
원하는 페이지를 보조저장장치에서 가져오게 되는 것을 의미합니다. - https://imbf.github.io/interview/2020/11/26/NAVER-Interview-Preparation-1.html
- 캐시의 지역성
- 캐시 메모리 :
캐시 메모리란 속도가 빠른 장치와 느린 장치간의 속도차에 따른 병목 현상을 줄이기 위한 범용 메모리입니다 - Locality :
기억 장치 내의 정보를 균일하게 Access 하는 것이 아닌 어느 한 순간에 특정 부분을 집중적으로 참조하는 특성입니다 - Caching line :
캐시는 프로세스 가까이에 위치하면서 빈번하게 사용되는 데이터를 저장하는 장소입니다
캐시에 데이터를 저장할 때 특정 자료구조를 사용해서 묶음으로 저장하는 것을 캐싱라인이라고 합니다 - https://imbf.github.io/interview/2020/11/26/NAVER-Interview-Preparation-1.html
https://k39335.tistory.com/38
- 캐시 메모리 :
- 참고
https://hyonee.tistory.com/95
'항해99 3기' 카테고리의 다른 글
2021.12.16 면접 질문 준비(수정필요) - Part 1. 전산 기초 : 데이터베이스 (0) | 2021.12.19 |
---|---|
2021.12.15 면접 질문 준비(수정필요) - Part 1. 전산 기초 : 데이터베이스 (0) | 2021.12.17 |
2021.12.13 면접 질문 준비(수정필요) - Part 1. 전산 기초 : 운영체제 (0) | 2021.12.17 |
2021.12.11 면접 질문 준비(수정필요) - Part 1. 전산 기초 : 네트워크 (0) | 2021.12.17 |
[TIL] 2021.12.15 코딩 테스트 준비중 - 네번째 시험 : 추석 트래픽 / 면접 질문 준비 (0) | 2021.12.17 |