Operating Systems Flashcards

1
Q

What is the application software designed to do?

A

Solve a specific problem.

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

Describe the system software.

A

-Programs dedicated to manage the computer.
-Provides a platform to other software
-provides a general environment

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

What are the two types of system softwares?

A

Operating systems and Utility Software

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

Describe one of the two types of system softwares.

A

Operating System:
It interacts directly with the hardware to provide an interface to other system software and with application software whenever it wants to use systems resources (resource abstraction).
It increases overall performance and allows different application software to use different parts of the computer at the same time. It also decreases the time to execute programs.

Utility Software:
System software desgined to help analyse, configure, optimise or maintain a computer e.g data compression, disk cleaners, system moniters etc. It includes all systems and programs on a computer system that maintain its functionality.

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

What is resource abstraction?

A

Taking the overview and only taking the main/ important points. It provides an abstract model of the operation of the hardware components. It is good but will not work for specific things because abstraction will not focus on it.

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

What is resource sharing? What are the 2 types of sharing?

A

Abstract and physical resources may be shared among a set of concurrently executing programs. There are two types of sharing: Space multiplex sharing and Time multiplex sharing.

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

Name and describe the two types of resource sharing.

A

Space Multiplex Sharing: resource is divided into distinct units that can be used independently.
Time Multiplex Sharing:
a process gets exclusive control of the entire resource for a short period of time.

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

What components are in the OS organisation and what do they do?

A

Process and resource manager: uses the abstraction provided by the other managers, handles resource allocation.
Memory manager: in charge of the implementation of the virtual machine.
File Manager: abstracts device I/O operations into a relatively simple operation.
Device Manager: handles the details of reading and writing the physical devices with a device driver.

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

What are some of the functional requirements of the components of the OS organisation?

A

Processes-> creation, termination, control, exception handling, protection, synchronisation and communication, and resource allocation/deallocation.
File System Management-> space allocation/deallocation, protection, sharing, security, physical resource abstraction.
Memory Management-> allocation/deallocation, protection and sharing.
I/O devices-> allocation/deallocation, protection and sharing, physical resource abstraction.

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

Name and describe the 5 Systems of the OS.

To do with the evolution of the OS

A
  1. Batch System-
    Service collection of jobs (batch) from a queue. There is no interaction with programs while they operate. Job Control Language allows defining how to run batches. Memory is divided into 2 parts: system memory and program memory.
  2. Multiprogramming OS-
    Loading programs into ‘space multiplexed’ memory while ‘time multiplexing’ the processor. Some common features include: Multitasking (multiple processes sharing machine resource), Hardware support, Multi-user and multi-access support, Optional support for real time operations, interactive user interfcace (high priority).
  3. Time sharing Systems-
    The main aim was to support multiprogramming and multi user. Introduced: Time slice scheduling, Memory protection support and inter-process communication support.
  4. Real Time OS-
    Real time OS supports multiprogramming/multitasking. The main goal is to minimise the respone time to service external events. It is used when a large number of critical tasks need to be executed in a limited time (priority based preemptive scheduling)
  5. Distributed OS-
    The goal behind this OS is decentralisation. It is based on computer network technologies, has a client-server application architecture and its main concerns are security and protection.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What is a job in the context of the Batch sytems OS?

A

A predefined sequence of commands, programs and data combined into a single unit.

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

What is decentralisation in a Distributed OS?

A

When there is no central authority to control access to data or logic that resides within a network

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

What are the two types of OS implementations? Briefly describe them

A

Monolithic OS-
Building everything in 1 step.
Too complex to manage.

Hierarchical OS-
Each component has its own thing.
Slower but levels are well defined.

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

Name and describe the 4 implementation considerations when implementing an OS.

A

Multiprogramming-
(switching rapidly between programs). In multiprogramming, each program is allowed to execute for a fixed amount of time (timeslice), when its timeslice ends, a context switch occurs ( OS stops it, removes it and gives the processor another program).

Protection-
To achieve protection, OS’s have full control over the resources of the system (including processor, memory and I/O devices). The main 3 things are:
- The results of any rpogram runnign must be the same as if the program was the only program running.
- Programs must not be able to access other program’s data and must be confident that their data will not be modified by other programs.
- Programs must not interfere with other programs’ use of I/O devices.
Each program operates as if it were the only program, occupying a full set of the address space in its virtual space. The OS is translating memory addresses that the program references into physical addresses.

Processor Modes-
Operating modes that place restrictions on operations that can be performed (some microprocessors allow for multiple levels to be designed). The mode bit indicates the current mode of execution.
Supervisor mode: The processor can execute any instructions. Supervisor/Privileged/Protected instructiions can only be executed in supervisor mode. Execution process has access to both memory spaces.
User mode: The processor can execute a subset of the isntruction set. Executing process has access on both memory spaces.
Hardware supported CPU modes help the OS to enforce rules that prevent viruses, spyware and/or similar malware to run.
Kernel (/nucleus)-
(executes in supervisor mode) It operates as trusted software by implementing protection mechanisms and providing the lowest level abstraction layer for resources.

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

Name and describe 3 methods for requesting System services.

A

Command Line Interface-
A key pressed by the user generates a hardware interrupt. A specialised module of the OS reads the keyed character and then stores it in a special comman line buffer. The end of line is detected and the command interpreter (shell) takes control.

System Call-
The parameters of the call are passed according to the specific OS convention and hardware architecture. Switching to supervisor mode, a special module takes over that will analyse the parameters and the access rights. If accepted, the corresponding routine from the OS is executed and the result is returned to the User.

Messages-
User process contructs a message that describes a desired service, uses the send function to pass the message to a trusted OS process (for checking, and delivering to the process). Meanwhile the user waits for results with a message recieve operation. When the kernel finishes processing the request, it sends a message back to the process.

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