IT공부/IT서적

[뇌를 자극하는 윈도우즈 시스템 프로그래밍] 15장. 쓰레드 풀링(Pooling), 16장. 컴퓨터 구조 - 4

shine94 2025. 2. 20. 02:42

* 해당 글은 윤성우의 뇌를 자극하는 윈도우즈 시스템 프로그래밍 도서를 읽고 정리한 글입니다

   https://product.kyobobook.co.kr/detail/S000001223395

 

뇌를 자극하는 윈도우즈 시스템 프로그래밍 | 윤성우 - 교보문고

뇌를 자극하는 윈도우즈 시스템 프로그래밍 |

product.kyobobook.co.kr

 

 

 

* 쓰레드 풀링

   한 번 생성한 쓰레드를 재활용해서 시스템의 부담을 덜어주기 위한 기법

 

* 파이프를 구성한다

   서로 다른 프로세스의 입력과 출력을 연결하는 경우

 

* 캐시 메모리는 원래 CPU의 일부로 존재하는 메모리 개념이 아니라 CPU에 근접해 있는 메모리 개념이다

 

* 메모리 계층(Memory Hierarchy) 구조

 

* 템퍼럴 로컬리티(Temporal Locality)

   프로그램 실행 시 한 번 접근이 이뤄진 주소의 메모리 영역은 자주 접근하게 된다

 

* 스페셜 로컬리티(Spatial Locality)

   프로그램 실행 시 접근하는 메모리 영역은 이미 접근이 이루어진 영역의 근처일 확률이 높다

 

* 가상 메모리(Virtual Memory)

   메인 메모리의 부족함을 가상 메모리라는 메커니즘으로 극복

   [How] 하드 디스크를 메인 메모리로 확장시켜서

 

* 가상 주소(Virtual Address) 시스템

   32비트 시스템에서 프로세스 생성시 4GB 메모리 할당

   가상 주소 지정(Virtual Addressing), 가상 메모리 공간(Virtual Address Space)

 

* MMU(Memory Management Unit)

   16KB 밖에 존재하지 않는 메모리를 64KB가 존재하는 것처럼 CPU가 느끼도록 컨트롤하는 역할

   [정리하면] 가상 메모리와 실제 물리 메모리 사이에 주소의 변환을 담당하는 하드웨어 블록

                    ㄴ 소프트웨어 상으로도 가능한 작업이나 빈번하게 발생하기 때문에 하드웨어로 구성(그래야 성능 문제 안생김)

 

* 하드웨어 입장 페이지 프레임(Page Frame), 소프트웨어 입장 페이지(Page)

 

* 스왑 파일(Swap File) ==  페이징 파일(Paging File)

   램(RAM)에 해당하는 메인 메모리를 하드디스크로까지 확장

   메모리 부족 문제를 해결하기 위해 탄생