C191 Study Guide via GPT

0.0(0)
studied byStudied by 0 people
0.0(0)
full-widthCall Kai
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
GameKnowt Play
Card Sorting

1/57

encourage image

There's no tags or description

Looks like no tags are added yet.

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

58 Terms

1
New cards

The Role of an Operating System (OS)

Acts as a bridge between hardware capabilities and user needs, providing essential support for efficient and safe application development and use.

2
New cards

Abstraction and Virtualization

Utilized by OS to simplify and enhance the interaction between hardware and users. Abstraction combines simpler operations into more complex ones, hiding details. Virtualization creates illusions of more favorable characteristics than the actual hardware.

3
New cards

The OS as a Resource Manager

Optimizes the use of computational resources to ensure good overall performance, including CPU, memory, and I/O devices

4
New cards

Multiprogramming and Time-sharing

Techniques to improve CPU utilization and throughput by running multiple programs simultaneously and sharing CPU time among multiple computations.

5
New cards

OS Structure

A hierarchical organization to manage complexity, with the kernel providing essential services and supported by libraries and applications

6
New cards

Interrupts and Traps

Mechanisms for handling events and errors, transferring control to appropriate service routines in the OS

7
New cards

Evolution and Scope of OSs

The classification of OSs over time, driven by hardware advancements and application environments, from batch processing systems to modern multi-user, interactive, and real-time systems

8
New cards

CPU (Central Processing Unit)

The primary component of a computer that performs most of the processing inside a computer.

9
New cards

Main Memory

The primary storage or RAM (Random Access Memory) where programs and data are kept for quick access by the CPU

10
New cards

Secondary Storage

Non-volatile storage like HDDs (Hard Disk Drives) or SSDs (Solid State Drives) used for long-term data storage

11
New cards

I/O Devices (Input/Output Devices)

Hardware used for inputting data to or outputting data from a computer.

12
New cards

Kernel

The core part of an OS, responsible for managing system resources and communication between hardware and software applications

13
New cards

System Calls

Requests for service from the application to the OS.

14
New cards

Interrupts

Signals to the processor indicating an event that needs immediate attention.

15
New cards

Virtualization

The process of creating a virtual version of something, including virtual computer hardware platforms, storage devices, and computer network resources

16
New cards

Computer Storage and Measurement Units

The document begins by detailing the units used for computer storage, such as kilobytes (KB), megabytes (MB), gigabytes (GB), terabytes (TB), and petabytes (PB), and contrasts these with networking measurements, which are in bits.

17
New cards

Memory Management

It explores how all forms of memory provide an array of bytes, each with its own address, and how memory management involves load and store instructions to specific memory addresses.

18
New cards

Secondary Storage

The necessity of secondary storage (e.g., HDDs, SSDs) due to the volatile nature of main memory and its limited capacity is discussed, emphasizing its role in permanently storing large quantities of data.

19
New cards

Storage Hierarchy and Technologies

A hierarchy of storage systems based on speed, size, and volatility is presented, including volatile and nonvolatile storage, and the transition from mechanical to electrical storage solutions.

20
New cards

I/O Structure

The document explains the structure of Input/Output in computers, including the use of Direct Memory Access (DMA) and the efficiency of different architectures (bus vs. switch) in handling I/O operations.

21
New cards

Computing Environments

Various computing environments are outlined, including traditional computing, mobile computing, client-server computing, peer-to-peer systems, and cloud computing, each discussed with their unique characteristics and evolution

22
New cards

Free and Open-Source Operating Systems

An in-depth look at the benefits of free and open-source operating systems, including their history, the difference between free and open-source, and notable examples like GNU/Linux and BSD UNIX

23
New cards

Volatile/Nonvolatile Storage

Volatile storage loses its content when power is turned off, whereas nonvolatile storage retains its content

24
New cards

Direct Memory Access (DMA)

A method that allows an input/output (I/O) device to send or receive data directly to or from the main memory, bypassing the CPU to speed up memory operations.

