seegongsik
내 단어장
운영체제

내 것과 네 것을 가르는 벽

가상 메모리에서, 프로그램마다 저만의 메모리를 봤죠(9강). 남의 메모리는 보이지도 않았고요. 그런데 사실 모두의 데이터는 한 진짜 메모리에 섞여 있어요. 그럼 무엇이 내 것과 네 것을 못 건드리게 막을까요? 놀랍게도, 막는 벽 같은 건 없어요.

01

한 메모리에 여럿이 섞여 살아요

가짜로는 저마다 따로 쓰는 것 같지만,
진짜 메모리 안에선 다들 한데 섞여 있어요.
A의 조각과 B의 조각이 나란히 놓여 있죠.
만약 A가 옆에 있는 B의 자리를 건드릴 수 있다면,
A의 실수 하나가 B를 망가뜨리고, 비밀도 엿볼 수 있어요.

진짜 메모리
A
B
A
B
B
A
A
B
A
B
B
A

진짜 메모리를 보세요. A(금색)와 B(파란색) 조각이 한데 섞여 놓여 있어요.

한 공간에 이렇게 섞여 있으니 불안해 보이죠.
그런데 실제로는 A가 B를 절대 못 건드려요.
무슨 단단한 칸막이가 둘 사이를 막고 있을까요?
아니에요. 비밀은 9강에서 본 그 지도에 있어요.

02

벽이 아니라, 길이 없을 뿐이에요

9강의 지도를 떠올려 봐요.
A의 지도는 A의 진짜 자리만 가리켜요.
B의 자리로 이어지는 길은 그 지도에 아예 없어요.
그래서 A는 'B의 주소'라는 걸 말할 방법조차 없죠.
둘을 막는 벽이 있는 게 아니라, 갈 길이 없는 거예요.

A 지도
A1
B1
길 없음
A2
B2
길 없음
A3

A를 골라 보세요. A의 지도는 A의 자리로만 이어지고, B로 가는 화살표는 없어요.

지도에 길이 없으니 갈 수가 없죠.
그런데 만약 어떤 프로그램이 실수로,
혹은 일부러 지도 밖 주소를 부르면 어떻게 될까요?
그땐 또 다른 안전장치가 작동해요.

03

선을 넘으려 하면 잡혀요

프로그램이 자기 지도에 없는 주소를 부르면,
바꿔 줄 진짜 자리가 없으니 변환이 실패해요.
그 순간 하드웨어가 즉시 알아채고 운영체제에 알리죠.
운영체제는 '넌 네 것 아닌 자리를 건드렸어' 하며
그 프로그램만 딱 멈춰 세워요. 나쁜 접근은 끝내 닿지 못해요.

A의 주소와 B의 주소를 차례로 시도해 보세요. 내 것은 통과(초록), 남의 것은 잡혀 정지(빨강).

내 것은 잘 가고, 남의 것은 그 자리에서 잡혔죠.
경계를 넘으려는 시도는 결코 통하지 않아요.
이 덕분에 아주 든든한 결과가 따라와요.
한 프로그램이 망가져도, 그게 남한테 안 번진다는 거예요.

04

하나가 망가져도 나머지는 멀쩡해요

프로그램마다 자기 칸에 갇혀 있으니,
망가지는 프로그램은 자기 자리만 어지를 수 있어요.
남의 메모리도, 운영체제도 손대지 못하죠.
운영체제는 망가진 그 하나만 조용히 정리하고,
나머지 프로그램들은 아무 일 없다는 듯 계속 돌아가요.

P1
도는 중
P2
도는 중
P3
도는 중

프로그램 하나를 망가뜨려 보세요. 그 하나만 멈추고, 나머지는 계속 돌아가요.

보호가 없었다면, 망가진 하나가 전부를 끌고 갔을 거예요.
분리해 둔 덕에 사고가 한 칸에 머문 거죠.
안정도, 보안도 여기서 함께 나와요.
그 바탕에는 '벽'이 아니라 '따로 된 지도'가 있고요.

05

분리가 곧 보호예요

정리하면, 메모리 보호는 따로 만든 벽이 아니에요.
프로세스마다 지도를 따로 주니, 서로에게 가는 길이 없고,
선을 넘으려 하면 잡혀 그 하나만 멈춰요.
그래서 섞여 살아도 안 부딪치고, 하나가 망가져도 안 번지죠.
분리해 둔 것 자체가 곧 보호인 거예요.

보호를 껐다 켜 보세요. 켜면 사고가 한 칸에 갇히고, 끄면 전부로 번져요.

여기까지 운영체제는 안에서 CPU와 메모리를 다스렸어요.
번갈아 쓰게 하고(시분할·스케줄링), 따로 지켜 주고(가상 메모리·보호).
그런데 컴퓨터는 바깥과도 이야기해야 하죠.
키보드, 화면, 디스크, 처음 보는 새 장치까지요.
운영체제는 그 많은 장치를 어떻게 알아볼까요? 다음 이야기예요.

한 줄 정리메모리 보호는 막는 벽이 아니라, 프로세스마다 지도가 달라서 생기는 결과예요. 내 지도는 내 자리만 가리키니, 애초에 남의 자리로 가는 길이 없어요. 선을 넘으려 하면 지도에 없는 주소라 하드웨어가 잡아내고, 운영체제가 그 프로그램만 멈춰요. 그래서 하나가 망가져도 나머지는 멀쩡하죠. 분리가 곧 보호예요.
운영체제
이 페이지가 도움 됐다면 후원하기