Key Concepts in Operating Systems and Process Management

0.0(0)
studied byStudied by 0 people
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
Card Sorting

1/19

encourage image

There's no tags or description

Looks like no tags are added yet.

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

20 Terms

1
New cards

file descriptor

An integer index pointing into the kernel's open file table.

2
New cards

fread() and fwrite()

Only when the buffer needs to be filled or emptied.

3
New cards

short count

When read() or write() processes fewer bytes than requested.

4
New cards

const in a pointer parameter

It prevents the function from modifying the data pointed to.

5
New cards

process environment

A list of strings containing name/value pairs (e.g., PATH=/usr/bin).

6
New cards

pipe | in Bash

Sends stdout of one program to stdin of another.

7
New cards

GDB (GNU Debugger)

Pause/resume execution and inspect variables during debugging.

8
New cards

stack segment

Function params, local variables, and CPU state.

9
New cards

exit handler

A function that runs when exit() or return from main() occurs, but not on abnormal termination.

10
New cards

abnormal termination

When a process is terminated due to a signal with a default terminate disposition (e.g. SIGKILL).

11
New cards

signal mask

Blocks delivery of signals until they are unmasked.

12
New cards

signal disposition

The behavior assigned to a signal: default, ignore, or custom handler.

13
New cards

asynchronous signal handling

Signals can interrupt the program at any time.

14
New cards

orphaned processes

They are adopted by the init or systemd process.

15
New cards

execve()

Replaces the current process image with a new program.

16
New cards

race condition

When output depends on the order of execution between processes or threads accessing shared resources.

17
New cards

fork() + printf() output

Any interleaving of parent/child printf() calls due to concurrent execution (e.g. 2A1A, 1AA2, etc.).

18
New cards

errno

A global variable set when system calls fail; holds the error code.

19
New cards

malloc()

Scans the heap for available memory and allocates dynamically; expands heap if necessary.

20
New cards

virtual memory

An abstraction of memory that can exceed physical RAM and offers isolation and security.