Commit Graph

451 Commits

Author SHA1 Message Date
Philipp Oppermann
9469dc5891 Remove coarse class from ToCs
We will add it dynamically via javascript when the Toc is higher than the viewport.
2016-07-28 19:42:37 +02:00
Anton Strömkvist
6b2f1281ae Fix hex constant (#193)
I assume these were in the wrong order since all the others looked this way :)
2016-07-28 18:01:42 +02:00
Philipp Oppermann
826e303ed0 Merge pull request #192 from phil-opp/post-toc
Add tables of contents to all blog posts
2016-07-17 17:14:50 +02:00
Philipp Oppermann
d4e82b0aa4 Improve heading levels 2016-07-17 17:10:42 +02:00
Philipp Oppermann
bc6f496eb5 Add tables of contents to all blog posts 2016-07-17 17:10:23 +02:00
Philipp Oppermann
62dd13b2e7 Merge pull request #190 from phil-opp/p1
Add aligned .got and .got.plt sections to linker script
2016-07-16 17:22:25 +02:00
Philipp Oppermann
68c1e42356 Update linker script in post (add .got and .got.plt) 2016-07-14 18:11:58 +02:00
Philipp Oppermann
2445b47661 Add aligned .got and .got.plt sections to linker script 2016-07-14 18:07:26 +02:00
Philipp Oppermann
d64e4ba2fc Update x86 crate to 0.7.1 (#189) 2016-07-14 11:21:04 +02:00
Aaron Hill
48e7faa521 Add ENTRY(start) to 'Allocating Frames' blog post linker script (#188) 2016-06-29 09:19:08 +02:00
Philipp Oppermann
f8c5bc5dec Merge pull request #187 from phil-opp/divide_by_zero
Catch divide error instead of page fault
2016-06-25 17:13:29 +02:00
Philipp Oppermann
ca438d9740 Revise plans for the upcoming post 2016-06-25 17:12:04 +02:00
Philipp Oppermann
702e49eaf7 Catch divide-by-zero errors and introduce inline assembly
This commit updates the “Catching Exceptions” post to catch divide-by-zero errors instead of page faults. The reason is a subtle stack alignment bug, which is somehow caused by the additional error code on a page fault. This commit also adds a short introduction to inline assembly.
2016-06-25 17:12:04 +02:00
Philipp Oppermann
e8b3a1fff1 Catch divide error instead of page fault
The divide error pushes no error code. Thus we avoid stack misalignment (see #184).
2016-06-25 17:12:04 +02:00
Philipp Oppermann
c9d8afe434 Run rustfmt 2016-06-25 17:08:26 +02:00
Philipp Oppermann
2f9e6cc0d0 Minor improvements to catching exceptions post 2016-06-25 17:06:57 +02:00
Philipp Oppermann
84ba085a0a The section will be only about exceptions (#186) 2016-06-24 13:59:17 +02:00
Philipp Oppermann
b7a47ee001 Add gitter badge (#183) 2016-06-24 13:54:35 +02:00
Philipp Oppermann
e4cc5b84f1 Merge pull request #185 from phil-opp/unwind_resume
Create dummy _Unwind_Resume function to fix libcore linker errors
2016-06-24 13:44:54 +02:00
Philipp Oppermann
f00360d553 Add and explain dummy _Unwind_Resume function in “Set Up Rust” post 2016-06-24 13:37:03 +02:00
Philipp Oppermann
952f7ed5e3 Create dummy _Unwind_Resume function to fix libcore linker errors 2016-06-24 13:37:02 +02:00
Philipp Oppermann
76b83c623e Revert "Remove unneeded gcc_except_table section" (#180) 2016-06-13 18:36:01 +02:00
Philipp Oppermann
20d9037740 Merge pull request #178 from phil-opp/patch5
Remove unneeded gcc_except_table section
2016-06-12 16:36:00 +02:00
Philipp Oppermann
1fb6369f61 Remove unneeded gcc_except_table section from blog post 2016-06-12 16:33:55 +02:00
Philipp Oppermann
1083ac9bac Remove unneeded gcc_except_table section 2016-06-12 16:32:34 +02:00
Ryan Campbell
793eeebfb3 Add missing open brace (#177) 2016-06-10 20:36:33 +02:00
Steve Klabnik
1183f5d1e1 Update section header to reflect changes in the text (#176) 2016-06-07 21:48:54 +02:00
Philipp Oppermann
bddf35f365 Add missing link to bit_field crate (#174) 2016-06-01 01:21:16 +02:00
Jordan Danford
bf0e70746d Change 'boot load' to 'boot loop' in 'Remap the Kernel' section (#173) 2016-05-31 09:11:14 +02:00
Homu
c22e1e8bb1 Auto merge of #172 - phil-opp:phil-opp-patch-1, r=phil-opp
Recommend rustup instead of multirust
2016-05-30 23:58:02 +09:00
Philipp Oppermann
4fae6e4731 Recommend rustup instead of multirust 2016-05-30 16:57:28 +02:00
Philipp Oppermann
c2336ceece Make cross-compile-* and set-up-gdb pages additional resourses 2016-05-29 19:58:44 +02:00
Philipp Oppermann
2f0a3459ad Merge pull request #170 from phil-opp/cargo-panic-abort
Use the `panic=abort` option instead of `-Z no-landing-pads`
2016-05-29 18:49:30 +02:00
Philipp Oppermann
0f5ec6f129 Update “Kernel Heap”: The _Unwind_Resume linker error shouldn't occur anymore 2016-05-29 18:47:38 +02:00
Philipp Oppermann
5d13ff7c3a Add update note 2016-05-29 18:38:14 +02:00
Philipp Oppermann
d7b05bc6b4 Update “Set Up Rust” post to use the cargo panic option 2016-05-29 18:35:16 +02:00
Philipp Oppermann
f4eb589f19 We don't need _Unwind_Resume anymore 2016-05-29 18:00:58 +02:00
Philipp Oppermann
725c452157 Use the panic=abort option instead of -Z no-landing-pads 2016-05-29 18:00:29 +02:00
Philipp Oppermann
01f9f1056c Merge pull request #169 from phil-opp/missing-pub
Make methods of EntryOptions public
2016-05-29 17:26:48 +02:00
Philipp Oppermann
9ea7ee6f57 Make methods of EntryOptions public in post 2016-05-29 17:25:11 +02:00
Philipp Oppermann
480265872d Make methods of EntryOptions public 2016-05-29 17:24:21 +02:00
Philipp Oppermann
165bf096a7 Merge pull request #164 from phil-opp/catching-exceptions
Add new post about “Catching Exceptions”
2016-05-28 16:00:31 +02:00
Philipp Oppermann
f58a6fe185 Add a print_error function, which works for exceptions inside println 2016-05-28 15:47:34 +02:00
Philipp Oppermann
c1df1d3354 Initialize the IDT and provoke a page fault 2016-05-28 15:47:34 +02:00
Philipp Oppermann
2d15a7bdb1 Make HandlerFunc public, because it is part of a public interface 2016-05-28 15:47:34 +02:00
Philipp Oppermann
c65b16f42d Create a static IDT with a page fault handler function 2016-05-28 15:47:34 +02:00
Philipp Oppermann
b84c5822df Create interrupt module with IDT submodule 2016-05-28 15:47:34 +02:00
Philipp Oppermann
245125cb4a Minor improvements to post 2016-05-28 15:47:33 +02:00
Philipp Oppermann
e2b45d3971 Fix minor errors in code snippets 2016-05-28 15:46:47 +02:00
Philipp Oppermann
865e74bfad We don't overhaul our build system yet 2016-05-28 14:37:19 +02:00