본문 바로가기
공부/운영체제

[윈도우] 레지스트리란

by 맑은청이 2021. 5. 11.
반응형

레지스트리 정의 

 

윈도우 레지스트리(Registr)는 마이크로프트 윈도우 32/64비트 버전과 윈도우 모바일 운영 체제의 설정과 선택항목을 담고 있는 데이터베이스라고 위키피디아에 적혀있다. 

 

간단히 말해서 '윈도우의 응용프로그램과 운영체제를 위한 정보등이 들어있는 곳'이다. 

사용자가 제어판 설정, 파일 연결, 시스템 정체, 설치된 소프트웨어를 변경하면 변경 사항들이 레지스트리 안에 저장된다. 이 레지스트리는 수많은 논리를 구분하는 '하이브(hive)'로 나눌 수 있고 하이브는 모두 HKEY로 시작한다. 보통 윈도우 API 정의로 이름이 지정되어 있다. 

 

시스템 구성 정보를 저장한 데이터베이스로 다양한 정보를 저장한다. 

예를 들어 PC를 켰을 때 자동으로 켜지는 프로그램 설정 정보, 마우스 우클릭 시 실행되는 정보, 프로그램에 따른 확장자 등의 PC 기본설정이다. 

윈도우를 이용할 때 필요한 모든 정보가 담겨 있기 때문에 윈도우 설정 정보가 '레지스트리' 라고 생각하면 된다. 

레지스트리 구조

레지스트리는 으로 이루어져 있다. 

 

레지스트리에서의 키는 폴더와 유사하다. 값과 함께 서브키를 가질 수 있고 이 서브키는 또 서브키를 가질 수 있다. 이때 파일 경로와 유사한 구문을 가진다. HKEY_LOCAL_MACHINE\Software\Microsoft\Windows는 "HKEY_LOCAL_MACHINE" 키의 "Software" 서브키의 "Microsoft" 서브키의 "Windows"라는 서브키를 가리킨다. 

 

레지스트리 값은 키안에 들어 있는 이름 또는 자료이다. 값은 여러 키로부터 참조가 가능하다. 

 

 

레지스트리 값 종류 목록

출처 위키피디아 

 

윈도우 키 + R 을 눌려서 실행창에 'REGEDIT' 를 치면 레지스트리 편집기를 열 수 있다. 

 

위 사진 처럼 5가지 레지스트리 트리를 볼 수 있다. 

각 레지스트리 트리에 대해 간단하게 알아보자. 

 

1. HKEY_CLASSES_ROOT : *OLE 데이터와 확장자에 대한 정보, 파일과 프로그램 각 연결 정보가 포함됨, 파일 확장자들이 서브트리로 구성, 각 확장자는 파일타입과 연결되어 해당 프로그램을 확인가능하다. 예를 들면 아래 화면처럼 .exe 같은 확장자의 파일을 실행 시 어떤 프로그램으로 실행될지의 정보가 존재한다. 

 

 

*OLE(Object Linking and Embedding) 는 마이크로소프트 기반 기술로 일반적인 복합 문서로 복합문서는 다양한 종류의 정보객체가 포함되는데 이는 OLE Object 라고 한다. 이 OLE Object 는 문서, 동영상, 표와 같은 작업물이다. 종류로는 Linked Object(원본 파일 데이터에 대한 포인터) 와 Embedded Object(원본 파일의 데이터 사본)가 있다.  

 

HKEY_CLASSES_ROOT 
친숙한 .exe 확장자 
pdf 를 보면 ChromeHTML 을  수 있다.

2. HKEY_CURRENT_USER : 환경 정보가 저장, 다수 사용자가 사용할 경우 사용자별 정보가 저장되어있다. 

이름처럼 현재 로그인한 사용자의 설정을 담고 있다. 

3. HKEY_LOCAL_MACHINE : 컴퓨터 모든 사용자의 설정을 담고 있다. 즉 설치된 하드웨어가 동작하는 데 필요한 드라이버나 설정 관련 정보를 저장하고 있기 때문에 컴퓨터를 켜고 부팅 시에 설정된 값도 들어있다. 사용자의 계정 정보나 시스템 정보와 같은 크리티컬한 정보들이 들어 있다. 

4. HKEY_USERS : 데스크탑 설정 및 네트워크 연결정보가 저장되어 있다.

 

5. HKEY_CURRENT_CONFIG : 디스플레이와 프린터에 관한 정보가 들어있다. 레지스트리 중에서 가장 단순한 부분으로 HKEY_LOCAL_MACHINE에 서브로 존재하는 config 내용이 있다. 

 

빨간 줄의 레지스트리는 악성코드에서 자주 변경하는 값들이다. 프로그램이 시작될 때 악성코드가 자동으로 실행되게 설정하는 등에 행위를 할 수 있기 때문에 관리를 잘하는 것이 중요하다. 오늘은 레지스트리에 대해 배워보았다. 

반응형

'공부 > 운영체제' 카테고리의 다른 글

운영체제8 Memory Mangement  (0) 2020.07.03
운영체제7 Deadlock  (0) 2020.07.03
운영체제6 Process Synchronizaiton  (0) 2020.07.03
운영체제5 CPU Scheduling  (0) 2020.06.21
운영체제4 Threads  (0) 2020.06.17