있을리가
네가 말하는 메모리 레이아웃은 메모리 공간에 프로세스를 어떻게 올리냐의 문제지. 그 메모리 공간이 가상이냐 물리냐는 관계 없어
ㅇㅇ 가상메모리는 프로세스별로 레이아웃이 있잖아. 물리메모리를 추상화한 형태고. 근데 물리메모리는 그냥 모든 공간중에서 남는곳 아무곳이나 할당하는건지 궁금했음
내가 이론으로 배운건 물리메모리 공간 일부에 커널 코드를 올려놓고 가상메모리의 특정 구역이 "항상" 그 커널 코드 구역과 매핑되도록 하는 걸로 알고 있음 현대의 OS 커널들이 실제로도 이렇게 작동하는 지는 모르겠음
리눅스 커널이 실제로 그렇게 돌아가는걸로 기억함. 각 가상 메모리 공간을 3 : 1로 나누어 3이 유저 스페이스가 1이 커널 스페이스던가 그랬음.
그렇게 관리하자면 할 수 있지. 근데 대부분 그렇게 안함
임베디드는 이쓴거 같더라
PLC에서는 캐시(SRAM), 프로그램(MRAM), 데이터(DRAM),데이터(MRAM)가 물리적으로 다른 메모리 칩이다
있을리가
네가 말하는 메모리 레이아웃은 메모리 공간에 프로세스를 어떻게 올리냐의 문제지. 그 메모리 공간이 가상이냐 물리냐는 관계 없어
ㅇㅇ 가상메모리는 프로세스별로 레이아웃이 있잖아. 물리메모리를 추상화한 형태고. 근데 물리메모리는 그냥 모든 공간중에서 남는곳 아무곳이나 할당하는건지 궁금했음
내가 이론으로 배운건 물리메모리 공간 일부에 커널 코드를 올려놓고 가상메모리의 특정 구역이 "항상" 그 커널 코드 구역과 매핑되도록 하는 걸로 알고 있음 현대의 OS 커널들이 실제로도 이렇게 작동하는 지는 모르겠음
리눅스 커널이 실제로 그렇게 돌아가는걸로 기억함. 각 가상 메모리 공간을 3 : 1로 나누어 3이 유저 스페이스가 1이 커널 스페이스던가 그랬음.
그렇게 관리하자면 할 수 있지. 근데 대부분 그렇게 안함
임베디드는 이쓴거 같더라
PLC에서는 캐시(SRAM), 프로그램(MRAM), 데이터(DRAM),데이터(MRAM)가 물리적으로 다른 메모리 칩이다