Historical Perspective
OS in structure way
- pros:
- easy to develop and debug
- Increased protection (information hiding between layers)
- cons:
- hard to define the layers
- circular dependency
- low performance
- less flexibility
- Difficult to divide system layers
processes communication
Shared memory
- pros
- efficient
- easy to program
- cons
- fault intolerant (because one process may corrupt the shared data)
- Race condition (the output is dependent on the sequence or timing of other uncontrollable events. It becomes a bug when events do not happen in the order the programmer intended. The term originates with the idea of two signals racing each other to influence the output first)
- pros
Message passing
- pros
- Scalable
- Safer
- cons
- Message copy overhead
- pros
Memory Management
- logical address/virtual address: An address generated by the CPU
- physical address: the one loaded into the memory-address register of the memory
- logical address space: The set of all logical addresses generated by a program.
- physical address space: The set of all physical addresses corresponding to these logical addresses