Philipp Oppermann
|
786e1d5cab
|
Test translate function
|
2015-12-09 15:46:14 +01:00 |
|
Philipp Oppermann
|
d8c6b6f5b7
|
Add and call test_paging function
|
2015-12-09 15:46:14 +01:00 |
|
Philipp Oppermann
|
4fd8891aff
|
Add (buggy) unmap function
|
2015-12-09 15:46:14 +01:00 |
|
Philipp Oppermann
|
d52c79b106
|
Add map and identity_map functions
|
2015-12-09 15:46:14 +01:00 |
|
Philipp Oppermann
|
86d8e99271
|
Make translate and map_to safe by making them RecursivePageTable methods
|
2015-12-09 15:46:14 +01:00 |
|
Philipp Oppermann
|
fb7d2d22b6
|
Add RecursivePageTable as an owner for the P4 table
|
2015-12-09 15:46:14 +01:00 |
|
Philipp Oppermann
|
46b93e0650
|
Add unsafe map_to function and make translate unsafe, too
These functions are unsafe because it's possible to get aliased &mut references.
|
2015-12-09 15:46:14 +01:00 |
|
Philipp Oppermann
|
e84344f59a
|
Add function to translate virtual to physical address
|
2015-12-09 15:46:14 +01:00 |
|
Philipp Oppermann
|
d267ac1c98
|
Define the next_table methods only for P4, P3, and P2 tables
|
2015-12-09 15:46:14 +01:00 |
|
Philipp Oppermann
|
e5a4114262
|
Add unsafe next_table methods
|
2015-12-09 15:46:14 +01:00 |
|
Philipp Oppermann
|
e071c24680
|
Recursive map the P4 table
|
2015-12-09 15:46:14 +01:00 |
|
Philipp Oppermann
|
96b0dc0c66
|
Model page tables
|
2015-12-09 15:46:14 +01:00 |
|
Philipp Oppermann
|
14384fb27f
|
Model page table entries
|
2015-12-09 15:46:14 +01:00 |
|
Philipp Oppermann
|
d827f51bb6
|
Create basic paging module
|
2015-12-09 15:46:14 +01:00 |
|
Philipp Oppermann
|
dabef43db9
|
Reset src to master to be able to follow step-by-stp
|
2015-12-09 15:46:14 +01:00 |
|
Philipp Oppermann
|
9019309d40
|
Many wording improvements
|
2015-12-09 15:46:14 +01:00 |
|
Philipp Oppermann
|
9f509aec80
|
Improve post and rewrite recursive mapping section
|
2015-12-09 15:46:14 +01:00 |
|
Philipp Oppermann
|
fd42d634ad
|
Change title and add some incomplete introduction variants
|
2015-12-09 15:44:17 +01:00 |
|
Philipp Oppermann
|
2b8838459c
|
Add image sources
|
2015-12-09 15:42:45 +01:00 |
|
Philipp Oppermann
|
bf6bcdcc82
|
Add paging introduction
|
2015-12-09 15:42:45 +01:00 |
|
Philipp Oppermann
|
fac58a003a
|
Describe unwrap function
|
2015-12-09 15:42:45 +01:00 |
|
Philipp Oppermann
|
57fbd2efc5
|
Specify some imports
|
2015-12-09 15:42:45 +01:00 |
|
Philipp Oppermann
|
bd00921dac
|
Use expect instead of unwrap
|
2015-12-09 15:42:45 +01:00 |
|
Philipp Oppermann
|
67b30314c4
|
Use relative links for images
|
2015-12-09 15:42:45 +01:00 |
|
Philipp Oppermann
|
e331a6610b
|
Describe p*_index functions
|
2015-12-09 15:42:45 +01:00 |
|
Philipp Oppermann
|
15427b363a
|
Take page by value in mapping functions
(there is no reason to borrow it at the moment)
|
2015-12-09 15:42:45 +01:00 |
|
Philipp Oppermann
|
b314d4827f
|
Move Frame::start_address to memory/mod.rs and use it in identity_map()
|
2015-12-09 15:42:44 +01:00 |
|
Philipp Oppermann
|
6ed376112d
|
PAGE_SIZE is already defined in memory/mod.rs
|
2015-12-09 15:42:44 +01:00 |
|
Philipp Oppermann
|
a279609c26
|
Add images, TODOs, RecursivePageTable::new, and many improvements
|
2015-12-09 15:42:44 +01:00 |
|
Philipp Oppermann
|
557738e705
|
Add a RecursivePageTable::new function
|
2015-12-09 15:42:44 +01:00 |
|
Philipp Oppermann
|
92194d8354
|
Remove unused feature and import
|
2015-12-09 15:42:44 +01:00 |
|
Philipp Oppermann
|
05873d9dae
|
Improve next_table_create
|
2015-12-09 15:42:44 +01:00 |
|
Philipp Oppermann
|
c5fac2647e
|
Merge lock.rs into mod.rs
|
2015-12-09 15:42:44 +01:00 |
|
Philipp Oppermann
|
5113fce8f7
|
Big update and many new sections...
|
2015-12-09 15:42:44 +01:00 |
|
Philipp Oppermann
|
f912dfa506
|
Improve huge_page closure
|
2015-12-09 15:42:44 +01:00 |
|
Philipp Oppermann
|
4aeda180a1
|
Remove old content and add skeletons for new sections
|
2015-12-09 15:42:36 +01:00 |
|
Philipp Oppermann
|
cdaad86a06
|
Change semantics of start_address and containing_address
The page numbers now respect the memory hole between higher and lower half.
|
2015-12-09 15:38:46 +01:00 |
|
Philipp Oppermann
|
c52f58cc4c
|
Rename and use is_unused()
|
2015-12-09 15:38:46 +01:00 |
|
Philipp Oppermann
|
bd05aa7715
|
Add section about type system magic
|
2015-12-09 15:38:46 +01:00 |
|
Philipp Oppermann
|
b1a2c8caad
|
Rename PhantomData field
|
2015-12-09 15:38:46 +01:00 |
|
Philipp Oppermann
|
7005cd7819
|
Start rewriting post for new design
|
2015-12-09 15:38:46 +01:00 |
|
Philipp Oppermann
|
e88de41914
|
Calculate next_table_address through directly through addresses
|
2015-12-09 15:38:46 +01:00 |
|
Philipp Oppermann
|
4a54a24145
|
Reorganize imports
|
2015-12-09 15:38:46 +01:00 |
|
Philipp Oppermann
|
799067f8b1
|
Add Frame::start_address
|
2015-12-09 15:38:46 +01:00 |
|
Philipp Oppermann
|
51f83717d6
|
Use Frame::containing_address
|
2015-12-09 15:38:46 +01:00 |
|
Philipp Oppermann
|
7e5da6c897
|
Modify pointed_frame to return an Option
|
2015-12-09 15:38:46 +01:00 |
|
Philipp Oppermann
|
2d9b619587
|
Begin updating post
|
2015-12-09 15:38:46 +01:00 |
|
Philipp Oppermann
|
6535aa017d
|
Add lock module (name is temporary)
|
2015-12-09 15:38:46 +01:00 |
|
Philipp Oppermann
|
6c5b932fbc
|
Split translate into translate_page and rest
|
2015-12-09 15:38:46 +01:00 |
|
Philipp Oppermann
|
44fd5f682d
|
Some new test printlns
|
2015-12-09 15:38:46 +01:00 |
|