Philipp Oppermann
fcb074bbd8
Mention the minimum required xargo version
2018-03-09 23:26:43 +01:00
Steve Klabnik
e120e49efb
adjust blog post to reflect json changes
2018-03-09 11:13:41 +01:00
Steve Klabnik
b106ed8fc0
re-organize order of target spec to match blog post
2018-03-09 11:13:41 +01:00
Philipp Oppermann
844f0f0051
Reapply usage of LLD shipped with Rust
...
This reverts commit f24ba8b799 .
2018-03-09 11:13:41 +01:00
Josh Backstein
02941fe5d3
Add information on rust-toolchain file to set-up-rust ( #399 )
2018-03-08 06:12:28 +01:00
Philipp Oppermann
8bd66bf06f
Add missing name mangling link
2018-03-07 11:49:24 +01:00
Philipp Oppermann
ae085404d3
Adjust copyright year
2018-03-07 11:25:48 +01:00
Philipp Oppermann
1c4e6ecac6
Add subscribe form to second edition index page
2018-03-07 11:25:39 +01:00
Philipp Oppermann
f24ba8b799
Revert "LLD is now shipped with Rust!" ( #397 )
2018-03-06 18:26:57 +01:00
Philipp Oppermann
c810448fc8
Merge pull request #395 from phil-opp/builtin-lld
...
LLD is now shipped with Rust!
2018-03-06 11:55:45 +01:00
Philipp Oppermann
db812fe7c8
Remove “Installing LLD” guide
2018-03-06 11:20:32 +01:00
Philipp Oppermann
d7e17b2f56
Set linker-flavor to ld.lld, leave linker at default
2018-03-06 11:20:32 +01:00
Philipp Oppermann
033144fd9c
No need to install LLD on travis/appveyor anymore
...
Rust now ships a LLD binary.
2018-03-06 11:20:32 +01:00
Philipp Oppermann
4c909d5cfc
Merge pull request #394 from phil-opp/vga-text-mode
...
Add post about VGA text mode
2018-03-05 21:06:24 +01:00
Philipp Oppermann
70889544d1
Add rlibc dependency in minimal rust kernel post
2018-03-04 23:32:57 +01:00
Philipp Oppermann
557b869aa4
Update the VGA buffer post for the second edition
2018-03-04 23:19:07 +01:00
Philipp Oppermann
2f30a0df56
Delete old heap allocator
2018-03-04 23:18:01 +01:00
Philipp Oppermann
fab439d6a3
Add the Printing to Screen post to the second edition
2018-03-04 23:18:01 +01:00
Philipp Oppermann
73663150f8
Make image alt texts grey and italic
2018-03-04 23:18:01 +01:00
Philipp Oppermann
21f409625b
Add "read more" links on frontpage
2018-03-04 23:18:01 +01:00
Philipp Oppermann
fe472d3412
Adjust order number of first two posts
2018-02-26 19:02:31 +01:00
Philipp Oppermann
2671fac8c2
Rename first first-edition post to “Minimal Multiboot Kernel“
2018-02-26 18:57:35 +01:00
Philipp Oppermann
c157c91075
Merge pull request #393 from phil-opp/improvements
...
Wording improvements; Explain the bootimage tool
2018-02-25 16:59:56 +01:00
Philipp Oppermann
9208ae18ce
Explain shortly how the bootimage tool works
2018-02-25 16:00:14 +01:00
Philipp Oppermann
4281f0e261
Minor improvements
2018-02-25 15:59:43 +01:00
Philipp Oppermann
7d04bdea1b
Reformulate the drawbacks of the multiboot standard
2018-02-25 15:05:09 +01:00
Philipp Oppermann
bd1cf20f05
Improve wording
2018-02-25 14:46:35 +01:00
Toothbrush
1cdc010446
Fix: Change "panic" to "panic-strategy" ( #392 )
2018-02-20 22:10:05 +01:00
Andre Richter
07553ed219
Nitpicks for second article ( #390 )
...
Some nitpick corrections.
2018-02-14 11:39:08 +01:00
Philipp Oppermann
3a8de6cdec
Bors: Add netlify to required status set and delete merged branches
2018-02-12 12:59:57 +01:00
Philipp Oppermann
71778d7a42
Remove BootInfo parameter from second post code example
...
Fixes #388
2018-02-12 12:46:44 +01:00
Andre Richter
384f6c2420
Corrections from proof read ( #389 )
...
Some minor corrections while proof-reading.
Changed Max OS X to macOS, since it's the official Apple speak since 2016.
2018-02-12 12:37:26 +01:00
bors[bot]
65c63a77b2
Merge #387
...
387: Minor fixes for second edition r=phil-opp a=phil-opp
2018-02-10 18:22:17 +00:00
Philipp Oppermann
325f1f2756
Fix date of new post
2018-02-10 18:03:34 +01:00
Philipp Oppermann
8848f4c139
Git ignore bootimage.bin
2018-02-10 18:03:34 +01:00
bors[bot]
00b3adfe82
Merge #385
...
385: First bits of the second edition r=phil-opp a=phil-opp
This PR adds the first two posts for the second edition, “A Freestanding Rust Binary” and “A Minimal Rust Kernel”. The largest changes in comparison to the first edition are:
- Instead of GRUB, we use our own [bootloader](https://github.com/rust-osdev/bootloader ) (written in Rust) and our [bootimage](https://github.com/rust-osdev/bootimage ) tool. This removes the dependencies on GRUB and `nasm`. Note that both tools are still experimental and might contain bugs.
- Support for Windows and Mac: Without GRUB, there's nothing preventing us from building on Windows or Mac OS anymore! We added additional CI jobs at travis and appveyor to ensure that the project always builds on all three platforms. (At the moment, users still need to install LLD, but with the [LLVM 6 update of rustc](https://github.com/rust-lang/rust/pull/47828 ) we should have a builtin LLD soon.)
- No assembly in the main posts. Instead, we're creating a `no_std` _executable_ and relying on our custom bootloader to perform the initial page mapping and the switch to long mode.
- No linker script: Our bootloader loads the kernel in a clean address space, so we can just use the default executable layout and don't need a linker script. (This also means that users that want a higher half kernel just need to update the mapping in their linker script. However, I'm not sure if it's a good idea to add this to the blog. Maybe later, when we begin to run user programs.)
These changes only land in “beta mode” with this PR, which means that they're not linked from the front page yet. We will do that in a follow up PR.
2018-02-10 15:58:25 +00:00
Philipp Oppermann
b2285f762c
Add a “first-edition” section
...
The first edition will live there after the second edition is published.
2018-02-10 16:52:29 +01:00
Philipp Oppermann
dc50747c78
Link to the github issue from the UEFI section
2018-02-10 16:49:09 +01:00
Philipp Oppermann
56be17ab80
Add paragraph about Multiboot
2018-02-10 16:49:09 +01:00
Philipp Oppermann
254d5476b1
Update Linux/Windows/Mac entry points
2018-02-10 16:48:48 +01:00
Philipp Oppermann
5e96335c23
Add instructions for running in QEMU, VirtualBox, and on real hardware
2018-02-10 16:48:30 +01:00
Philipp Oppermann
7be59b571d
Use static and for loop for printing Hello World
2018-02-10 16:47:21 +01:00
Philipp Oppermann
cef44163bc
Remove/resolve some todos
2018-02-10 16:47:21 +01:00
Philipp Oppermann
7d55dda917
Add extra posts about disabling red zone and SIMD and installing LLD
2018-02-10 16:47:02 +01:00
Philipp Oppermann
8a75c2828e
More work on minimal kernel post
2018-02-10 16:46:54 +01:00
Philipp Oppermann
9bb456ed2f
Add support for bors.ng
2018-02-10 16:45:53 +01:00
Philipp Oppermann
bff0c4401c
Print “Hello” instead of “OK”
2018-02-10 16:43:17 +01:00
Philipp Oppermann
9fc0a07453
Fix offset typo
2018-02-10 16:43:17 +01:00
Philipp Oppermann
eb688962a1
Rewrite first post to work on Windows too
2018-02-10 16:43:17 +01:00
Philipp Oppermann
c266193a34
We do not need separate “Intoduction” and “Booting” posts
2018-02-10 16:43:17 +01:00