From a1ed273f7fc0dc049e290725bb78b229cb0d2563 Mon Sep 17 00:00:00 2001 From: Philipp Oppermann Date: Fri, 9 Jun 2017 18:46:59 +0200 Subject: [PATCH] Add redirects from old URLs --- blog/content/posts/01-multiboot-kernel/index.md | 4 ---- blog/content/posts/02-entering-longmode/index.md | 4 ---- blog/content/posts/03-set-up-rust/index.md | 5 ----- blog/content/posts/04-printing-to-screen/index.md | 4 ---- blog/static/_redirects | 10 ++++++++++ 5 files changed, 10 insertions(+), 17 deletions(-) create mode 100644 blog/static/_redirects diff --git a/blog/content/posts/01-multiboot-kernel/index.md b/blog/content/posts/01-multiboot-kernel/index.md index 26622202..7cc15aea 100644 --- a/blog/content/posts/01-multiboot-kernel/index.md +++ b/blog/content/posts/01-multiboot-kernel/index.md @@ -3,10 +3,6 @@ title = "A minimal x86 kernel" order = 1 url = "multiboot-kernel" date = "2015-08-18" -aliases = [ - "/2015/08/18/multiboot-kernel/", - "/rust-os/multiboot-kernel.html", -] +++ This post explains how to create a minimal x86 operating system kernel. In fact, it will just boot and print `OK` to the screen. The following blog posts we will extend it using the [Rust] programming language. diff --git a/blog/content/posts/02-entering-longmode/index.md b/blog/content/posts/02-entering-longmode/index.md index d07462c1..546fdbba 100644 --- a/blog/content/posts/02-entering-longmode/index.md +++ b/blog/content/posts/02-entering-longmode/index.md @@ -4,10 +4,6 @@ order = 2 url = "entering-longmode" date = "2015-08-25" updated = "2015-10-29" -aliases = [ - "/2015/08/25/entering-longmode/", - "/rust-os/entering-longmode.html", -] +++ In the [previous post] we created a minimal multiboot kernel. It just prints `OK` and hangs. The goal is to extend it and call 64-bit [Rust] code. But the CPU is currently in [protected mode] and allows only 32-bit instructions and up to 4GiB memory. So we need to set up _Paging_ and switch to the 64-bit [long mode] first. diff --git a/blog/content/posts/03-set-up-rust/index.md b/blog/content/posts/03-set-up-rust/index.md index 2f7098b2..e0d0439f 100644 --- a/blog/content/posts/03-set-up-rust/index.md +++ b/blog/content/posts/03-set-up-rust/index.md @@ -4,11 +4,6 @@ order = 3 url = "set-up-rust" date = "2015-09-02" updated = "2017-04-12" -aliases = [ - "/2015/09/02/setup-rust/", - "/setup-rust.html", - "/rust-os/setup-rust.html", -] +++ In the previous posts we created a [minimal Multiboot kernel][multiboot post] and [switched to Long Mode][long mode post]. Now we can finally switch to [Rust] code. Rust is a high-level language without runtime. It allows us to not link the standard library and write bare metal code. Unfortunately the setup is not quite hassle-free yet. diff --git a/blog/content/posts/04-printing-to-screen/index.md b/blog/content/posts/04-printing-to-screen/index.md index d3d8cc65..2b900a8f 100644 --- a/blog/content/posts/04-printing-to-screen/index.md +++ b/blog/content/posts/04-printing-to-screen/index.md @@ -4,10 +4,6 @@ order = 4 url = "printing-to-screen" date = "2015-10-23" updated = "2016-10-31" -aliases = [ - "/2015/10/23/printing-to-screen/", - "/rust-os/printing-to-screen.html", -] +++ In the [previous post] we switched from assembly to [Rust], a systems programming language that provides great safety. But so far we are using unsafe features like [raw pointers] whenever we want to print to screen. In this post we will create a Rust module that provides a safe and easy-to-use interface for the VGA text buffer. It will support Rust's [formatting macros], too. diff --git a/blog/static/_redirects b/blog/static/_redirects new file mode 100644 index 00000000..9fb86302 --- /dev/null +++ b/blog/static/_redirects @@ -0,0 +1,10 @@ +# Redirects from what the browser requests to what we serve +/2015/08/18/multiboot-kernel/ /multiboot-kernel/ +/rust-os/multiboot-kernel.html /multiboot-kernel/ +/2015/08/25/entering-longmode/ /entering-longmode/ +/rust-os/entering-longmode.html /entering-longmode/ +/2015/09/02/setup-rust/ /set-up-rust/ +/setup-rust.html /set-up-rust/ +/rust-os/setup-rust.html /set-up-rust/ +/2015/10/23/printing-to-screen/ /printing-to-screen/ +/rust-os/printing-to-screen.html /printing-to-screen/