Multitasking Flashcards

1
Q

What is Multitasking?

A

Multitasking enables a computer to execute multiple tasks or processes simultaneously. Multiple programs can be managed and run at once. Modern systems use Dynamic Multitasking.

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

Why is Multitasking important?

A

Processors are very fast, but users and peripherals are slow. Processors may spend a lot of time not doing anything, either waiting for user input or a disk to read data. Multitasking minimizes waiting time by executing other processes.

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

How does Multitasking work?

A

The processor switches between different tasks every few milliseconds.

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

What is a Timeslice?

A

A Timeslice is the length of time a task is given to run before it is interrupted. It is not a set length, can very. Organised by the Scheduler.

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

What are Task States?

A

A processor can be in 3 states: Running, Ready, and Waiting.

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

What is the Running state?

A

The task is executing right now.

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

What is the Ready state?

A

The task is not currently running, but it could run if it is allowed by the Scheduler. It is in the pool of tasks to run eventually.

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

What is the Waiting state?

A

The task cannot run. It is waiting for I/O data or something else, and cannot do anything until that condition is satisfied.

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

Describe the Tasks process

A

Tasks begin at a Ready state. Eventually they’re scheduled to the Running state. At some point they are either blocked and go to the Waiting state, or they are pre-empted and return to the Ready state to allow other tasks to run. If blocked, they will eventually be unblocked when data arrives.

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

What is a Context Switch?

A

Context Switching is when an Operating System saves the context or state of a running process so that it can be restored later, and then loading the context or state of another process and running it.

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

What are the disadvantages of a Context Switch?

A

Has a cost in time and energy. One of the challenges of the OS is to minimize that by keeping context switches to a minimum but giving a fair chances for all tasks to complete and not miss urgent tasks.

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

What is the Scheduler?

A

The Scheduler is part of the Operating System Kernal and is software that schedules the processes in the Operating System. it helps keeps computer resources busy and efficient. It uses the round-robin system.

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

What are key features of the Scheduler?

A

Picks which task to run next. Round-Robin system is fair, but inefficient. Not all tasks are equally important or urgent.

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

What is Time Sharing?

A

Time Sharing allows multiple users to access computer resources for a specified Time Slice.

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

What is the difference between Time Sharing and Multi-tasking?

A

Time Sharing allows multiple users to access computer resources whereas multi-tasking focuses on running different applications at the same time.

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

How many priority levels does Windows have?

A

32 (16-31 are for real-time processes [not swappable]; 0-15 are for dynamic applications [swappable, for non-critical parts of OS)

17
Q

How does time-sharing relate to multitasking?

A

Time-sharing is a technique where the CPU time is shared among multiple users or processes. It’s a method to implement multitasking, allowing multiple users or tracks to use a single system by dividing CPU time into small time slices equitably.