Computersystem Study - Part1
Hardware OrganizationOverview
Buses:
Transferfixed-sized chunks of bytes known as words. For 32bit, 4 bytes, for 64bit, 8bytes.
I/O:
Input (mouse,keyboard, microphone)
Output (graphicsadapter, printer, speaker)
Memory:
DRAM. Logically,memory is organized as a linear array of bytes, each with its own uniqueaddress (array index) starting at zero.
Processor:
Engine thatinterprets (or executes) instructions stored in main memory. At its core is aword-sized
Storagedevice (or register) called the program counter.
Instructionsample:
Load: copy1 byte from memory to register, override current
Store: copyfrom register to memory, override current
Operate:copy 2 value from register into ALU, operate then got 1 value store inregister. Overrides current.
Jump: take1 instruction into PC for executing, override current.
The procedure of running aprogram.
Step 1: Read command.
Step 2: Load Exe file Diskinto memory.
Step 3: run.
Cache memory
Processorreads data from register 100+ times than from memory, so it’s meaningful to setmemory cache. (SRAM)
Memory Structure Overview.
Program context switching.
Exe runtime memorystructure Overview.
Heap:dynamically create memory, such as malloc in C language.
Stack: forrunning current program each step, executing function calls.
Kernelmemory Area: protected by system.
Sharedlibrary: this area memory for shared library.
Multiple core Memory cacheoverview
For multiple core CPU , they separated cache memory less than level 2, shared memory including level 3 and main memory (DRAM)