Processes/Threads Flashcards
What is shared by parent and child threads?
- heap (tal)
- memory space
- global/static variables
- open file descriptors
What is NOT shared by parent and child threads?
- stack (pile)
- thread signal mask
- thread-specific registers
Advantages of threads:
- parallelism
- specialisation
- simpler inter-thread communication
Contents of a Process Control Block (PCB)
Identifiers:
- PID (Process ID)
- PPID (Parent process ID)
- User/Group ID
Process state:
- Running
- Ready
- Blocked
- Suspended
- Terminated
Registers/Program counter
Page tables
Open file descriptors
Priority/Queue pointers
Where is the PCB stored?
In the OS’s kernel space
Threads on a single-core CPU can be run _____, but not _____.
concurrently, in parallel
What is shared between parent and child processes?
- code segment
- open file descriptors
- signal handlers
What is NOT shared between parent and child processes?
- address space
- pending signals
- thread context
note: only the thread that
called fork() continues
Ordonnanceur à long-terme
Sélectionne quels processus doivent être placés dans la file d’attente prête (ready queue)
L’Ordonnanceur à long-terme contrôle…
le degré de multiprogrammation (nombre de processus en mémoire)
Ordonnanceur à court-terme
Sélectionne le processus qui doit être exécuté ensuite et alloue le processeur
Stateful Connection
- persistent connection where the server remembers client interactions
- each request relies on previous exchanges (session tracking)
Stateless Connection
- each request is independent; the server does not retain client session data.
- client must send all necessary information with each request.
Swapping occurs when…
memory is full
Swapping moves a process from ____ to ____ and vise versa
RAM, disk
Quel est le terme pour décrire la situation où un processeur a un accès plus rapide
à certaines parties de la mémoire ?
Non-uniform memory access
Command to kill all child processes
abort()
unbounded-buffer
le consommateur peut devoir attendre de nouveaux éléments, mais le producteur peut toujours générer de nouveaux éléments
bounded-buffer
le consommateur doit attendre si le buffer est vide, le producteur doit attendre si le buffer est plein
How many items can be in a buffer?
buffer.size() - 1
processus
une abstraction qui représente une unité de travail dans un environnement informatique
Parallélisme des données
- distribue des sous-ensembles des mêmes données sur plusieurs cœurs
- chaque coeur fait la même opération
Loi d’Amdahl
speedup <= 1/(S + (1-S)/N)
S = proportion sequentielle
N = processeurs
Avantages du Multithreading Un à Un
- plus d’accès simultané que plusieurs à un
- l’application bénéficie de l’implémentation OS du multi-threading en termes de synchronisation, de blocage, etc.