메모리
: 기억.
: 컴퓨터에서 말하는 메모리는 기억소자(memory cell 이하, 기억세포라 부르겠다.) 즉, 반도체를 의미한다.
.
.
컴퓨터는 이진 1과 0으로 값을 저장하기 때문에, 기억세포는 상태가 ON인지 OFF인지 기억을 하게 되는 것이다.
.
.
다시 돌아와서,
기억 세포들이 공통적으로 하는 일은 set과 get이다. 우리는 주로 write와 read로 사용한다.
0과 1중의 하나를 저장하고, 값(0,1)이 있다면 그 값을 가져오는 일이다. (상태를 가져온다고 한다.)
기억세포에서 확장하면 기억장소,, 그리고 더 확장하면 저장 장소라는 개념의 우리가 사용하는 하드디스크, CD, USB 저장장치다.
메모리와 이런 저장장치와의 차이는 메모리는 휘발성(값이 날아감)이라는 것이다.
시스템이 활성화 된 상태에서 그 값을 기억하고 있다가 시스템이 종료될 때, 지워지게 된다.
메모리 동작
메모리는 0 또는 1로 저장이 되는데, 이 값을 유지하기 위해서는 전기적으로 연속적이게 재충전 되어야 한다.
우리는 이것을 '메모리 리프레시(Memory refresh)'라고 부르기로 했어요.
메모리는 정보를 저장(write) 또는 읽기(read)위해서 밑의 사진과 비슷한 행렬구조의 주소를 가지고 있습니다.
RAS(Row Address Strobe, 가로 주소) : 프로세서가 메모리에 있는 정보를 읽거나 저장할 때 먼저 RAS를 보낸다.
CAS(Column Address Strobe, 세로 주소 ) : 그 후에, 어떤 특정 메모리 주소에 데이터가 들어있는지 아니면 비어있는지 확인 담당
메모리 동작 과정
1. CPU가 '메인보드 칩셋'에게 데이터를 요청한다.
2. '메인보드 칩셋'이 데이터가 있는 곳의 행(가로)주소를 메모리로 보낸다.
3. 행 주소가 메모리 버퍼로 들어오면 그 행의 모든 셀을 RAS가 읽는다
4. 하지만, 행 주소로는 필요한 데이터가 어디에 있는지 모르니까, CAS보낸다.
5. 찾았다.
6. 메모리 셀(기억세포)에 있는 내용이 출력 버퍼로 옮겨진다.
7. '메인보드 칩셋'이 출력 버퍼의 내용을 읽고 CPU로 전달한다.
메모리 성능
: 메모리가 CPU와 데이터를 주고 받는 시간 이를 액세스(access : 접근)라 부르며, 단위는 ns(nano-secode) - 10억분의 1초다.
✔️ 리스페시 시간(refresh time) : 메모리는 일정 시간마다 재충전을 해줘야한다.(정보를 유지하기 위해) 이 일정기간을 리프레시 시간이라고 한다.
✔️ 메모리 액세스 시간 : 데이터를 읽어오라는 CPU의 명령을 받고 데이터를 읽기 시작하기까지의 시간.
즉, 메모리 동작과정 1~7
✔️ 사이클 시간 : 메모리 작업이 완료와 동시에 다음 신호를 받을 준비가 되었다는 신호를 주기까지의 시간.
사이클 시간 = 메모리 액세스 시간 + 리프레시 시간
메모리 분류
RAM(Random access memory : 무작위 접근 메모리)는 주기억 장치에서 사용되며 자료 저장 방식, 형태별 사용처에 따라서 메모리를 분류 할 수 있다.
1. 자료 저장 방식에 따른 분류
정적방식(SRAM: static RAM) : 플립플롭을 이용한 방식으로 고정된 값을 기억하는 방식 재충전 필요 없음.
동적방식(DRAM: Dynamic RAM) : 캐패시터에 전하를 충전하는 방식으로 데이터를 저장하는 기억세포들로 이루어진 것.
저장내용을 기억하기 위해서는 주기적인 재충전이 필요.
플립플롭
: 1비트의 정보를 보관 및 유지할 수 있는 회로이다. 전기 신호가 지속적으로 공급되어야만 정보를 유지할 수 있다.
✔️ 자세한건 clean code를 읽어보거나, 검색해보는 것을 추천합니다.
캐패시터
캐패시터 : 직류 전압을 가하면 각 전극에 전기(전하)를 축적(저장)하는 역할
'개발공부 > 컴파일러&운영체제' 카테고리의 다른 글
비전공자 운영체제 part.5 : 운영체제 (하드웨어) (0) | 2022.08.26 |
---|---|
비전공자 운영체제 part.4 : 커널 (0) | 2022.08.22 |
비전공자 운영체제 part.3 : 캐시 메모리 (0) | 2022.08.20 |
비전공자 운영체제 part.1 : CPU (0) | 2022.08.18 |