Malins ID2201

0.0(0)
Studied by 0 people
call kaiCall Kai
Locked
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
GameKnowt Play
Card Sorting

1/135

encourage image

There's no tags or description

Looks like no tags are added yet.

Last updated 3:13 PM on 10/21/25
Name
Mastery
Learn
Test
Matching
Spaced
Call with Kai
Chat

No analytics yet

Send a link to your students to track their progress

136 Terms

1
New cards

What is a soft link in a file system?

a path that is resolved to another path

2
New cards

What is a hard link in a file system?

a mapping of a name to a file identifier

3
New cards

Can two Unix processes simultaneous write to different positions in a single file?

Yes, the two processes will have their own file table entries.

4
New cards

What is the purpose of the Unix lseek operation?

set the read/write pointer of an opened file

5
New cards

How is a NFS client-side cache entry validated?

if the validity was checked less than t seconds ago or if the server modification time is equal to the client modification time

6
New cards

How does a NFS server know at what position to read and write to?

each read and write operation holds the position

7
New cards

What is a dirty-read during a transaction?

reading a value that has not been committed

8
New cards

What is two-phase locking in a transaction?

not taking any locks once a lock has been released

9
New cards

What does it mean that a transaction meets the atomicity property?

either all or no operations in the transaction are performed

10
New cards

What does it mean that a transaction meets the isolation property?

intermediate results must not be visible to other transactions

11
New cards

What does it mean that a transaction meets the durability

property?

the effects of the transaction will remain even if we have a server crash

12
New cards

What is two-phase commit?

a protocol that ensures atomicity in a distributed transaction

13
New cards

What is the problem of using optimistic concurrency control when implementing a transactional server?

if a conflict occurs both transaction must be aborted

14
New cards

What problem could we still have even if two transactions are serially equivalent?

no problems since all conflicting operations are performed in the same order

15
New cards

If the coordinator dies, what information is not enough for a set of servers to complete a two-phase-commit operation?

A majority of servers have sent promises to be able to commit.

16
New cards

In a distributed transaction one often use two-phase commit, why is this better than one-phase commit?

We ensure that if one transaction commits then all transactions will commit.

17
New cards

What is a phantom deadlock?

one that is detected but not stable

18
New cards

What is a view, created by a group membership service?

the set of processes belonging to a group

19
New cards

In a view-synchronous group membership protocol, a process that enters the group, and is included in the delivered view, will be guaranteed to be delivered:

all messages starting from the view where it is included in the group

20
New cards

Assume we have a server that is up with the probability p and use n replicated servers to increase reliability of a service. What will the probability be that the service is up, assuming that we only need one node to be up in order to provide the service?

1 − (1 − p)^n

21
New cards

Why is view-synchronous communication different from reliable multicast?

a message is sent and delivered only by processes belonging to the same view

22
New cards

What is a view in view-synchronous communication?

A set of nodes considered to be alive.

23
New cards

In an active replicated server, how do we know that the replicas are in a consistent state?

they reliably receive all requests in a total order

24
New cards

Why is it important that a primary server in a passive replicated system uses view-synchronous group communication?

so that all or none of the backup servers have received an update before a new primary is elected

25
New cards

What is sent by the primary replica manager to the backup replica manager in a passive replicated system?

A unique identifier, the state change and the response.

26
New cards

Will an active replicated server with multiple front ends, that uses a total order multicaster, handle requests in causal order?

not if clients can communicate with each other in between sending request and receiving reply

27
New cards

A routing strategy, in a distributed hash table of n nodes, would typically have an asymptotic complexity of:

O(log(n))

28
New cards

If a node crashes with probability q and p is the risk of a node crashing during the time it takes to repair successor pointers and s is the number of successor pointers, then what is the risk of loosing a DHT ring?

1 − (1 − p)^s

29
New cards

What is the purpose of hashing in a DHT?

to generate uniformly distributed keys

30
New cards

What is the difference between a URL and a URN?

URN resolve into any replica of a resource matching the URI

31
New cards

How are inconsistencies of the resolver cache handled in the DNS architecture?

each entry has a time-to-live

