aboutsummaryrefslogtreecommitdiff
path: root/chapter/4
diff options
context:
space:
mode:
authorConnor Zanin <cnnrznn@gmail.com>2016-12-08 21:41:24 -0500
committerConnor Zanin <cnnrznn@gmail.com>2016-12-08 21:41:24 -0500
commitc3094764dd24479be2e801c796c966a646edc234 (patch)
tree53eb9884ffda5ebb46d27b738cdf7088926439b3 /chapter/4
parent7697198aaf2afb40e668f5c86e9c86598e8bffff (diff)
updating the doc
Diffstat (limited to 'chapter/4')
-rw-r--r--chapter/4/dist-langs.md24
1 files changed, 18 insertions, 6 deletions
diff --git a/chapter/4/dist-langs.md b/chapter/4/dist-langs.md
index d4feaec..68f3873 100644
--- a/chapter/4/dist-langs.md
+++ b/chapter/4/dist-langs.md
@@ -75,14 +75,26 @@ A solution designed to solve one problem may exacerbate another.
## Three major approaches to distributed languages:
-### Shared Memory
+### Distributed Shared Memory
-* Definition
+Virtual memory provides a powerful abstraction for processes.
+It allows each program running on a machine to believe it is the sole user of the machine, as well as provide each process with more (or less) memory addresses than may be physically present.
+The operating system is responsible for mapping virtual memory addresses to physical ones and swapping addresses to and from disk.
-* Mirage
-* Linda
-* Orca
-* RPC ( and why RPC is shared-memory )
+Distributed takes the virtual memory abstraction one step further by allowing virtual addresses to be mapped to physical memory regions on remote machines.
+Given such an abstraction, programs can communicate simply by reading from and writing to shared memory addresses.
+Distributed shared memory is appealing because the programming model is the same for local and distributed systems.
+However, it requires an underlying system to function properly.
+
+#### Mirage
+
+#### Linda
+
+#### Orca
+
+
+
+#### RPC ( and why RPC is shared-memory )
Tries to make many machines look like a single machine.
This is hard because of consistency and partitioning.