Functons Resource Abstraction of HDW Resource sharing
Time MUXG Space MUXG Multiplexing Scheduling
Introduction OS
Batch
Control
UNIX LINUX Time sharing Types WIN NT/XP CAL PC Embedded Network WIN 98/ME WIN CE EXMPLS MULTICS
Device Dpendnt Device Mgmt Device Indpt Process Mgmt Functions File Mgmt
Drivers
File Mgmt
OS Architecture Issues
Performnc
Trust
Supvsr Implementation Mode Mechanism Kernel Modularity User
Fetch/Execute
HDW Process
Bootstrap
ALU
Instructions
CPU
Trap Abstract Machine Interface Process Abstraction Descriptor Thread Abstraction Processes & Threads
Context switch
TCB
Thread Mgmt
Thread States
Synchronization
Ready
Waiting Process States State Diag Blocked
Suspended Descriptor Resource Mgr Types Non-Consumbl Consumable
Enqueuer Mechanism Switcher Dsipatcher Voluntary CPU Sharing In-voluntary Priority Service Time Scheduling Criteria Measure FCFS SJF NonPreemptive Deadline Priority Wait Time Turn-artime Throughput
RR
Pre-emptive Strategies Algos FD-Queue Multi-FD-Q
CMD-Exec
Methods
Shared Variable
Critical Section
Resource Allocation Deadlock Resource Sharing
Fork
Synchronization
Commands
Join
Quit
Mutual Exclusion
Conditions
Scheduling
Indefinite Wait Semaphores Problems
Producerconsumer Bounded Nos dinning philosopher
Reader-writer
Problems
Primitives
Synchronization methods
Wait
Events
Signal
Queue
High Level Synchronization Monitor
Condition variables
wait
Monitor calls
priority
Message Passing
timeout
IPC
MailBox send Methods
receive
Types
ThreadThread within process ThreadThread outside process
Prevention
Mutual exclusion hold and wait circular wait no-pre emption
System Model
State diagram Multi process diagram
Avoidance
Safe state banker's algorithm
Detection
Serally usable resource graph recovery by roll back
Address space abstraction compile time binding load time binding compile time/static relocation run time/dynamic relocation
Allocation fixed partition variable partition Internal fragmentation external fragmentation Best/first/worst/next fit
Dynamic strategies swapping virutal memory context switch
Multiprocessing shared memory shared cpu
Address space Mapping Physical memory Logical memory Virtual memory
Paging Page frame offset translation locality of reference
Segmentation STR Offset mapping
Dynamic paging Page replacement FIFO LRU LFU page fault thrashing belady's anamoly working set algo
Device abstraction device interface device driver device controller
Device access FCFS SCAN C-SCAN
I/O overlap with cpu interrupt service routine polling strategy Interrupt strategy
device class communication sequential access direct access
Deisgn device dependent drivers I/O service routines
Buffering circular for i/o bound for cpu bound
Low level files stream block translation record block translation
operations open close read write seek
File stream abstraction Data base system multimedia system structures sequential structured index sequential
Structured files sequential indexed sequential direct
directories single level two level multi level
Authentication
Network
Attacks
software attacks
Authorization
Cryptography
Password extended mechanisms
secure traffic kerberos protocols
Masuerading guessing snooping alternate acess
changing rights rojan horse denial of service
access rights keys protecttion domains
Private keyencryption public key encryption symmetric keys assymetric keys DES substitution DES permutation
Considerations Performance trust
Modularization Monolithic kernel modular kernel layered kernel extensible kernel
Extensible kernel
Distributed OS use of networks use of protocols
process mgmt memory mgmt message passing using ports using rpc
Distributed memory remote memory multiple cpu's
Issues memory interface location transparency name management efficiency
RPC server stub client stub locating server stub locating client stub
Remote objects RMI CORBA
Remote process management scheduling load balancing
Distribution synchronization concurrency control transparency global clock