Fundamentals Of Operating Systems Flashcards

1
Q

What is the definition of a program in the context of operating systems?

A

A set of instructions that the CPU can execute

Programs reside on storage devices and are loaded into RAM to become processes.

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

What is a process?

A

A program loaded into main memory that is executed by the CPU

It is also known as a set of instructions being executed.

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

What are the two main types of software?

A
  • System software
  • Application software
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What is system software?

A

Essential part of computer operations that manages resources and facilitates program development

It controls and uses the hardware connected to the computer.

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

What is application software designed for?

A

Performing specific data processing or computational tasks for the user

These programs meet end-user requirements.

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

What is the role of the operating system?

A

Provides applications with a layer of abstraction from the computer hardware

It manages access to hardware and provides a consistent interface for application programs.

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

What are the common components of most operating systems?

A
  • Kernel
  • Interrupts
  • Scheduler
  • System configuration files
  • Development tools
  • Network tools
  • Security tools
  • User interface
  • File management tools
  • Machine resource management
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What is the kernel in an operating system?

A

The core component of the operating system that manages system resources

It interacts directly with the hardware.

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

What are the objectives of an operating system?

A
  • Convenience
  • Efficiency
  • Evolution
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What is resource allocation in operating systems?

A

Allocation of the computer’s resources to processes

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

Define Input/Output (IO) services in the context of operating systems.

A

Provided via system calls that prevent processes from directly interacting with IO devices

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

What is the purpose of process management in an operating system?

A

Creating, deleting, suspending, resuming, and communicating between all processes

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

What is memory management?

A

Determines how memory is allocated to processes and manages memory access

It ensures processes do not interfere with each other.

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

What is the process control block (PCB)?

A

A record containing important current information about a process

It includes the process’s state, identification, priority, and resource usage.

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

What is inter-process communication (IPC)?

A

Allows processes to communicate with each other to achieve a common goal

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

What is a system call?

A

A request by a program for a service from the operating system’s kernel

17
Q

What happens when a process issues a system call?

A

The processor execution mode changes from user mode to kernel mode

18
Q

What is the difference between single-tasking and multi-tasking?

A
  • Single-tasking: only one task runs at a time
  • Multi-tasking: multiple tasks are scheduled to run, giving the illusion of simultaneous execution
19
Q

Define the term ‘deadlock’ in operating systems.

A

A situation where processes are waiting for each other to release resources, causing them to be stuck indefinitely

20
Q

What is scheduling in an operating system?

A

The process of switching CPU(s) between competing processes in a multi-tasking environment

21
Q

What is time-sharing in the context of scheduling?

A

A method to achieve efficient CPU usage by allowing multiple processes to share the CPU

22
Q

What is round robin scheduling?

A

Each process is assigned a time slice, and after the time is up, it is moved to the back of the queue

23
Q

What is the purpose of priority scheduling?

A

To select the next process based on priority value, with lower numbers indicating higher priority

24
Q

What is the difference between pre-emptive and non-pre-emptive scheduling?

A
  • Pre-emptive: can interrupt a running process to switch to a higher priority process
  • Non-pre-emptive: running processes cannot be interrupted
25
What is a time slice in scheduling?
The maximum amount of time a process can run before being pre-empted
26
What is First Come, First Served (FCFS) scheduling?
Scheduling method where processes are executed in the order they arrive
27
What is the Shortest Time to Completion (STC) scheduling?
Scheduling that selects the process with the shortest time requirement next
28
What is deadlock?
A situation where no progress is possible due to each process waiting for resources held by others
29
What should be mindful of when programming?
Issues related to deadlock and starvation
30
What fundamental topics were covered in relation to operating systems?
* What is a program? * Types of software? * How does an operating system coordinate tasks?
31
Fill in the blank: Starvation is in relation to resources that get depleted during a deadlock and cannot replenish until _______.
progress is made