여러분은 열심히 과제를 작성중이었습니다.
과제 한두번 하는 것도 아니고... 저장은 필수죠^^
그런데 집에 정전이... 앗... 전원이 갑자기 꺼졌습니다...
저장을 했으니 뭐 ^^
전원을 켰는데 파일이 없군요...
뭐 이런 상황에 있다고 생각해봅시다... (분노 주의...)
아니... 뭐든 간에 데이터가 저장이 되어있어야되는거 아닌가...
그럴꺼면 컴퓨터 왜써 !?
자... 제가 말씀드리고 싶은 내용은 바로,
저장되지 않는다면 아무런 의미가 없다라는 것을 말씀드리고 싶었습니다.
이 얘기를 왜 했느냐하면,
우리가 사용하는 컴퓨터에는 위와 같은 안타까운 상황을 예방해주는 저장장치가 있습니다.
우선 컴퓨터의 주요 요소에 대해서 생각해 봅시다.
뇌를 담당하는 CPU, 주기억장치, 보조기억장치 등...
여기서 전원이 꺼져도 메모리가 남아 있는 장치는!?
(CPU 일단 빼 ^^)
바로~!! 보조기억장치입니다.
자기방식에 의해서 정보가 그대로 남아있는 보조기억장치는
전원이 나가도 정보의 손실이 없습니다. 이게 바로 보조기억장치의 핵심이죠!
또한 용량 또한 주기억장치에 비해 크고요!
하지만 속도가 드리다는 장점이....
그래서 CPU가 안놀아줍니다...
그런데 말입니다... 우리가 사용하는 프로그램은 보조기억장치에 저장되어 있는데요...
음... 프로그램이 실행되려면 CPU와 놀아야되는데
CPU는 보조기억장치랑은 안놀고...
예 여러분이 생각하시는 그거 맞습니다. 위에서 언급안한 하나 그거!
주기억장치!
CPU는 주기억장치랑 잘 놀져....
즉, 우리가 사용하는 프로그램을 실행하면
보조기억장치에 저장되어있던 프로그램이 주기억 장치로 옮겨집니다.
옮겨지는 과정은? 바로 로딩!
RAM의 용량이 작긴한데요...
참고로! 주기억장치(RAM)의 경우 자기방식이 아닌 전원방식이라 전원이 나가면 다 사라집니다...
하지만 속도는 빠르다는 점~!
보조기억장치에 비해 거의 10만배 차이난다죠?! (믿거나 말거나~)
아무튼... CPU는 연산장치이기 때문에
CPU가 프로그램을 실행하는 역활을 합니다.
음... 근데 말입니다...
보조기억장치에 있는 프로그램이랑 주기억장치에 있는 프로그램이랑 뭐가 차이가 있을까요?
쉽게 말씀드리자면...
보조기억장치에 있는 프로그램은 죽어있는...?
주기억장치에 있는 프로그램은 살아있다고? 생각해봅시다...
그냥 이해하기 쉽게요 ^^;;
그러면 여기서 용어 정리를 해볼 필요성이 있습니다.
실행되고 있는 프로그램과 실행되지 않는 프로그램을 나타내는 용어.
실행되지 않을 때는 말그대로 프로그램!
살아있을때는 프로세스라고 부르는 것이죠!
예를 들어 워드 프로그램이 실행되지 않는 상태에서는 그냥 프로그램이지만,
RAM에 올라가는 순간 프로세스라는 것~!
* 참고로 말씀드리면 네트워킹에서는 프로세스라는 용어가 많이 언급되는데요~!
바로 네트워킹은 살아있는 프로그램들과만이 통신할 수 있으니
프로세스라는 말이 많이 나오는 것이랍니다~!
추가적으로 말씀드리자면 프로그램의 프로세스는
프로그램의 인스턴스라고 할 수 있습니다.
인스턴스는 인스턴트 커피가 아니라요 (죄송합니다...)
컴퓨터 용어로 '진짜, 살아있는, 활동가능한'을 뜻합니다!
그런데 말입니다.
모든 프로그램은 RAM 위에 올라가야지 실행이 가능하다고 했는데요,
그 올라와 있는 프로세스에도 사용되고 있는
명령어와 데이터들이 있을 것입니다.
데이터를 사용해야 하는데... 어떻게 사용할 수 있을까요...
어차피 다 0101010 막 이럴텐데...
바로 저장되어 있는 위치! 즉, 주소값을 찾아가서 데이터를 사용하는 것이죠!
데이터가 저장되어 있는 메모리!
논리적으로는 기억공간, 물리적으로는 기억장치라고 불리우는 이 메모리는!
명령어를 사용하던지 데이터를 사용하던지 보관을 한답니다.
참고로 1 Byte당 주소 하나!
'삽질의 현장 > - C' 카테고리의 다른 글
곱씹어보자 C!_#005_ 삽잡이의 두서없이 막말하는 메모리와 데이터 (0) | 2015.06.23 |
---|---|
곱씹어보자 C!_#004_ 삽잡이의 두서없이 막말하는 데이터 타입의 등장 (0) | 2015.06.23 |
곱씹어보자 C!_#002_ 삽잡이의 두서없이 막말하는 명령어와 데이터 (0) | 2015.06.23 |
곱씹어보자 C!_#001_ 삽잡이의 두서없이 막말하는 프로그램이란? (0) | 2015.06.23 |
SP_#000_A promise a promise! (0) | 2015.06.20 |