티스토리 뷰
컴퓨터가 수행할 수 있는 모든 데이터들은 저장장치에 있다. 그 저장장치 중에도 실제로 수행을 위해서는 RAM상에 load 되어야 한다. 이 RAM에 저장되어 있는 data를 cpu가 읽어오는데 보통 한번에 읽을 수 있는 가장 작은 단위를 cell이라고 한다. 모든 cell에는 integer형태의 address를 하나씩 갖고 있으며, 보통 한 개의 cell size는 1byte, 즉 8bit으로 정해져 있다. 즉, CPU는 cell의 주소를 넘겨주게 되면 그안에 있는 데이터를 읽어올 수 있게 된다. 그래서 보통 알고 있는 Byte Addressing 이라는 말은 cell의 주소를 byte 단위로 찾아가겠다는 말이다.
그런데 이런식으로 한번에 Address를 처리하는 양을 작게 해버리면 매번 Access할 때마다 CPU 의 Context Switching이 발생하므로 좋지 않다. 따라서 하드웨어적으로 이 cell 단위보다 더 읽어올 수 있게끔 구현했는데 이게 Word Addressing이다. 보통 일반적으로 사용하는 컴퓨터의 word size는 32bit(4byte) / 64bit(8byte)가 있으며, 이에 따라서 컴퓨터가 사용할 수 있는 address space의 범위도 정해지게 된다. 보통 일반적으로는 0~ 2^(word size) - 1 로 정해져 있다.
그러면 다음으로 다뤄봐야 할 것은 Byte가 어떻게 Ordering이 되는지에 대한 것이다. 처음 컴퓨터에 대해서 공부해보면 왜 항상 Memory Address가 위에서부터 아래로 내려가면서 증가하는지 궁금해 할 수 있다. 이에 대한 내용이 바로 byte Ordering이다. 이 Byte Ordering에는 크게 두가지 Big Endian 과 Little Endian 으로 나눌 수 있는데 이 두 개의 차이는 바로 lowest Address의 위치가 어디냐에 따라서 달라진다. 보통 Big endian byte ordering의 경우에는 lowest Address가 가장 맨위에 있다. 이를 다른 말로 Most Significant byte라고 하는데 이 MSB 가 lowest address를 가지는 형식을 big endian ordering 이라고 한다. 반면 Least Significant Byte가 lowest Address를 가지는 경우를 Little endian이라고 하는데 이렇게 말로만 표현하는 것보다는 실제 그림을 보는게 좋을 거 같다.
이런식으로 배치된다고 보면 좋을 거 같다. 예를 들어 0x44332211이라는 데이터를 Memory에 삽입하려고 한다. 그러면 Big Endian 방식으로 저장하면 위에서부터 11,22,33,44가 저장되겠지만 Little Endian 방식에서는 역순으로 저장된다고 보면 된다.
'Study > OS' 카테고리의 다른 글
[OS] POSIX Thread (0) | 2013.06.25 |
---|---|
[Process] Inter Process Communication (IPC) (5) | 2013.06.21 |
[Process] Process Creation (0) | 2013.06.20 |
[Process] Process Scheduling (1) | 2013.06.20 |
[Process] Process / Process Control Block (2) | 2013.06.19 |
[Study] POSIX (0) | 2013.02.21 |
[Study] Virtual Memory (0) | 2013.02.20 |
- Total
- Today
- Yesterday
- Offline RL
- Kinect
- windows 8
- PowerPoint
- processing
- Distribution
- Policy Gradient
- Pipeline
- DepthStream
- TensorFlow Lite
- ai
- Kinect SDK
- bias
- dynamic programming
- Windows Phone 7
- Kinect for windows
- RL
- arduino
- 파이썬
- Gan
- 한빛미디어
- SketchFlow
- Off-policy
- 강화학습
- Expression Blend 4
- reward
- 딥러닝
- ColorStream
- Variance
- End-To-End
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |