Software and Software Development Flashcards
What is an operating system?
Software that allows the user to communicate with the computer without dealing with the complexities of the hardware. It controls the hardware of the system through software.
What is the purpose of utility software?
To perform maintenance tasks for the system such as antivirus, backup, etc.
What is the purpose of memory management?
Allocates memory to different programs in RAM. It prevents data from being overwritten and allows programs larger than main memory to run via virtual memory.
What is paging?
Memory is divided into fixed size chunks called pages. Relatively inactive pages are temporarily moved into virtual memory when the user wants to run more programs than can be stored in RAM.
What is segmentation?
Memory is divided into logically sized segments so that they can be executed.
What is an interrupt and how is it dealt with by the OS?
An interrupt is a signal sent to the processor to request processing time for a task.
- The CPU receives the interrupt and disables all interrupts of a lower priority
- An exact copy of the registers in the CPU are put in a system stack
- The CPU processes the interrupt
- The values from the stack are popped back into the registers
- The CPU continues from where it left off
What is the need for scheduling?
To effectively and fairly allocate processor time to different tasks.
Describe round robin scheduling.
FIFO
Each job is allocated a specific time slice and if the task is not completed by then it is sent to the back of the queue.
Describe first come first served scheduling.
FIFO
•No regard for priority or job time
•Inefficient use of processor time
Describe multi-level feedback queues.
Gives priority to short and I/O bound processes
Processors are separated into different levels
What are network operating systems?
Network operating systems control the movement of data around a network through use of an agreed protocol. It ensures fair allocation of resources and access to files dependent on the user.
What is a distributed operating system?
A system which shares processing time between the processors on a network.
What is an embedded system?
An embedded system has minimal user interface, limited memory and processing power, and is inside a larger machine to control it.
What is a multi-tasking system?
Many tasks can be carried out concurrently as tasks are all receiving processor time.
What is a single user system?
When only one user can use the system at one time.