1/33
Looks like no tags are added yet.
Name | Mastery | Learn | Test | Matching | Spaced |
|---|
No study sessions yet.
Operating system (OS)
- Manages computer hardware and software resources and provides common services for computer programs
- Intermediary between user and computer hardware = efficient and secure operation of system
I. ROLES
Primary roles of OS
ROLES: CPU management
Allocates CPU time to processes, ensure efficient execution
ROLES: Memory management
- Control and coordination of RAM
- Allocates memory to apps
Virtual memory (ROLES: Memory)
Memory-management technique: temporarily transfer inactive data (page/segments) from RAM to secondary (disk) storage to use more memory than physically available
- Memory management unit (MMU) - maps virtual address to physical memory
logical addresses to physical address in RAM or disk
- Physical RAM is full = OS swaps pages to move inactive pages from RAM to designated disk areas
- Paging - split memory into equal pages (sectors) to let non-contiguous segments fit in RAM
.vs Segmentation - organizing memory into variable-sized (not equal/fixed!) sections
- = execution of larger programs, multitasking
ROLES: Storage management
Organizes data on storage devices, reliable data storage and retrieval
- File management - storage (save), retrieval, organization, manipulation of data
.Structured way to manage files and directories = system stability and security
.Hierarchical file system/tree-like structure
.No 2 files in same directory may have same name
File extension (ROLES: Storage)
Suffix at end of filename that indicates file type and program associated with opening/processing file
Defragmentation (ROLES: Storage)
Reorganize fragmented data on HDD so files stored in contiguous blocks
- = ^ access speed
- Fragment - temp files scattered across different disk sectors from creating, modifying, deleting files (eg copy file creates tmp file of original file)
ROLES: Device management
Coordinate hardware devices and data transfer, provide drivers and interfaces
Device driver (ROLES: Device)
Specialized software for OS to communicate with and control hardware devices
- Plug and play (PnP) technology - OS automatically installs necessary drivers and settings (no need to do manually)
Buffering (ROLES: Device)
Use of temporary data storage (buffer) when speed mismatch between devices
- = Release same time
- Usually by RAM
- Ex: keyboard input vs CPU processing, video streaming vs display
Caching (ROLES: Device)
Store frequently used data in caches
Spooling (ROLES: Device)
Process of queuing/scheduling data/tasks in buffer,= processed sequentially
- System can work on other tasks in meantime
II. FUNCTIONS
Primary functions of OS
FUNCTIONS: Scheduling
Allocates CPU time to processes = efficient, fair system resources use
- Multitasking environments
- = optimize performance, reduce wait times, maintain system stability
- MINIMIZE:
.Response time - time for machine to respond to user input
.Waiting time - time user spends in queue waiting for that response
- MAXIMIZE:
.Throughput - # of completed processes per unit time
.CPU utilization: maximizing all resources
- see Scheduling quizlet in this folder for scheduling algorithms
Key challenges (FUNCTIONS: Scheduling)
Deadlock - 2/+ processes stuck forever, each waiting for other's resource
Thrashing - System spends most CPU time swapping pages, not doing real work
Starvation - process can't be supported by current resources (either lack of resources or resources are being dominated)
FUNCTIONS: Security
Protect confidentiality, availability, integrity of computer's resources and information so that users and applications can operate securely
User authentication (FUNCTIONS: Security)
Requires user credentials (username, password, biometric data)
- Authorization - permissions, access levels
.OS grants/prevents access based on user settings
.Access control lists (ACLs) - specifies which resources user/processes can access and can have operations
- = multi-user with different access credentials
Encryption (FUNCTIONS: Security)
Data can't be read without decryption key (even when intercepted by unauthorized)
- Eg files, communication channels, devices
Auditing and monitoring (FUNCTIONS: Security)
All system activities tracked by OS in log (auditing)
- Activities: users logging in, file access, system errors, admin actions
- = help admins detect suspicious activities and potential security breaches, identify issues and areas for improving system performance
Malware protection (FUNCTIONS: Security)
Included mechanisms to detect and prevent malware infections and intruders
- Include: antivirus software, firewalls, intrusion detection systems (IDS)
.Scan malicious software
.Monitor network traffic
.Block unauthorized access attempts
.Protect system from viruses, worms, trojans, etc
FUNCTIONS: Accounting
Monitor and manage usage of system resources
- Track resources consumption by users and processes = provide insights for system administrations
- = analyze performance, allocate costs, optimize resource utilization
Resource usage tracking (FUNCTIONS: Accounting)
CPU, memory, disk, network
Process accounting (FUNCTIONS: Accounting)
Process ID, user iD, execution time, start and end times, resource consumption
FUNCTIONS: Graphical user interface (GUI)
Allow intuitive user interaction with system (vs command line interface)
- Elements: windows, icons, buttons, cursors/pointers
Application management (FUNCTIONS: GUI)
Interaction with multiple applications
- = ^ user productivity, experience
- Task switching = move quickly between open applications
.Taskbar, application switcher (alt + tab) = efficient navigation
- Split-screen effect - snapping windows to edges/corners = multitasking
- Personalized and organized workspace: users can place icons, shortcuts, widgets in desktop environment
File and system management (FUNCTIONS: GUI)
Simplified through visual tools and interfaces
- GUI-based file management tool (eg File explorer) = navigate directories, view file properties, perform operations (copy, edit, delete, rename)
- Drag-and-drop functionality = user-friendly method to transfer data
Accessibility (FUNCTIONS: GUI)
- Screenreaders = text into speech/braille
- High-contrast themes, screen magnifiers = ^ readability for low vision
- Keyboard shortcuts = v reliance on mouse.touchpad, help limited mobility
Visual feedback (FUNCTIONS: GUI)
Helps users understand what's currently happening in system
- = ^ overall ux
- Include:
.Progress indicators - status of ongoing operations (progress bars, loading animation)
.Notifications
.Tooltips - small informative text boxes when hover over icons
Customization and personalization (FUNCTIONS: GUI)
- Widgets and gadgets - quick access to info/tools
- = ^ satisfaction and productivity
FUNCTIONS: Virtualization
Running multiple VMs (Virtual machines - computer inside a computer operate independently with own OS and apps) on single physical machine
- Why? Build IaaS, etc
Hypervisor (FUNCTIONS: Virtualization)
Software that creates VM by allowing multiple OS to run simultaneously on single physical machine (sharing hardware)
- Allocates CPU time, memory, storage to each VM
- = efficient resource use, each VM works as if on separate physical machine
Live migration (FUNCTIONS: Virtualization)
Move VM from one physical host to another without interrupting services
- = ^ load balancing and hardware maintenance
.Load balancing - process of distributing network/application traffic across multiple resources
.= ^ optimal performance,^ reliability and availability, prevent single server from being overwhelmed
FUNCTIONS: Networking
Establish and maintain network connections by managing network interfaces and protocols
- = enable devices to connect to LANs, WANs, internet
- Configures network settings