Computing Systems W8 part 2 Flashcards
Program vs process
program (passive) & process (active)
process:
instance of a program
requires resources (CPU, memory, IO, data)
program counter for execution
process resources (5)
CPU, memory, I/O , files, data
reusable resources are reclaimed when process terminates
single-threaded process manager
one program counter : executes one instruction at a time
multi-threaded process manager
multiple program counters for parallel execution
Parallel execution
simultaneous execution of multiple processes or threads, typically on multiple CPU cores or processors.
concurrent execution
operating system switches between processes, giving the illusion of simultaneous execution.
Process management activities (4)
Creating/Deleting user & system processes
Stopping/Starting processes
process synchronization & communication
Deadlock handling
process synchronization (3)
control multiple processes (threads) to preserves system integrity and avoids undesirable outcomes
Ensures only one process can access a shared resource at a time
Facilitates interaction between processes
Controls the order of execution
deadlock
two or more processes are unable to proceed because each is waiting for the other to release a resource, resulting in a cyclic waiting scenario.
Memory Management (3)
Keep track of currently used memory
Decides which process and data move in/out of memory
allocates/deallocate memory space as need
Program execution and Memory
Memory must contain ALL program instructions in order to execute the program
data required by the program must be in memory
Memory management advantages
improve CPU utilization and computer response speed
file
Standardized model that represents a collection of related information.
Users work with files and OS translates file operations into operations on storage devices
ex. files represent programs and data
Storage management (4)
OS provides users with file system to view information. Users interact with files (logical storage units)
create/delete files & directories
support for manipulating files/directories
Mapping files to mass storage
Backing up files on nonvolatile storage
Storage device properties (4)
speed (fast access to data)
capacity (big or small)
data-transfer rate (efficiency)
access method (how data is accessed, in order or random)
Mass Storage Management (3)
Computer speed and efficiency depends on mass storage system and management algorithms
Free-space management
Storage allocation
Disk scheduling
Mass Storage
Used for data that is meant to be kept for long periods. Used frequently so it must be efficient
ex.
secondary: HDD, SSD
tertiary: optical storage, magnetic tape (not as efficient)
I/O subsystem components (3)
Memory management of I/O
- buffer (storage)
- caching
- spooling (I/O data is first spooled into a local buffer before sending data to output device)
- device driver interface
- Drivers for specific hardware
protection
any mechanism for controlling access of processes or users to resources defined by the OS
security
defense of the system against internal and external attacks
UserID
When user logs in to the system, the authentication determines user ID for the user. That user ID is associated with all of the user’s processes and threads.
GroupID
ID to distinguish among sets of users
escalate privileges
allows user to change to effective ID with more rights
Cloud computing
delivers computing, storage, and applications as a service across a network (extension of virtualization)
Virtualization
Multiple simulated (virtual) versions of something on a single physical system
ex. Virtual Machine is like a computer within a computer. Multiple virtual machines on one physical machine, each with its own OS and applications
Software as a service (SaaS)
one or more applications available via the internet
Platform as a service
software stack ready for application use via internet (i.e. database server)
Infrastructure as a Service (IaaS)
servers or storage available over internet (i.e. storage available for backup use)
load balancers
spread traffic across multiple applications