Mapa mental
Operating Systems
Contenido del mapa
Operating Systems
Processes
- Process Control Block
- Stack
- Heap
- Text (code)
- Program Counter
- I/O Devices
- File Descriptors
- CPU Status/Registers
- Process State
- Created
- Ready
- Running
- Waiting
- Terminated
- System Queues
- Ready Queue
- I/O Request Queues
- Job Queue
- Types of Scheduling
- Long-Term
- From disk to RAM
- Mid-term
- RAM to disk when waiting
- Short-term
- CPU Scheduling/Dispatch
- Long-Term
- Communication
- Interprocess
- Message Passing
- Direct
- Indirect
- Shared Memory
- Message Passing
- Client-Server
- Sockets
- RPC
- RMI
- Interprocess
- Context Switch
- Parent and Child
- Mapping
- Process to CPU
- Thread to Core
- Parallelism vs Concurrency
- Unix Process Creation/Execution
- Process Control Block
Threads
- Types of Threads
- User Threads
- POSIX
- Win32
- Java
- Kernel Threads
- Linux
- Windows
- User Threads
- Singlethreaded
- Multithreaded
- Models
- Many-to-One
- One-to-One
- Many-to-Many
- Models
- Threading Issues
- Java Thread States
- New
- Runnable
- Blocked
- Dead
- Types of Threads
OS Structures
- OS Services
- Kernel
- Command Interpreters
- Virtual Machines
- I/O
- Synchronous
- Asynchronous
- Interrupts
- Hardware
- Software
- Design and Implementations
- Systems Requirements
- Upfront Design
- Modularity
- Policy Decisions
- Programming Language
- Debugging
- Device Controllers
- Direct Memory Access
- Types of Requests
- User Mode vs Kernel mode
- System Calls
- Program Control
- Status Requests
- I/O Requests
Scheduling
- Algorithrms
- First-Come First-Serve
- Shortest-Job-First
- Round Robin
- Multilevel Feedback Queue
- Priority
- Preemptive vs Non-Preemptive
- Attributes/Criteria
- CPU Utilization
- Throughput
- Waiting Time
- Response Time
- Execution Time
- Performance Techniques
- Gantt Charts
- Simulation
- Implementation
- Dispatcher
- Algorithrms
Synchronization
- Classic Problems
- Bounded Buffer
- Readers-Writers
- Dining Philosophers
- Solutions
- Hardware Level
- Test-and-Set
- Compare-and-Swap
- User Level
- Peterson's Algorithm
- Dekker's Algorithm
- OS Level
- Sempahores
- Language Level
- Monitors
- Hardware Level
- Critical Section
- Requirements
- Mutual Exclusion
- Progress
- Bounded Waiting
- Requirements
- Problems
- Deadlock
- Race Condition
- Starvation
- Locks
- Semaphores
- Monitors
- Test-and-set
- Compare-and-swap
- Mutex
- Java Synchronization
- Atomic Transactions
- Classic Problems
Deadlocks
- Conditions For Deadlock
- Mutual Exclusion
- Hold and Wait
- No Preemption
- Circular Wait
- Resource Allocation Graph
- Types of Edges
- Request
- Assignment
- Claim
- Types of Edges
- Handling Deadlocks
- Prevention
- Condition Constraints
- Avoidance
- Bankers Algorithm
- Safe State
- Safe Sequence
- Resource Allocation Graph Algorithm
- Safety Algorithm
- Detection and Recovery
- Cycle Detection
- Preemption
- Process Termination
- Ignore
- Prevention
- Conditions For Deadlock
Protection
- Goals
- Protection Domain
- Static
- Dynamic
- Domain Structure
- Access Matrix
- Implementations
- Global Table
- Access Lists for Objects
- Capability Lists for Domains
- Lock-Key
- Comparison
- Implementations
- Access Control
File System
- Interface
- File
- Attributes
- Opperations
- Types
- Structures
- Access Methods
- Sequential
- Direct
- Disk
- Structure
- Partition
- Volume
- Raw vs Cooked
- Structure
- Directory
- Types
- Single-Level
- Two-Level
- Tree-Structure
- Acyclic Graph
- Symbol Table
- Operations
- Types
- File Sharing
- Multi-User
- Remote File System
- Distributed
- Client-Server
- Consistency
- File Protection
- Access Control
- Types of Access
- Mounting
- Mount Point
- File
- Implementation
- Allocation Methods
- Contiguous
- External Fragmentation
- Compaction
- External Fragmentation
- Linked
- Clusters
- FAT
- Reliablity
- Indexed
- Index Block
- Linked
- Combined
- Multilevel
- Index Block
- Contiguous
- Free-Space Management
- Bit Vector
- Linked List
- Efficiency and Performance
- Grouping
- Counting
- Directory
- Linear List
- Hash Table
- Virtual File System
- Interface
- Objects
- Inode
- File
- Superblock
- Dentry
- Partitions and Mounting
- Booting
- Root Partition
- Structures
- On Disk
- Boot Control Block
- Volume Control Block
- Directory Structure
- File Control Block
- In Memory
- Mount Table
- Directory Cache
- Global Open File Table
- File Buffers
- Per Process Open File Table
- On Disk
- Recovery
- Consistency
- Logging
- Backups
- NFS
- Mount Protocol
- Path-Name Translation
- Remote Operations
- Allocation Methods
- Interface
Main Memory Management
- Adressing
- Logical
- Physical
- Swapping
- Backing Store
- Fragmentation
- External
- Internal
- Compaction
- Paging
- Page Table
- Hierarchical
- Inverted
- Hashed
- Frames
- Pages
- Mapping
- Frame Table
- Hardware Support
- TLB
- PTBR
- PTLR
- Protection
- Valid Bit
- Page Table
- Hardware
- Cache
- Registers
- MMU
- Contiguous Memory Allocation
- Protection
- Holes
- Memory Partitions
- Allocation
- Best Fit
- First FIt
- Worst Fit
- Address Binding
- Compile Time
- Load Time
- Execution Time
- Dynamic Loading
- Dynamic Linking
- Segmentation
- Segment Table
- Intel Pentium
- Hardware
- Adressing
Virtual Memory
- Demand Paging
- Page Replacement
- Reference Bit
- Dirty Bit
- Algorithms
- FIFO
- OPT
- LRU
- Second Chance
- Belady's Anomaly
- Page Fault
- Different than Swapping
- Valid Bit
- Locality
- Swap Space
- Effective Address Time
- Page Replacement
- Thrashing
- Multiprogramming
- Locality Needs
- Working Set Model
- Page Fault Frequency
- Performance
- Frame Allocation
- Global vs Local
- Fixed
- Priority
- Minimum Number of Frames
- Copy-on-write
- Process Creation
- Sharing Pages
- Memory Mapped Files
- Kernel Memory Allocation
- Buddy System
- Slab Allocation
- Demand Paging
Información
- Descripción
- Computer Science Mapa Mental sobre Operating Systems, creado por Michael O'Keefe el 05/12/2016.
- Creado por
- Michael O'Keefe
- Visitas
- 0
- Etiquetas
- Historial
-
- Creado por David Lee · 9 nov 2016
- Copiado por Michael O'Keefe · 5 dic 2016
- Valoración