25
New cards

Client-Server System

A computing model in which server systems satisfy requests generated by client systems, used in distributed computing environments.

26
New cards

Peer-to-Peer (P2P) System

A decentralized computing model where each participant, or peer, acts as both a client and a server

27
New cards

Cloud Computing

The delivery of computing services over the internet ("the cloud"), including servers, storage, databases, networking, software, analytics, and intelligence.

28
New cards

GNU General Public License (GPL)

A widely used free software license that ensures end users the freedom to run, study, share, and modify the software.

29
New cards

Operating System Services

These include user interface options (CLI, GUI, touchscreens), program execution, I/O operations, file-system manipulation, communications, error detection, resource allocation, logging, and protection/security.

30
New cards

User and Operating-System Interface

It discusses command-line interfaces (CLI), graphical user interfaces (GUI), and touch-screen interfaces as the means for users to interact with the operating system.

31
New cards

System Calls

Describes system calls as the programming interface between the user program and the operating system, detailing their use, types, and mechanisms.

32
New cards

Types of System Calls

System calls are categorized into process control, file management, device management, information maintenance, communications, and protection

33
New cards

System Services (Utilities)

Covers file management, status information, file modification, and programming-language support, providing a conducive environment for program development and execution.

34
New cards

System Call

A software-triggered interrupt for requesting a kernel service

35
New cards

API (Application Programming Interface)

A set of commands and functions for programming applications to interact with the operating system

36
New cards

CLI (Command-Line Interface)

A text-based interface for entering commands directly to the operating system.

37
New cards

GUI (Graphical User Interface)

An interface featuring graphical elements like windows, icons, and menus for user interaction.

38
New cards

Process Control

System calls related to the creation, execution, and termination of processes.

39
New cards

File Management

System calls for creating, deleting, reading, writing, and managing files.

40
New cards

Device Management

System calls for managing hardware devices

41
New cards

Information Maintenance

System calls for managing and retrieving system information.

42
New cards

Communications

System calls for establishing and managing communication between processes.

43
New cards

Protection

System calls for managing access rights and permissions for system resources.

44
New cards

The Process Concept

Defines a process as an instance of a program being executed. It introduces the Process Control Block (PCB), a data structure that holds all information about a process, including its current state, memory allocation, and execution context.

45
New cards

Process States and Transitions

Discusses various states a process can be in (e.g., running, ready, blocked) and the transitions between these states based on events such as resource allocation or completion of execution.

46
New cards

Process Control Block (PCB)

Details the components of a PCB, including CPU state, process state, memory pointers, scheduling and accounting information, list of open files, and other resources. It emphasizes the PCB's role in managing and tracking process information throughout its lifecycle.

47
New cards

Organizing PCBs

Explores methods for efficiently organizing PCBs within the operating system, including using arrays or linked lists, to facilitate easy allocation, tracking, and deallocation of processes.

48
New cards

Process Creation and Destruction

Explains how processes are created and destroyed, including the allocation of a new PCB upon process creation, setting initial state and resources, and the cleanup activities involved in process destruction.

49
New cards

Process

An instance of a program in execution.

50
New cards

Process Control Block (PCB)

A data structure in the operating system that contains all the information about a process.

51
New cards

CPU State

Part of the PCB that stores the contents of CPU registers and flags for a process.

52
New cards

Process State

Indicates the current status of a process (e.g., running, ready, blocked).

53
New cards

Memory Management

Refers to the management of the primary memory or RAM and involves keeping track of each byte of memory to decide how allocation and deallocation occurs.

54
New cards

Scheduling Information

Information used by the operating system to schedule processes on the CPU, including process priority and CPU time used.

55
New cards

Open Files

A list of files that a process has opened, maintained within the PCB.

56
New cards

Process Creation (create())

The function called by the operating system to create a new process, involving the allocation and initialization of a new PCB.

57
New cards

Process Destruction (destroy())

The function called to terminate a process and free its resources, including deallocating its PCB.

58
New cards