ch.4 Flashcards

1
Q

what are the issues with soft modularity?

A
  1. caller and callee share a memory
    - write to something its not suppose to
    - arbitrary access to state (no boundaries)
    - buffer overflow attacks
  2. caller and callee share an interpreter
    - no control over runaway modules (propagation of effects)
    - no module level permission (modules can delete its entire self)
    - cannot mange permissions
    - modules share fate (prop of effects)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

what are the advantage of a client server model?

A
  1. don’t rely on shared state
  2. many errors cannot propagate as requests are marshaled
  3. can limit the time it waits for a response ( no infinite loops)
  4. only communicate using messages, so it encourages well-defined interfaces
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

what are two challenges of a client server mode?

A
  1. improper timeouts could lead to a functions running too many times (server needs enough time to process requests)
  2. the server could fail to send back a request
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

what are remote procedure calls? (RPC)

A

a protocol that one program can use to request a service from a program located in another computer on a network without having to understand the network’s details

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

what is idempotence?

A

doesn’t change the state of the program, side effect free & can be executed multiple times

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

synchronous RPC

A

the client is forced to wait for the server before proceeding with further actions

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

asynchronous RPC

A

the server can perform tasks while the client also performs tasks

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