32
New cards

What is the advantage of using recursive navigation for DNS queries?

servers can hide internal DNS hierarchy

33
New cards

How are inconsistent cached entries removed from a DNS resolver?

all entries have an expiration time set when cached

34
New cards

What is the advantage of a flat name space?

it is a simple solution

35
New cards

How can we make two computer clocks perfectly synchronized?

we can not

36
New cards

What accuracy can be provided using Christian’s algorithm?

±(Tround ÷ 2)

37
New cards

What is the purpose of the Berkeley algorithm?

to perform internal synchronization

38
New cards

What does the reply from a NTP server contain?

send and receive time of request and send time of reply

39
New cards

When is it better to use the Berkeley algorithm rather than NTP for clock synchronization?

when implementing internal synchronization

40
New cards

Assume that a NTP server can not respond to a received request in less than 40 ms, how does this influence the accuracy of synchronizing clients?

synchronization is limited by the network delay plus 40 ms

41
New cards

At time 117 you receive a NTP reply with the following information: request sent at 82, received at 111, reply sent at 120.

How should you adjust your time?

advance 9 steps

42
New cards

What is provided by UDP?

a best effort delivery of messages to a process

43
New cards

What does UDP give us that is not provided by IP?

port addressing

44
New cards

What is provided by TCP?

a full-duplex stream between two processes

45
New cards

What is not provided by TCP?

a guaranteed delivery of messages

46
New cards

When is the TCP window size a limiting factor for high capacity communication?

over a long fat communication link

47
New cards

Which address can be found in the TCP header?

the port number

48
New cards

What is a good reason for choosing UDP rather than TCP?

you have small messages that should be sent with little delay

49
New cards

What is a good reason for choosing TCP rather than UDP?

TCP will guarantee the delivery of a message

50
New cards

What is the maximum TCP capacity in a 100 Mbps link with 250 ms round trip latency using a 64 Kbyte window size?

2 Mbps

51
New cards

What is the maximum TCP capacity in a 100 Mbps link with 25 ms round trip latency using a 64 Kbyte window size?

20 Mbps

52
New cards

One can determine how large the receiver window should be, in for example a TCP connection, in order to maximize he capacity of a link. How is this calculated?

capacity of link times round trip latency of the link

53
New cards

The limiting factor for capacity in a TCP connection, T bps, where the link capacity is C bps, the round trip time R sec and the receiver window W bits is:

the lesser of C and W/R

54
New cards

When estimating the maximum capacity of a TCP connection you need to know:

the minimum link capacity and the round trip

55
New cards

What does it mean that you receive a TCP acknowledgment form a node?

A sequence of bytes have been received by the TCP process on the node.

56
New cards

What is the benefit of a reliable multicast?

messages are guaranteed to be delivered to all correct processes

57
New cards

Can we implement a reliable multicast using only basic multicast?

yes, by re-sending each received message to all other nodes

58
New cards

How can we implement uniform reliable multicast given that we have reliable point to point message passing?

Tag each message with a unique identifier and send it to each node. When receiving a new message you forward it to all nodes in the group and then deliver it to the application layer

59
New cards

We sometimes want to include the behavior of faulty nodes in our requirements and talk about uniform agreement for multicast. What do we mean by uniform agreement?

If any node, including faulty, deliver a message then all correct nodes deliver the message.

60
New cards

What is the difference between uniform agreement and non-uniform agreement for multicast?

Uniform agreement includes the behaviour of non-correct node.

61
New cards

What is the definition of total order multicast?

messages are delivered in the same sequence

62
New cards

What would you call a multicast service that would never deliver a message m2 before another message m1, if m2 was sent as a response to m1?

causal order

63
New cards

When does Ricart and Agrawalas mutual exclusion algorithm perform better than a central solution?

under low congestion when hardly any conflict will occur

64
New cards

What are the requirements for using the Bully algorithm?

we must have reliable failure detectors

65
New cards

How are FIFO, causal and total order multicast related?

a total order is also a FIFO order

66
New cards

