summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMinijackson <minijackson@riseup.net>2020-08-06 09:14:54 +0200
committerMinijackson <minijackson@riseup.net>2020-08-06 09:14:54 +0200
commit7b350491d4d60eab3dccc4257e519a8de545b771 (patch)
tree22d422e59abd1375094a421547956bdecfd77bd8
parent82836d3c3655861a2a3ce260beb6009cc4dc47b3 (diff)
downloadwtf-is-linux-website-7b350491d4d60eab3dccc4257e519a8de545b771.tar.gz
wtf-is-linux-website-7b350491d4d60eab3dccc4257e519a8de545b771.zip
index: add goal and presentation of cli
-rw-r--r--index.md61
1 files changed, 49 insertions, 12 deletions
diff --git a/index.md b/index.md
index bd6fffb..c2a7141 100644
--- a/index.md
+++ b/index.md
@@ -1,11 +1,10 @@
1% WTF is Linux 1% WTF is Linux
2 2
3
3> What I cannot create, I do not understand. 4> What I cannot create, I do not understand.
4> 5>
5> --- <cite>Richard Feynman, 1988</cite> 6> --- <cite>Richard Feynman, 1988</cite>
6 7
7TODO: add the LM fonts referenced in the CSS
8
9TODO: reference a mono font in the CSS 8TODO: reference a mono font in the CSS
10 9
11TODO: fix TOC CSS 10TODO: fix TOC CSS
@@ -18,12 +17,58 @@ TODO: specify dependencies
18 17
19TODO: Add a plan checklist? 18TODO: Add a plan checklist?
20 19
21TODO: fix pandoc\'s vimwiki (syntax highlighting, quotes)
22
23TODO: Link manpages 20TODO: Link manpages
24 21
25TODO: Add pretty pictures 22TODO: Add pretty pictures
26 23
24Goal of this course and this document
25-------------------------------------
26
27In this course, we will attempt to create a GNU/Linux file system from scratch.
28
29The objective is to deeply understand the Linux ecosystem: how it boots, what
30are the different pieces, how do they integrate with one-another, what are the
31different choices available to us when building such a system, etc.
32
33Even though it is very rare to build these kinds of things "manually", I do
34think it is better to do it this way for educative purposes.
35
36However, in the practical work part, we will build a Linux system in an
37automated fashion, using [Buildroot](https://buildroot.org/), an well-known
38software in the industry for building embedded Linux systems.
39
40This document is intended to serve several functions:
41
42- As notes, if I talk too fast, or if you don't like to take
43 notes[^take-notes], or miss classes
44- It's likely that this website is going to be more detailed than the course,
45 so it's useful you want to go further. You can also follow the links to go
46 even further
47- Should I miss some things while talking, this website should fix it
48
49[^take-notes]:
50 {-} You really should be taking notes, it does help remembering
51
52The Linux command-line
53----------------------
54
55Main article: [CLI](cli.md)
56
57When we say "command-line interface", we usually mean the text-based program
58whose main purpose is to execute other commands. You input a program name, enter
59its arguments, press enter, and it will execute the said program with said
60arguments.
61
62In reality, the UNIX command-line is more complicated than that, but that also
63makes it much more powerful. See the main article if you want to unlocking this
64power.
65
66<!--
67A shell is a programming language whose main goal is to launch other
68programs. It also usually provides a command-line interpreter: a text-based
69program that executes (interprets) the shell code you input.
70-->
71
27The Linux Kernel 72The Linux Kernel
28---------------- 73----------------
29 74
@@ -62,14 +107,6 @@ first program launched it always has a PID of 1.
62 107
63TODO: link to first steps to "user-space booting" 108TODO: link to first steps to "user-space booting"
64 109
65The Shell
66---------
67
68TODO: link to main article
69
70A shell is a programming language whose main goal is to launch other
71programs.
72
73Special filesystems 110Special filesystems
74------------------- 111-------------------
75 112