sistemas operacionais i - dcc.ufrj.brdcc.ufrj.br/~valeriab/so-presentation.pdf · sistemas...
TRANSCRIPT
Chapter 1
Computer System
Overview Eighth Edition
By William Stallings
Operating
Systems:
Internals
and Design
Principles
Summary Cache memory
Motivation
Cache principles
Cache design
Direct memory access
Multiprocessor and multicore organization
Symmetric multiprocessors
Multicore computers
Basic Elements
Evolution of the microprocessor
Instruction execution
Interrupts
Interrupts and the instruction cycle
Interrupt processing
Multiple interrupts
The memory hierarchy
Chapter 2
Operating System
Overview Eighth Edition
By William Stallings
Operating
Systems:
Internals
and Design
Principles
Summary
Operating system objectives and
functions User/computer interface
Resource manager
Evolution of operating systems Serial processing
Simple/multiprogrammed/time-
sharing batch systems
Major achievements
Developments leading to modern
operating systems
Fault tolerance
Fundamental concepts
Faults
OS mechanisms
OS design considerations for
multiprocessor and multicore
Microsoft Windows overview Traditional Unix systems
History/description
Modern Unix systems
System V Release 4 (SVR4)
BSD
Solaris 10
Linux
History
Modular structure
Kernel components
Android
Software/system architecture
Activities
Power management
Chapter 3
Process Description
and Control Eighth Edition
By William Stallings
Operating
Systems:
Internals
and Design
Principles
Summary
What is a process?
Background
Processes and process control blocks
Process states
Two-state process model
Creation and termination
Five-state model
Suspended processes
Process description
Operating system control structures
Process control structures
Process control
Modes of execution
Process creation
Process switching
Execution of the operating system
Nonprocess kernel
Execution within user processes
Process-based operating system
UNIX SVR4 process management
Process states
Process description
Process control
Chapter 4
Threads Eighth Edition
By William Stallings
Operating
Systems:
Internals
and Design
Principles
Summary Processes and threads
Multithreading
Thread functionality
Types of threads
User level and kernel level threads
Multicore and multithreading
Windows 8 process and thread management
Changes in Windows 8
Windows process
Process and thread objects
Multithreading
Thread states
Support for OS subsystems
Solaris thread and SMP management
Multithreaded architecture
Motivation
Process structure
Thread execution
Interrupts as threads
Linux process and thread management
Tasks/threads/namespaces
Android process and thread management
Android applications
Activities
Processes and threads
Mac OS X grand central dispatch
Chapter 5
Concurrency:
Mutual Exclusion
and Synchronization
Operating
Systems:
Internals
and Design
Principles
Eighth Edition
By William Stallings
Summary Monitors
Monitor with signal
Alternate model of monitors with notify and broadcast
Message passing
Synchronization
Addressing
Message format
Queueing discipline
Mutual exclusion
Readers/writers problem
Readers have priority
Writers have priority
Principles of concurrency
Race condition
OS concerns
Process interaction
Requirements for mutual exclusion
Mutual exclusion: hardware support
Interrupt disabling
Special machine instructions
Semaphores
Mutual exclusion
Producer/consumer problem
Implementation of semaphores
Chapter 6
Concurrency:
Deadlock and
Starvation
Operating
Systems:
Internals
and Design
Principles
Eighth Edition
By William Stallings
Principles of deadlock
Reusable/consumable resources
Resource allocation graphs
Conditions for deadlock
Deadlock prevention
Mutual exclusion
Hold and wait
No preemption
Circular wait
Deadlock avoidance
Process initiation denial
Resource allocation denial
Deadlock detection
Deadlock detection algorithm
Recovery
Android interprocess communication
UNIX concurrency mechanisms
Pipes
Messages
Shared memory
Semaphores
Signals
Linux kernel concurrency mechanisms
Atomic operations
Spinlocks
Semaphores
Barriers
Solaris thread synchronization primitives
Mutual exclusion lock
Semaphores
Readers/writer lock
Condition variables
Windows 7 concurrency mechanisms
Chapter 7
Memory
Management Eighth Edition
William Stallings
Operating
Systems:
Internals
and Design
Principles
Summary
Memory partitioning
fixed partitioning
dynamic partitioning
buddy system
relocation
Segmentation
Memory management requirements
relocation
protection
sharing
logical organization
physical organization
Paging
Chapter 8
Virtual Memory
Operating
Systems:
Internals
and Design
Principles
Eighth Edition
William Stallings
Summary UNIX and Solaris memory
management
Paging system
Kernel memory allocator
Linux memory management
Linux virtual memory
Kernel memory allocation
Windows memory management
Windows virtual address map
Windows paging
Windows 8 swapping
Android memory management
Hardware and control structures
Locality and virtual memory
Paging
Segmentation
Combined paging and segmentation
Protection and sharing
OS software
Fetch policy
Placement policy
Replacement policy
Resident set management
Cleaning policy
Load control
Chapter 9
Uniprocessor
Scheduling Eighth Edition
By William Stallings
Operating
Systems:
Internals
and
Design
Principles
Summary
Scheduling algorithms
Short-term scheduling criteria
The use of priorities
Alternative scheduling policies
Performance comparison
Fair-share scheduling
Types of processor scheduling
Long-term scheduling
Medium-term scheduling
Short-term scheduling
Traditional UNIX scheduling
Chapter 10
Multiprocessor,
Multicore
and Real-Time
Scheduling Eighth Edition
By William Stallings
Operating
Systems:
Internals
and
Design
Principles
Summary Real-time scheduling
Background
Characteristics of real-time operating systems
Real-time scheduling
Deadline scheduling
Rate monotonic scheduling
Priority inversion
Windows scheduling
Process and thread priorities
Multiprocessor scheduling
Multiprocessor and multicore scheduling
Granularity
Design issues
Process scheduling
Multicore thread scheduling
Linux scheduling
Real-time scheduling
Non-real-time scheduling
UNIX SVR4 scheduling
UNIX FreeBSD scheduling
Priority classes
SMP and multicore support
Chapter 11
I/O Management
and Disk Scheduling Eighth Edition
By William Stallings
Operating
Systems:
Internals
and
Design
Principles
Summary I/O devices
Organization of the I/O function
The evolution of the I/O function
Direct memory access
Operating system design issues
Design objectives
Logical structure of the I/O function
I/O Buffering
Single buffer
Double buffer
Circular buffer
Disk scheduling
Disk performance parameters
Disk scheduling policies
Raid
Raid levels 0 – 6
Disk cache
Design and performance considerations
UNIX SVR4 I/O
Buffer cache
Character queue
Unbuffered I/O
UNIX devices
Linux I/O
Disk scheduling
Linux page cache
Windows I/O
Basic I/O facilities
Asynchronous and Synchronous I/O
Software RAID
Volume shadow copies/encryption
Chapter 12
File Management Eighth Edition
By William Stallings
Operating
Systems:
Internals
and Design
Principles
Summary File structure
File management systems
File organization and access
The pile
The sequential file
The indexed sequential file
The indexed file
The direct or hashed file
B-Trees
File directories
Contents
Structure
Naming
File sharing
Access rights
Simultaneous access
Record blocking
Android file management
File system
SQLite
Secondary storage management
File allocation
Free space management
Volumes
Reliability
UNIX file management
Inodes
File allocation
Directories
Volume structure
Linux virtual file system
Superblock object
Inode object
Dentry object
File object
Caches
Windows file system
Key features of NTFS
NTFS volume and file structure
Recoverability
Chapter 13
Embedded Operating
Systems Eighth Edition
By William Stallings
Operating
Systems:
Internals
and
Design
Principles
Summary Embedded systems
Characteristics of embedded operating systems
Adapting an existing commercial operating system
Purpose-built embedded operating system
Embedded Linux
Kernel size
Compilation
Embedded Linux file systems
Advantages of embedded Linux
Android
TinyOS
Wireless sensor networks
TinyOS goals
TinyOS components
TinyOS scheduler
TinyOS resource interface
Chapter 14
Virtual Machines Eighth Edition
By William Stallings
Operating
Systems:
Internals
and
Design
Principles
Summary
Approaches to virtualization
Processor issues
Memory management
I/O management
VMware ESXi
Microsoft hyper-V and Xen
variants
Java VM
Linux VServer virtual machine
architecture
architecture
process scheduling
Android virtual machine
Dex file format
Zygote
Chapter 15
Operating System
Security Eighth Edition
By William Stallings
Operating
Systems:
Internals
and
Design
Principles
Summary Intruders and malicious software
system access threats
countermeasures
Buffer overflow
buffer overflow attacks
compile time defenses
runtime defenses
Access control
file system access control
access control policies
UNIX access control
traditional UNIX file access control
access control lists in UNIX
Operating systems hardening
OS installation: initial setup and patching
remove unnecessary services, application, and protocols
configure users, groups and authentication
install additional security controls
test the system security
Security maintenance
logging
data backup and archive
Windows security
access control scheme
access token
security descriptors
Chapter 16
Distributed Processing,
Client/Server, and
Clusters Eighth Edition
By William Stallings
Operating
Systems:
Internals
and
Design
Principles
Summary Client/server computing
What is client/server computing?
Client/server applications
Middleware
Distributed message passing
Reliability versus unreliability
Blocking versus nonblocking
Windows cluster server
Beowulf and Linux clusters
Beowulf features
Beowulf software
Remote procedure calls
Parameter passing
Parameter representation
Client/server binding
Synchronous versus asynchronous
Object-oriented mechanisms
Clusters
Cluster configurations
Operating system design issues
Cluster computer architecture
Clusters compared to SMP
Bibliografy
Livro texto:
Operating Systems: Internals
and Design Principles
(8th Edition)
William Stallings