Midterm 1 Flashcards
What is an operating system?
Hard to define precisely, but basically allows other programs and people to make the hardware useful
What does a modern OS do?
Provides abstractions
Provides standard interface
Mediates resource usage
Consume resources
What three parts make up the operating systems?
Kernel – schedules programs the user wants to run
Userspace – allows a person to run programs
What types of things should the kernel do?
Interrupt handlers
Scheduler – who is currently on the block
(This is the part of the OS always in memory)
True or false. Tasks and processes are the same
True
However, multitasking and multiprocessing are different
What is a shell?
A task that functions as an interface between the user and an operating system, or an interface between programs.
If we have the option to use #define (preprocessor) or the compiler, which should we use?
Compiler
Compiler variable will always take less than or equal to the memory of the #define variable. Errors with the variable will also be very confusing if its done with the preprocessor.
What does on OS pass to an new task’s main function?
Two variables, argc and argv
argc is the size of the argv array and it can never be zero
What is required of the “host” for our OS to work properly?
Non-blocking access to an input (keyboard) character
An assembly instruction to change the computer’s stack pointer
What is a systems program?
Program associated with the OS
What is an applications program?
Program not associated with the OS
What is middleware?
Not an OS, not an application, its in the middle
Additional frameworks for developers
Another level of abstraction between the application and the OS
Code that might protect me, do multiple actions on a single commands, etc
What is firmware?
Hardware initialization software
What is a bootstrap program?
Initial program executed on PU (physical unit)
What is a daemon?
Kernel associated services
What is a device driver?
Device controller software
What is asymmetric multiprocessing? Symmetric multiprocessing?
Each processor is assigned as specific task in asymmetric multiprocessing
Symmetric multiprocessing is when any processor can do any task, or in other words, they use the same shared memory
What is a processor?
Controls the operation of the computer and performs its data processing functions. When there is only one processor, it is often referred to as the central processing unit (CPU).
What is main memory?
Stores data and programs. This memory is typically volatile; that is, when the computer is shut down, the contents of the memory are lost. In contrast, the contents of disk memory are retained even when the computer system is shut down. Main memory is also referred to as real memory or primary memory.