1/27
These flashcards encapsulate critical concepts about operating systems and processes, helping students prepare for exams.
Name | Mastery | Learn | Test | Matching | Spaced |
---|
No study sessions yet.
What is virtualization in the context of operating systems?
Virtualization refers to the abstraction of CPU, memory, and storage resources.
What are the different states of a process?
New, Ready, Running, Waiting/Blocked, Terminated.
What is the function of the fork() system call?
It creates a new process by duplicating the calling process.
What does the exec() function do in process management?
It replaces the current process's code with a new program, effectively executing a different program.
What is a Process Control Block (PCB)?
A data structure that contains information about a process, including its state, PID, and memory allocation.
What is the difference between a program and a process?
A program is an on-disk executable file, while a process is a representation of a program in execution in memory.
What occurs during a context switch?
The OS saves the state of the current process and loads the state of the next process to be run.
What is a thread in the context of operating systems?
A thread is a sequential execution stream within a process that shares the process's resources.
What is the purpose of the wait() system call?
It suspends execution of the calling process until one of its child processes exits.
What is a signal in the context of process management?
Signals are a mechanism allowing processes to communicate with each other, often used for notifying events or actions.
What characterizes preemptive multitasking?
The OS can interrupt and pause a running process to switch to another process to ensure fair CPU time allocation.
What does the term 'user mode' refer to?
This is the mode in which user applications run with limited privileges.
What are the advantages of multi-threading?
Increased parallelism, improved CPU utilization, and reduced latency by overlapping I/O operations.
What does pthread_join() do?
It allows one thread to wait for another thread to finish execution and retrieve its return value.
What happens when a process calls exit()?
The process terminates, releasing its resources and signaling its parent.
What is limited direct execution?
A strategy to execute user programs directly on the CPU with restricted access to resources.
How does the OS handle a trap generated by an interrupt or syscall?
The OS saves the current state, switches to kernel mode, handles the trap, and then returns to user mode.
What is the role of the scheduler in an operating system?
To decide which process in the ready queue gets to execute next on the CPU.
What is a thread control block (TCB)?
A data structure similar to a PCB, which contains information specific to a thread.
What does the term 'zombie process' refer to?
A process that has completed execution but still has an entry in the process table because its parent hasn't collected its exit status.
What are the three types of traps in operating systems?
Interrupts, exceptions, and system calls.
What is the purpose of the execvp() function?
To execute a program with a given set of arguments while replacing the calling process's image.
What is an idle state in CPU management?
A state where the CPU is not executing any process.
What prioritizes scheduling decisions in an operating system?
The scheduling policy determines how processes are prioritized for execution by the CPU.
What are the implications of using global variables in multithreading?
They can lead to race conditions if not properly synchronized.
What should be done if a thread is no longer needed?
It should either be joined or detached to properly release resources.
What is a key drawback of the First Come First Served (FCFS) scheduling algorithm?
It can lead to the convoy effect, causing shorter jobs to wait behind longer ones.
In terms of process API, what does the term 'parent process' refer to?
The original process that creates one or more child processes.