Rev 37 | Rev 39 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 37 | Rev 38 | ||
---|---|---|---|
Line 22... | Line 22... | ||
22 | 22 | ||
23 | <listitem> |
23 | <listitem> |
24 | Allowing, in general, to load and execute two programs that are linked on the same address without complicated relocations. |
24 | Allowing, in general, to load and execute two programs that are linked on the same address without complicated relocations. |
25 | </listitem> |
25 | </listitem> |
26 | </itemizedlist></para> |
26 | </itemizedlist></para> |
- | 27 | ||
- | 28 | ||
- | 29 | <para><!-- |
|
- | 30 | ||
- | 31 | TLB shootdown ASID/ASID:PAGE/ALL. |
|
- | 32 | TLB shootdown requests can come in asynchroniously |
|
- | 33 | so there is a cache of TLB shootdown requests. Upon cache overflow TLB shootdown ALL is executed |
|
- | 34 | ||
- | 35 | ||
- | 36 | <para> |
|
- | 37 | Address spaces. Address space area (B+ tree). Only for uspace. Set of syscalls (shrink/extend etc). |
|
- | 38 | Special address space area type - device - prohibits shrink/extend syscalls to call on it. |
|
- | 39 | Address space has link to mapping tables (hierarchical - per Address space, hash - global tables). |
|
- | 40 | </para> |
|
- | 41 | ||
- | 42 | --></para> |
|
27 | </section> |
43 | </section> |
28 | 44 | ||
29 | <section> |
45 | <section> |
30 | 46 | ||
31 | 47 | ||
32 | <title>Paging</title> |
48 | <title>Paging</title> |
33 | 49 | ||
34 | - | ||
35 | - | ||
36 | <para>Virtual memory is usually using paged memory model, where virtual |
50 | <para>Virtual memory is usually using paged memory model, where virtual |
37 | memory address space is divided into the <emphasis>pages</emphasis> |
51 | memory address space is divided into the <emphasis>pages</emphasis> |
38 | (usually having size 4096 bytes) and physical memory is divided into the |
52 | (usually having size 4096 bytes) and physical memory is divided into the |
39 | frames (same sized as a page, of course). Each page may be mapped to some |
53 | frames (same sized as a page, of course). Each page may be mapped to some |
40 | frame and then, upon memory access to the virtual address, CPU performs |
54 | frame and then, upon memory access to the virtual address, CPU performs |
Line 100... | Line 114... | ||
100 | <para>- vztah task ~ adresovy prostor: teoreticky existuje moznost, ze |
114 | <para>- vztah task ~ adresovy prostor: teoreticky existuje moznost, ze |
101 | je adresovy prostor sdilen vice tasky, avsak tuto moznost nepouzivame |
115 | je adresovy prostor sdilen vice tasky, avsak tuto moznost nepouzivame |
102 | a neni ani nijak osetrena. Tim padem plati, ze kazdy task ma vlastni |
116 | a neni ani nijak osetrena. Tim padem plati, ze kazdy task ma vlastni |
103 | adresovy prostor</para> |
117 | adresovy prostor</para> |
104 | </section> |
118 | </section> |
- | 119 | ||
- | 120 | ||
- | 121 | ||
105 | </section> |
122 | </section> |
106 | 123 | ||
107 | <section> |
124 | <section> |
108 | <title>Virtual address translation</title> |
125 | <title>Virtual address translation</title> |
109 | 126 |