aboutsummaryrefslogtreecommitdiff
path: root/01_dynamic_linking
diff options
context:
space:
mode:
Diffstat (limited to '01_dynamic_linking')
-rw-r--r--01_dynamic_linking/README.md15
1 files changed, 9 insertions, 6 deletions
diff --git a/01_dynamic_linking/README.md b/01_dynamic_linking/README.md
index 6c0dd5d..b80d055 100644
--- a/01_dynamic_linking/README.md
+++ b/01_dynamic_linking/README.md
@@ -20,12 +20,15 @@ over to the mapped program which then executes.
```
A dynamically linked program on the other hand needs to specify a `dynamic
-linker` which is basically a runtime interpreter. The Linux Kernel will additionally load
-that interpreter into the virtual address space and give control to the
-interpreter rather than the user program.
-The interpreter will prepare the execution environment for the user program by
-for example loading dependencies and running initialization routines. After the
-environment is set up the dynamic linker passes control to the user program.
+linker` which is basically a runtime interpreter. The Linux Kernel will
+additionally load that interpreter into the virtual address space and give
+control to the interpreter rather than the user program.
+The interpreter will prepare the execution environment for the user program
+and pass control to it afterwards.
+Typical tasks of the interpreter are:
+- loading shared objects into memory
+- performing re-location
+- running initialization routines
```text
@vm @vm
| | | |