1/40
Flashcards covering key vocabulary and concepts related to Systems Software, Operating Systems, Memory Management, Interrupts, Scheduling, Types of Operating Systems, BIOS, Device Drivers, and Virtual Machines.
Name | Mastery | Learn | Test | Matching | Spaced |
---|
No study sessions yet.
Operating System
Manages the hardware and software resources of a computer system and provides an interface between the user and the hardware.
Resource Management
Managing the computer's resources, including the CPU, memory, disk drives, and printers, allocating resources to specific tasks.
File Management
Handles the storage, retrieval, and manipulation of data files, providing a GUI for users to manage files and directories.
Interrupt Handling
Requires the immediate attention of the central processing unit, needing to be handled and processed in a timely manner to maintain system stability.
Security (Operating Systems)
Provides various security features such as password-protected system accounts, firewalls, virus scanning, and file encryption to protect the system and user data.
Platform for Software
Provides a foundation for application software to run by allowing access to system resources, such as the GPU and network card.
User Interface
Offers ways for users to interact with the system, either visually through a graphical user interface (GUI) or text-based through a command-line interface (CLI).
Utilities (Operating Systems)
Programs that help with system maintenance and security, including file encryption, file compression, disk defragmentation, system backup, and disk cleanup.
File Encryption
Allows users to send files over networks securely by encoding files.
File Compression
Reduces the size of a file, which helps send large files over a network.
Disk Defragmentation
Physically reorganizes files on the hard disk so they can be found and accessed faster.
Disk Cleanup
Scans the hard disk for duplicate and corrupt files and deletes them to create more space on the disk.
Backup Software
Allows users to restore their system to a point in history.
Memory Management
A fundamental role of the operating system, dealing with the allocation and deallocation of the computer's primary memory when applications are opened so their data can run smoothly.
Paging
A method of chunking the primary memory into equal-sized blocks (pages). When an application is launched, data will be moved from the hard disk into pages for faster access.
Segmentation
A method of chunking memory into blocks that correspond to different types of data needed by an application. Segments vary in size depending on the allocated data.
Virtual Memory
A technique where, if a computer is running low on primary memory, it can make secondary storage act as an 'extension' of the main memory, creating an illusion of larger memory.
Interrupt
A signal to the processor that stops its current task and performs a different task temporarily, often used for real-time event handling, device communication, and multitasking.
Hardware Interrupts
Generated by external devices such as keyboard input, mouse movements, or disk I/O requests.
Software Interrupts
Triggered by software or the operating system, such as application requests to open a file or division by zero errors.
Trap Interrupts
Intentionally triggered by a program for software debugging or handling unexpected error cases.
ISR (Interrupt Service Routine)
A special function that handles a particular interrupt type, with each type of interrupt having a corresponding routine.
Interrupt Priority
When the processor can acknowledge and switch to resolving a higher-priority interrupt, which is vital because many things can go wrong at the same time.
Nesting of Interrupts
Refers to the ability of the processor to handle interrupts within interrupts, ensuring system stability by avoiding potential conflicts through proper management.
Scheduling
Deciding which tasks to process, for how long, and in what order is achieved through scheduling algorithms, where the CPU processes tasks as fast as possible.
Pre-emptive Scheduling
Allocates the CPU for time-limited slots and allows interruption of processes currently being handled.
Non-pre-emptive Scheduling
Allocates the CPU to tasks for unlimited time slots, where a process cannot be interrupted unless it completes or its burst time is reached.
Round Robin (RR)
A pre-emptive scheduling algorithm that equally distributes processor time amongst all processes by giving each process a time quantum to execute.
First-Come-First-Served (FCFS)
Is non-preemptive, prioritizing processes that arrive at the queue first, blocking all other processes until the current one is complete.
Multi-Level Feedback Queue (MLFQ)
A pre-emptive priority algorithm where shorter and more critical tasks are processed first, using multiple queues to group tasks of equal size.
Shortest Job First (SJF)
Is non-preemptive, where all processes are continuously sorted by burst time from shortest to longest, prioritizing new processes based on their burst time in the next cycle.
Shortest Remaining Time First (SRTF)
A pre-emptive version of SJF (Shortest Job First), where processes with the shortest remaining time are higher priority and re-queued if not completed within the time quantum.
Distributed Operating Systems
Run on multiple machines appearing as a single unit, used for efficient task distribution and load balancing.
Embedded Operating Systems
Designed for specific tasks, is the system running inside a device that is not primarily a computer system.
Multi-tasking Operating Systems
Allows multiple tasks to run concurrently on a single processor, manages system resources, and allocates CPU time to different processes.
Multi-user Operating Systems
Supports multiple users accessing computer resources concurrently, efficiently manages resource allocation, and provides features for data security and user privacy.
Real-Time Operating Systems (RTOS)
Designed for immediate data processing and can ensure tasks are processed in specific timeframes, highly efficient.
Operating System (OS)
Fundamental software that manages the computer hardware, provides common services for computer programs, and acts as an interface between users and the machine.
BIOS
Refers to the Basic Input/Output System of a computer, which is a piece of firmware stored on a small memory chip on the motherboard that performs a POST (Power-On Self-Test) on system start.
Device Driver
A piece of software that enables communication between an operating system and specific hardware devices, allowing the OS to control and interact with those devices.
Virtual Machine (VM)
A software-driven computer that runs within a physical machine, mimics a complete computer system (including virtual CPU, memory, storage, and network interface).