Commit Graph

78 Commits

Author SHA1 Message Date
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
5113fce8f7 Big update and many new sections... 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
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
7005cd7819 Start rewriting post for new design 2015-12-09 15:38:46 +01:00
Philipp Oppermann
2d9b619587 Begin updating post 2015-12-09 15:38:46 +01:00
Philipp Oppermann
204a9d9c9d Add some sections (now outdated) 2015-12-09 15:38:46 +01:00
Philipp Oppermann
907f51bb5b Add section about modifying table entries 2015-12-09 15:38:45 +01:00
Philipp Oppermann
882af6f14e Make p{1,2,3}_table functions unsafe 2015-12-09 15:38:45 +01:00
Philipp Oppermann
cf5e2715ae Add section about translating virtual addresses 2015-12-09 15:38:45 +01:00
Philipp Oppermann
08a9743caa Describle implementation of recursive mapping 2015-12-09 15:38:45 +01:00
Philipp Oppermann
90dba32898 Add “Mapping Page Tables” section and extract page table entry flags 2015-12-09 15:38:45 +01:00
Philipp Oppermann
6462a3263c Add basic module and corresponding documentation 2015-12-09 15:38:33 +01:00
Philipp Oppermann
6b72dd8223 Remove Lock structure again as we changed design 2015-12-08 22:20:19 +01:00
Philipp Oppermann
f917bd67a1 Begin paging module 2015-12-08 22:20:19 +01:00
Philipp Oppermann
0e574426c5 Add recursive mapping and start describing it 2015-12-08 22:20:19 +01:00
Philipp Oppermann
38849516a1 Add preliminary outline for next post 2015-12-08 22:20:19 +01:00
Philipp Oppermann
f1f1e66dce Improve wording (frame instead of page) 2015-12-03 18:41:51 +01:00
Philipp Oppermann
2d069d636f Add a note about Mac OS and virtual machines 2015-11-28 18:04:37 +01:00
Philipp Oppermann
0a6a174e54 Fix broken markdown link 2015-11-24 00:18:32 +01:00
Philipp Oppermann
e52d8bcfd2 Specify raw ISO format explicitely to avoid QEMU warning 2015-11-24 00:08:34 +01:00
Philipp Oppermann
43924afbbf Make internal links relative 2015-11-23 23:42:35 +01:00
Philipp Oppermann
84813d9b08 Recommend multirust override nighly
Resolves #53
2015-11-22 23:04:32 +01:00
Philipp Oppermann
a8600a00b6 Don't derive Copy/Clone for Frame so we can be sure that it's free
If a Frame would be clonable or even Copy, the frame could be freed (e.g. passed to deallocate_frame) and used thereafter. Or it could be freed multiple times.
2015-11-19 19:56:22 +01:00
Philipp Oppermann
88eb0636f3 Don't set write protect bit as we don't need it now 2015-11-19 15:26:58 +01:00
Philipp Oppermann
0e31d4a221 Fix #48 2015-11-19 15:23:25 +01:00
Philipp Oppermann
25122bc05c Correct the reason for using clone 2015-11-16 15:01:39 +01:00
Amit Levy
fc55d6dc06 Small grammar nit in "Entering Longmode" post
'a' vs 'an'
2015-11-15 14:17:27 -05:00
Amit Levy
a1d744cf5a Fix typo in "Entering long mode"
I think there is a typo in the section describing how the P2 mapping is set up. The corresponding code sets _P2_'s third entry.
2015-11-15 13:55:58 -05:00
Philipp Oppermann
ced6edbdd1 Discuss alternative frame stack designs 2015-11-15 17:13:20 +01:00
Philipp Oppermann
f997f1f0f0 Small wording improvement 2015-11-15 12:00:03 +01:00
Philipp Oppermann
96cee9ab2b Link github repository 2015-11-15 12:00:03 +01:00
Philipp Oppermann
5de4255fca Add a conclusion to the allocating frames post 2015-11-15 12:00:03 +01:00
Philipp Oppermann
78c2fd6acc Many small improvements 2015-11-15 12:00:03 +01:00
Philipp Oppermann
28c56f2c06 Publish Allocating Frames post 2015-11-15 12:00:03 +01:00
Philipp Oppermann
18d397b48d Some improvements to the allocating frames post 2015-11-15 12:00:03 +01:00