System: [INTEL] 8060메모리 구조
[ 8060 란? ]
인텔사에서 개발한 16비트 마이크로프로세서이며, x86 아키텍처를 적용한 첫 제품이다.
[ 메모리 구조 ]
메모리는 기본적으로 유저영역과 커널 영역으로 나누는데 왜 2가지 영역으로 나누는 걸까?
이유는 바로 시스템 운영에 필요한 메모리와 운영체제가 커널 영역에 올라가 있다 이런 중요한 영역에 사용자가 마음대로
접근한다면 시스템의 불안정을 초래할 수 있지 않겠는가?
그렇기 때문에 사용자가 함부로 커널영역에 접근할 수 없도록 유저영역과 커널영역으로 분류하여 사용하는 것이다.
여기서 나누는 영역의 크기는 운영체제와 설정에 따라 달라질 수 있다.
가용 메모리 영역인 유저 영역에는 여러개의 세그먼트 들이 저장 될 수 있음. 세그먼트는 하나의 프로세스를 묶은 것으로 스택, 데이터, 코드 영역으로 구성되어 있다.
[ 커널 영역]
운영체제라는 하나의 소프트웨어를 실행시키기 위해서 필요한 메모리 공간.
스레드 스케줄링, 메모리 관리, 파일 시스템 코드 등이 로드됨.
시스템 내의 모든 프로세스에게 공유된 메모리다.
[ Off-Limit 영역 ]
유저영역과 커널영역 사이의 공간으로 사용자가 커널 영역에 접근하지 못하도록 할당해둔 공간이다 ]
인텔사에서 개발한 16비트 마이크로프로세서이며, x86 아키텍처를 적용한 첫 제품이다.
[ 메모리 구조 ]
메모리는 기본적으로 유저영역과 커널 영역으로 나누는데 왜 2가지 영역으로 나누는 걸까?
이유는 바로 시스템 운영에 필요한 메모리와 운영체제가 커널 영역에 올라가 있다 이런 중요한 영역에 사용자가 마음대로
접근한다면 시스템의 불안정을 초래할 수 있지 않겠는가?
그렇기 때문에 사용자가 함부로 커널영역에 접근할 수 없도록 유저영역과 커널영역으로 분류하여 사용하는 것이다.
여기서 나누는 영역의 크기는 운영체제와 설정에 따라 달라질 수 있다.

가용 메모리 영역인 유저 영역에는 여러개의 세그먼트 들이 저장 될 수 있음. 세그먼트는 하나의 프로세스를 묶은 것으로 스택, 데이터, 코드 영역으로 구성되어 있다.
[ 커널 영역]
운영체제라는 하나의 소프트웨어를 실행시키기 위해서 필요한 메모리 공간.
스레드 스케줄링, 메모리 관리, 파일 시스템 코드 등이 로드됨.
시스템 내의 모든 프로세스에게 공유된 메모리다.
[ Off-Limit 영역 ]
유저영역과 커널영역 사이의 공간으로 사용자가 커널 영역에 접근하지 못하도록 할당해둔 공간이다.
[ 유저 영역 ]
위의 유저영역에 들어가는 세그먼트를 자세하게 살펴보면 코드영역, 데이터 영역, 힙 영역, 스택 영역 으로 나누어진다.
- 코드 영역
프로그램의 코드가 올라가는 영역으로 여기서 코드는 컴파일된 기계어 코드로 기계어 명령어들, 어셈블리 코드가 올라가게 된다. 프로그램이 실행되면 코드영역에 있는 어셈블리 코드가 한줄씩 해석되며 실행된다. - 데이터 영역
프로그램에서 사용되는 전역변수, 정적 변수 등 각종 변수 들이 실제로 위치하는 메모리 영역으로
데이터영역은 세분화하면 bss 영역과 데이터 영역으로 나누어진다.
- BSS 영역
초기화 되지 않은 데이터가 들어가는 영역 - 데이터 영역
초기화 된 데이터가 들어가는 영역
- BSS 영역
- 힙 영역
동적으로 할당하여 사용하는 변수의 데이터가 올라가는 영역으로
malloc(), realloc(), free() 함수 같은 동적 할당과 관련되는 함수들에 의해 선언되는 변수가 이 곳에 위치한다. - 스택 영역
지역 변수와 매개변수가 저장되는 영역으로 함수가 시작되면 해당 함수의 지역변수가 스택에 쌓였다가 함수가 종료되면 해당 영역을 해제해준다.
*스택은 메모리의 높은 주소에서 낮은 주소로 자란다*
위 영역을 실제 코드와 매핑 시켜보면 다음과 같다.
'System' 카테고리의 다른 글
MIPS와 ARM의 차이점 (0) | 2021.10.17 |
---|---|
MIPS 아키텍처 (MIPS architecture) (1) | 2021.10.17 |
ARM 아키텍처 (ARM architecture) (0) | 2021.10.17 |
댓글
이 글 공유하기
다른 글
-
MIPS와 ARM의 차이점
MIPS와 ARM의 차이점
2021.10.17 -
MIPS 아키텍처 (MIPS architecture)
MIPS 아키텍처 (MIPS architecture)
2021.10.17 -
ARM 아키텍처 (ARM architecture)
ARM 아키텍처 (ARM architecture)
2021.10.17