반응형
막연하게 리소스중 하나라고 생각하면서 사용했던 handle의 개념을 정리해보면, 핸들은 "운영체제 내부에 있는 리소스의 주소를 유니크한 정수로 치환한 값"이다.
운영체제의 리소스를 정수로 치환하는 이유는 응용프로그램에서 운영체제의 리소스를 직접 사용하는 것을 막기 위함이다.
(운영체제의 리소스를 직접 사용하는 케이스외에도 프레임워크나 서비스등의 자원을 직접 사용하지 못하도록 핸들의 개념을 광범위 하게 사용하는 경우도 있는것 같다.)
응용프로그램이 운영체제의 리소스를 직접 사용할경우 치명적인 오류나 보안상 취약하기 때문이다.(이래서 메모리를 user영역과 kernel영역으로 나누어서 사용한다.)
그래서 Handle은 응용 프로그램과 운영체제 사이의 다리역할을 해주는 매개체로 보면 된다. 운영체제의 리소스를 사용할때 핸들값을 먼저 할당받고 그 핸들을 이용하면 된다.
1) 리소스를 제공하는 주체로 부터 핸들값 할당 받음
2) 핸들값을 이용해서 리소스 사용(get또는 set)
반응형
'개발 잡지식' 카테고리의 다른 글
[GitHub] git add * VS git add . 차이점 (0) | 2021.05.30 |
---|---|
htop 프로세스 모니터링 (0) | 2020.09.13 |
디스플레이 해상도 (0) | 2018.09.02 |
CMake 기본 포맷과 예제 (0) | 2018.01.28 |
oom_adj 또는 oom_score_adj (0) | 2018.01.01 |