In the Bully algorithm, having n nodes, what is the time it takes from calling an election and receiving the result? Assume that we have a multicast support in the network so we can multicast in constant time and that all decisions are in constant time.

O(1), since neither initiating the election nor sending out the result is depending on the number of nodes (we have multicast support)

67
New cards

What is the advantage of a ring based election algorithm compared to the bully algorithm?

more reliable if nodes fail

68
New cards

What is the advantage of a bully algorithm compared to a ring based algorithm?

better turnaround time

69
New cards

What does Lamport clocks give us when implementing distributed mutual-exclusion?

at most one process may enter the critical section at a time (safety)

70
New cards

How can we guarantee that processes, that can crash, communicating over a asynchronous network can reach a non-trivial consensus?

we can not, we can only hope for the best

71
New cards

What is true if A happened before B?

it is unknown if A occurred in real-time before B

72
New cards

What is true if A happened real-time before B?

A could have happened before B

73
New cards

What is true for events A and B?

if A caused B then A happened before B

74
New cards

What can we know with a and b if we use Lamport clocks?

if L(a) < L(b) then a could have caused b

75
New cards

What can we know if we use Lamport clocks?

if, but not only if, a happened before b then L(a) < L(b)

76
New cards

What can we conclude looking at the Lamport clock time stamps of two events?

if L(b) = L(a) then we cannot conclude anything about a and b

77
New cards

What is the most that we know if we use vector clocks?

V (a) < V (b) if and only if a happened before b

78
New cards

Which is the most natural representation of a vector clock?

a record with one element per process

79
New cards

What is the difference between a Lamport clock and a vector clock?

only the vector clock gives a complete description of the ”happened before order”

80
New cards

When is it problematic to use vectors clocks?

when we have a dynamic set of processes

81
New cards

An alternative way of implementing a vector clock would be to keep a set of the highest counters seen from each process (including own), send it along with any message, update own counter and merging the own set and received set when a message is received. This would have the following advantage:

new processes can easily be added

82
New cards

If events in a given set are to be ordered in a total order that respect the happened before order what is the advantage of using vector clocks?

if tow events are unordered only vector clocks can order them

83
New cards

Is it possible to produce a total order of a set of events stamped with a Lamport time that does not violate any causal relationship?

yes, order them in the Lamport time stamp order

84
New cards

What is the definition of a consistent cut?

if e is in the cut and f happened-before e then f is in the cut

85
New cards

Why is the notion of consistent cut important?

it defines a state that did occur during an execution

86
New cards

What is the definition of a stable global state predicate?

if a system enters a state where the predicate holds true it will remain true in all future states

87
New cards

What is the definition of a unstable global state predicate?

the predicate could hold true in a state but then be false in future states

88
New cards

Give an example of a stable global state predicate.

deadlock

89
New cards

What do we know if we record a snapshot using the algorithm by Chandy and Lamport?

there is a linearizations from the state described by the snapshot and a state that did occur in the execution

90
New cards

Assuming that we collect all state transitions of nodes and have them tagged with vector clocks what can we then do?

for any unstable predicates determine if it was true during the execution

91
New cards

How can we detect that a non-stable predicate definitely was true during an execution?

generate all consistent runs and show that the predicate is true at one point in all

92
New cards

What is the purpose of the marshaling procedure?

to encode application layer structures in an external form

93
New cards

What is a gossip protocol?

A protocol where peers randomly exchange messages to achieve, for example, unreliable multicast.

94
New cards

What is meant by time uncoupling in a communication framework?

Sender and receiver need not be active at the same time.

95
New cards

What is meant by space uncoupling in a communication framework?

A sender does not need to know the name or identifier of the receiver.

96
New cards

What is meant by an idempotent operation?

n operation that can be performed several times with the same effect as being performed once.

97
New cards

What is meant by causal ordering in a communication framework?

If a client is delivered two messages m1 and m2, then m1 could not have been sent by someone after having being delivered m2.

98
New cards

How are arguments passed in Java RMI?

remote objects as reference, all other as copies

99
New cards

Which invocation semantic is provided by Java RMI?

at most once

100
New cards

What level of transparency is provided by method invocation in Java RMI?

access and location transparency