13 - Operating Systems Flashcards

1
Q

What is an operating system (OS)?

A

An operating system is a program that acts as an intermediary between a computer user and the computer hardware, managing resources and providing a user-friendly environment.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What are the main goals of an operating system?

A

The goals include executing user programs to solve problems, making the computer system convenient to use, and efficiently managing the computer hardware.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What are the four main components of a computer system?

A

They are Hardware, Operating System, Application Programs, and Users.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What role does the operating system play as a resource allocator?

A

It manages all system resources and makes decisions between conflicting requests to ensure efficient and fair usage.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What role does the operating system play as a control program?

A

It controls the execution of programs, preventing errors and improper use of the computer hardware.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What is bootstrapping in the context of operating systems?

A

Bootstrapping is the process of loading and initializing an operating system; a small program called the bootstrap loader loads the OS kernel into memory.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Where is the bootstrap loader typically stored?

A

It is typically stored in ROM or EPROM, often referred to as firmware.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What distinguishes mainframe operating systems, and what are some examples?

A

Mainframe OSs are designed for large-scale data centers, handling batch processing and timesharing. Examples include IBM OS/390 and UNIX variants like Linux.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What are server operating systems designed for?

A

They are built to run on servers and workstations, support multiple users over a network, and provide services like file storage, web hosting, and software sharing (e.g., Solaris, FreeBSD, Windows Server).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

How do multiprocessor operating systems differ from others?

A

They support multiple CPUs in one system and are designed for parallel computing and improved performance scaling (e.g., Windows, Linux).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What is the focus of personal computer operating systems?

A

They are tailored for single-user desktops and laptops, supporting multitasking and user-friendly interfaces (e.g., Windows, macOS, Linux distributions).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What characterizes handheld computer operating systems?

A

These OSs run on smartphones and tablets, are optimized for touchscreens and mobile applications, and must operate under constraints like battery life and memory limits (e.g., Android, iOS).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What defines embedded operating systems and where are they used?

A

Embedded OSs are found in dedicated devices such as microwave ovens, cars, and DVD players, focusing on security, reliability, and low power consumption (e.g., Embedded Linux, QNX, VxWorks).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What are sensor-node operating systems designed for?

A

They run on tiny sensor nodes with wireless communication, optimized for low power consumption and event-driven operations (e.g., TinyOS).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

How are real-time operating systems categorized?

A

They are divided into hard real-time OSs, which guarantee task execution at precise times, and soft real-time OSs, which can tolerate slight delays.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What is multiprogramming and why is it used in operating systems?

A

Multiprogramming refers to the execution of multiple programs simultaneously on a single CPU. It is a form of multitasking where multiple tasks or processes are running concurrently on the same CPU.

17
Q

What is timesharing (multitasking) in operating systems?

A

Timesharing is the rapid switching between jobs so that multiple programs appear to run simultaneously, providing interactive computing with a response time of less than one second.

18
Q

What is a process in the context of operating systems?

A

A process is a program in execution, an active entity that requires resources like CPU, memory, and I/O to perform its tasks.

19
Q

How does a multi-threaded process differ from a single-threaded one?

A

A single-threaded process has one program counter and executes instructions sequentially, while a multi-threaded process contains multiple threads, each with its own program counter, allowing concurrent execution.

20
Q

What responsibilities does an operating system have in process management?

A

It creates and deletes processes, suspends and resumes them, and provides mechanisms for process synchronization, inter-process communication, and deadlock handling.

21
Q

What is virtualization in the context of operating systems?

A

Virtualization allows one operating system to run applications within another OS, managed by a Virtual Machine Manager (VMM), enabling multiple operating systems to share hardware resources.

22
Q

What is a hypervisor?

A

A hypervisor is software that allows multiple virtual machines (VMs) to run on a single physical computer by managing and allocating hardware resources. It creates and runs VMs by separating the operating system from the hardware. There are two types:

Type 1 (bare-metal): Runs directly on the hardware (e.g., VMware ESXi, Microsoft Hyper-V).

Type 2 (hosted): Runs on a host operating system (e.g., VirtualBox, VMware Workstation).

23
Q

What statement about virtualization and hypervisors is most accurate?

A

A VMM enables multiple guest operating systems to run concurrently on a single host, with each guest interacting with hardware through an abstraction layer.