named pipes are FIFO files creatable with mkfifo which allow communication between two _____ on the same host. Network sockets / local domain sockets have mostly superseded them.
processes
Can processes communicate via sockets? _____
Yes
The command _____ show process status
ps
The command _____ sends a job to the foreground
fg
The directory _____ predominantly stores Processes. The directory is a psuedo-filesystem, dynamically created whenever it is accessed
/proc
init (or systemd) is the process with PID _____ that executes system startup scripts.
1
The file /proc/[pid]/stat contains _____
the process's status information (decoded by the ps command)
Each process has one or several execution contexts called _____, each with its own stack and CPU context, but the exact same address space as their process
threads
When you run the command ls: 1. Your input gets read by the shell via getline(). 2. The name is found within your $PATH directories. 3. The clone() _____ duplicates the process, giving the child a new PID. 4. The execve() _____ stops the child and replaces its memory stack with data from the ls binary. 5. The parent process runs wait(), as it will clean after the child process when finished
syscall
The command _____ shows processes of all users
ps -a
A process's _____ determinates how much CPU time it receives
scheduling priority
"When a process is cloned, we call the original process the ""_____"", and we call the clone the ""child"""
parent
The file _____ contains the process's command it's executing
/proc/[pid]/cmd
The command _____ shows processes along with their user/owner
ps -u
All other processes are directly or indirectly the children of _____
The PID 1 process (init or systemd)
The command ps -x _____
shows procceses unattached to any terminal
Cron's asterisk (* * * * *) syntax denotes, in order: minute, hour, _____, weekday
day of the month
When you run the command ls: 1. Your input gets read by the shell via getline(). 2. The name is found within your _____. 3. The clone() syscall duplicates the process, giving the child a new PID. 4. The execve() syscall stops the child and replaces its memory stack with data from the ls binary. 5. The parent process runs wait(), as it will clean after the child process when finished
$PATH directories
The crontab command schedules processes at regular intervals. The cron _____ executes and logs them
daemon
The command fuser _____
identifies the process that is accessing a file
The command jobs _____
lists active jobs
The file _____ contains the process's memory mapping information
/proc/[pid]/maps
The file _____ contains the process's complete command line
/proc/[pid]/cmdline
The file /proc/[pid]/cmdline contains _____
the process's complete command line
Cron's asterisk (* * * * *) syntax denotes, in order: minute, _____, day of the month, weekday
hour
Cron's asterisk (* * * * *) syntax denotes, in order: minute, hour, day of the month, _____
weekday
After a clone(), child processes usually run one of the _____ routines, replacing the process they've copied from their parent
exec()
The command setuid _____
manipulates a process' UID
The file _____ contains the process's symbolic link to its current directory
/proc/[pid]/cwd
The file /proc/[pid]/maps contains the process's _____
memory mapping information
The file /proc/[pid]/statm contains the process's _____
memory usage info
_____ are programs running indefinitely in the background
daemons
A process consists of an address space and a set of data structures in the _____
kernel
The command _____ prints the process tree of a process
pstree -p [PID]
Are PID's (process ID's) unique? _____
Yes
The command setgid _____
manipulates a process's group
The crontab command _____. The cron daemon executes and logs them
schedules processes at regular intervals
The crontab command schedules processes at regular intervals. The _____ daemon executes and logs them
cron
The command kill (without flags) sends the SIGTERM signal to a process. SIGTERM may not necessarily terminate the process, as this particular signal be either caught, _____ or ignored by the process.
blocked
When you run the command ls: 1. Your input gets read by the shell via getline(). 2. The name is found within your $PATH directories. 3. The clone() syscall duplicates the process, giving the child a new PID. 4. The _____ syscall stops the child and replaces its memory stack with data from the ls binary. 5. The parent process runs wait(), as it will clean after the child process when finished
execve()
Each process has one or several execution contexts called threads, each with its own stack and CPU context, but the exact same _____ as their process
address space
Each process has one or several execution contexts called threads, each with its own stack and _____, but the exact same address space as their process
CPU context
After a _____, child processes usually run one of the exec() routines, replacing the process they've copied from their parent
clone()
Before a dead process disappears, its death must be acknowledged by _____, who does so with a call to wait()
its parent
The file _____ contains the process's environment variables
/proc/[pid]/environ
The file _____ contains the process's memory usage info
/proc/[pid]/statm
The command _____ manipulates a process's group
setgid
A file is being read in a thread. The kernel requests the file's content be delivered into the requesting process's address space. Until it finishes, the thread is considered _____.
sleeping
Local domain sockets are connections between processes on the same host, creatable with the ______ system call.
socket
Which Linux syscalls create a new process? _____
clone() copies an existing process, whose running command is replaced to a desired new command via exec()
The command _____ limits the use of system-wide resources for a user
ulimit
A process's scheduling priority determinates how much _____ it receives
CPU time
Can processes communicate via named pipes? _____
Yes
The file _____ contains the process's status information (decoded by the ps command)
/proc/[pid]/stat
The file /proc/[pid]/cwd contains the process's _____
symbolic link to its current directory
The GID is the numeric identificator for a process's _____
group
"When a process is cloned, we call the original process the ""parent"", and we call the clone the ""_____"""
child
Can processes communicate via anonymous pipes? _____
Yes
Cron's _____ syntax denotes, in order: minute, hour, day of the month, weekday
asterisk (* * * * *)
Before a dead process disappears, its death must be acknowledged by its parent, who does so with a call to _____
wait()
The command kill (without flags) sends the _____ signal to a process. _____ may not necessarily terminate the process, as this particular signal be either caught, blocked or ignored by the process.
SIGTERM
The command ps -u _____
shows processes along with their user/owner
A _____ is the abstraction memory, processor time, I/O management and monitoring for a single running program
Process
Do threads share the stack and CPU context with their process? _____
No
When you run the command ls: 1. Your input gets read by the shell via getline(). 2. The name is found within your $PATH directories. 3. The _____ syscall duplicates the process, giving the child a new PID. 4. The execve() syscall stops the child and replaces its memory stack with data from the ls binary. 5. The parent process runs wait(), as it will clean after the child process when finished
clone()
The file /proc/[pid]/environ contains the process's _____
environment variables
The file _____ contains the process's symbolic link to its root directory (set via chroot)
/proc/[pid]/root
The command _____ is the modern version of fork that handles threads
clone()
A process' _____ is a set of memory pages that the kernel has marked for the procesS to use
address space
The command pstree -p [PID] _____
prints the process tree of a process
The command renice _____
changes the priority of a running process
The command _____ displays processes in a user oriented format
ps -u
UTS stands for _____ and it gives a container its own hostname and domain name
Unix Timesharing System
The command ps -a _____
shows processes of all users
The command _____ changes the priority of a running process
renice
The command _____ shows a real-time, interactive list of processes
top
A parent process has died before it could clean up its child processes via a call to _____. What happens to the child processes? The PID 1 process (usually init or systemd) adopts them and calls wait
wait
The command top _____
shows a real-time, interactive list of processes
The command _____ (without flags) sends the SIGTERM signal to a process. SIGTERM may not necessarily terminate the process, as this particular signal be either caught, blocked or ignored by the process.
kill
The command ps _____
show process status
The _____ directory contains the process's information on open file descriptors
/proc/[pid]/fdinfo/
The command kill (without flags) sends the _____ signal to a process. _____ may not necessarily terminate the process, as this particular signal be either caught, blocked or ignored by the process.
SIGTERM
The file /proc/[pid]/root contains the process's _____
symbolic link to its root directory (set via chroot)
Jobs are identified by their _____ and JID (Job ID)
PID (Process ID)
The /proc/[pid]/fdinfo/ directory contains the process's _____
information on open file descriptors
The clone() syscall returns two values. To the parent it returns the PID of the new child. To the child it returns _____. This informs them both of what role they are playing in the forking
0
The _____ command schedules processes at regular intervals. The cron daemon executes and logs them
crontab
The higher the niceness of a process, the _____ priority it has.
lower
Cron's asterisk (* * * * *) syntax denotes, in order: _____, hour, day of the month, weekday
minute
Can processes communicate via SysV queues? _____
Yes
daemons are _____
programs running indefinitely in the background
The command _____ shows procceses unattached to any terminal
ps -x
The file /proc/exe contains the process's _____
symbolic link to the executed file
The command _____ inversely sets the priority of a process (the lower the niceness, the higher the priority)
nice
Can processes communicate via D-Bus? _____
Yes
The command fg _____
sends a job to the foreground
The directory /proc predominantly stores Processes. The directory is a psuedo-filesystem, _____
dynamically created whenever it is accessed
Can processes communicate via SysV semaphores? _____
Yes
Can processes communicate via SysV shared memory? _____
Yes
The command ulimit _____
limits the use of system-wide resources for a user
A process' address space is _____
a set of memory pages that the kernel has marked for the procesS to use
The file /proc/[pid]/cmd contains _____
the process's command it's executing
The command _____ manipulates a process' UID
setuid
A process' _____ is the user identification number (inherited from the parent process) of the user who created it. Usually, only the creator of a process, and the superuser, can manipulate the process.
UID
named pipes are FIFO files creatable with _____ which allow communication between two processes on the same host. Network sockets / local domain sockets have mostly superseded them.
mkfifo
A process' _____ contain variables, code, libraries, stacks and kernel-specific information that the process needs to execute
address space memory pages
When you run the command ls: 1. Your input gets read by the shell via getline(). 2. The name is found within your $PATH directories. 3. The clone() syscall duplicates the process, giving the child a new PID. 4. The execve() syscall stops the child and replaces its memory stack with data from the ls binary. 5. The parent process runs _____, as it will clean after the child process when finished
wait()
A parent process has died before it could clean up its child processes via a call to wait. What happens to the child processes? _____
The PID 1 process (usually init or systemd) adopts them and calls wait
The file _____ contains the process's symbolic link to the executed file
/proc/exe
The clone() syscall returns two values. To the parent it returns _____. To the child it returns 0. This informs them both of what role they are playing in the forking
the PID of the new child
Can processes communicate via FIFO pipes? _____
Yes
When you run the command ls: 1. Your input gets read by the shell via getline(). 2. The name is found within your $PATH directories. 3. The clone() _____ duplicates the process, giving the child a new PID. 4. The execve() _____ stops the child and replaces its memory stack with data from the ls binary. 5. The parent process runs wait(), as it will clean after the child process when finished
syscall
Upon a process's death, does its parent receive a copy of the exit code? _____
Yes
The _____ of a child process refers to the PID of the process from which it was cloned.
PPID
The command kill (without flags) sends the SIGTERM signal to a process. SIGTERM may not necessarily terminate the process, as this particular signal be either caught, blocked or _____ by the process.
ignored
A process's place in the _____ contains its function parameters, local variables, return addresses and temporary data
stack
the _____ syscall creates a copy of the original process, with a new PID
clone()
A file is being read in a thread. The kernel requests the file's content be delivered into the requesting process's _____. Until it finishes, the thread is considered sleeping.
address space
_____ are FIFO files creatable with mkfifo which allow communication between two processes on the same host. Network sockets / local domain sockets have mostly superseded them.
named pipes
A process consists of an _____ and a set of data structures in the kernel
address space
When a process completes, it calls the exit routine, notifying the kernel that it is ready to be die, along with an integer _____ indicating the reason why
exit code
Processes that have finished execution but had not yet been cleaned up by their parent are called _____ processes.
zombie
The command nice _____
inversely sets the priority of a process (the lower the niceness, the higher the priority)
The command _____ identifies the process that is accessing a file
fuser
When a process completes, it calls the _____ routine, notifying the kernel that it is ready to be die, along with an integer exit code indicating the reason why
exit
The command ps -u _____
displays processes in a user oriented format
Do threads share the same address space as their process? _____
Yes
The command kill (without flags) sends the SIGTERM signal to a process. SIGTERM may not necessarily terminate the process, as this particular signal be either _____, blocked or ignored by the process.
caught
The _____ is the numeric identificator for a process's group
GID
_____ are a soft limit on containers - the more of them a container has, the more prioritized it is by a scheduler
CPU shares
The command _____ lists active jobs
jobs
When you run the command ls: 1. Your input gets read by the shell via _____ 2. The name is found within your $PATH directories. 3. The clone() syscall duplicates the process, giving the child a new PID. 4. The execve() syscall stops the child and replaces its memory stack with data from the ls binary. 5. The parent process runs wait(), as it will clean after the child process when finished
getline().
Jobs are identified by their PID (Process ID) and _____
JID (Job ID)
The command clone() _____
is the modern version of fork that handles threads
"A process is considered """"asleep"""" when _____"""
All of its threads are asleep (i.e. waiting for the kernel to finish something for them, like reading contents of a file)
The file _____ directory contains the process's links to open file descriptors
/proc/[pid]/fd/
Each process has one or several execution contexts called threads, each with its own _____ and CPU context, but the exact same address space as their process
stack
The file /proc/[pid]/fd/ directory contains the process's _____
links to open file descriptors