Chapter 3 - Processes Flashcards

1
Q

Cascading termination

A

If a process terminates in any fashion, then all children are also terminated. Seen in Windows.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Zombie

A

Process that has terminated, but whose parent has not yet called the WAIT() function. Every process is a zombie at some point, but generally only for a brief moment.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Orphan

A

Parent process does not call WAIT() and instead terminates, leaving its child process alone.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Shared memory

A

Page 122. Model of interprocess communication. A region of memory that is shared by cooperating processes. Processes can read/write data to the shared region. Can be faster than message passing.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Message passing

A

Page 122. Model of interprocess communication. Communication occurs by means of messages exchanged between cooperating processes. Useful for exchanging smaller amounts of data because no conflicts need to be avoided. Easier to implement in a distributed system. Used for Netflix, etc.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Non-blocking

A

Page 126. Send a message and move along – do not wait for RECEIVE(). Part of message passing.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Blocking

A

Page 126. Send a message and enter the [Waiting] state until RECEIVE() occurs. Part of message passing.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

[Flowchart] Message passing mechanisms

A

Message passing mechanisms > Direct > Symmetric
MPM > Direct > Asymmetric
MPM > Indirect > OS owns mailbox
MPM > Indirect > Process owns mailbox

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Direct interprocess communication (Symmetric)

A

SEND(PID1, message) . . . RECEIVE(PID2, message)

Need to know each other’s PID before communication.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Direct interprocess communication (Asymmetric)

A

SEND(PID1, message) . . . RECEIVE(&PID2, message)
OS supplies the sender’s PID in place of &PID2.
Need to know each other’s PID before communication.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Indirect interprocess communication (OS owns)

A

SEND(mailbox1, message) . . . RECEIVE(mailbox1, message)
SSC may create the mailbox, but the OS can own it – OS-owned mailboxes afford greater flexibility. Many processes can read/write to this mailbox. If the process is terminated, the mailbox may persist.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Indirect interprocess communication (Process owns)

A

SEND(mailbox1, message) . . . RECEIVE(mailbox1, message)

If the process owns it, only the process can read from the mailbox unless it allows other processes to read from it.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Mailbox

A

Also called port. An object into which messages can be placed by processes and from which messages can be removed (‘received’). Each mailbox has a unique ID. Used with indirect communication.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Blocking send

A

“If I can’t do what I want, I’m gonna go to sleep.”

The sending process is blocked until the message is received by the receiving process or by the mailbox.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Nonblocking send

A

The sending process sends the message and resumes operation without waiting for message receipt.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Blocking receive

A

The receiver blocks until a message is available.

17
Q

Nonblocking receive

A

The receiver retrieves either a valid method or a null.

18
Q

Rendevous

A

Occurs between the sender and receiver when both SEND() and RECEIVE() are blocking.
Zero capacity mailbox.
Helps each process know roughly where the other process was.

19
Q

Channel capacity + three types of capacity

A

How many unread messages may sit in a mailbox.
“Unbounded capacity” = SEND() can never block, because the mailbox can never be full. “System with automatic buffering.”
“Bounded capacity” = SEND() must block until space is available. “System with automatic buffering.”
“Zero capacity” = mailbox cannot have any messages waiting in it. SEND() must block until the recipient receives the message. “Message system with no buffering.”

20
Q

Socket

A

Page 136.
Endpoint for communication.
Two processes communicating over a network use two sockets – one for each process. Identifiable by an IP address concatenated with a port number (146.86.5.20:1625).
Generally use client-server architecture.

21
Q

Connection-oriented (TCP) sockets

A

Page 137.

22
Q

Connectionless (UDP) sockets

A

Page 137.

23
Q

Loopback

A

Page 138.

24
Q

Port

A

Page 139.

25
Q

Pipe

A

Page 142.

26
Q

CHAPTER SUMMARY

A

Page 147.

Memorize this as much as possible.

27
Q

Hardware context

A

Includes general purpose registry, etc.