-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathoverview.html
78 lines (78 loc) · 3.31 KB
/
overview.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
<html>
<head>
<title>Jehanne</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="keywords" content="Jehanne, Plan 9, Open Source, 9P, 9P2000, Inferno, Unix">
<meta name="description" content="Jehanne, a simple operating system.">
<!--[if IE]> <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script><![endif]-->
<link rel="stylesheet" type="text/css" href="/graphic/screen.css" />
<style type="text/css">
.syscall-definition dt { font-family: "Courier New", Courier, monospace; }
</style>
</head>
<body class="page">
<header>
<a href="/" id="logo"><span>home</span></a>
<h1>Jehanne Operating System</h1>
</header>
<div class="contents">
<!--
<div class="warning">
Just like Jehanne, this design document is a work in progress.
</div>
-->
<p>
Jehanne is a <b>simple</b> operating system.<br/><br/>
It shows that few orthogonal abstractions can be composed to provide
everything you want from modern operating systems.<br/>
And more.<br/><br/>
<a href="/graphic/screenshot-20170106.png" target="_blank" title="Jehanne, click to enlarge">
<img src="/graphic/screenshot-20170106.png" style="width: 600px"/>
</a>
</p>
<h2>A vision for simplicity</h2>
<p>
Jehanne is named after a peasant girl that was burned as an heretic and then canonized as a saint.
</p>
<p>
Everybody can see why it's an heretic OS: it breaks many traditions of Plan 9 from Bell Labs, it challenges some
design decisions and even breaks some common conventions rooted in Unix.
</p>
<p>
There is no <code>/bin</code> folder. There is no <code>sleep</code> system call.<br/>
There is no swap. Markdown replaces <code>troff</code> for documentation.<br/>
GCC is the default compiler. 9P2000 is still supported, but replaced.
</p>
<p>
However, the point of this research is not to disrupt well established habits, but to pursuit a vision for
<a href="https://plato.stanford.edu/entries/simplicity/" target="_blank">simplicity</a>.
</p>
<p>
Beware, there's no glory for simplicity: everybody can do it,
<a href="https://en.wikipedia.org/wiki/Egg_of_Columbus#Source_of_the_story">after</a>.
</p>
<h2>More with less</h2>
<p>
Jehanne is simple in many different ways.
</p>
<p>
The kernel API is minimal and uniform: 26 system calls control devices, memory, IPC, scheduling and namespaces.<br/>
Everthing is a file. Really. Even directories.<br/>
The default file system provides a clean taxonomy.<br/>
The project scope includes a minimal system: compilers, editors, browsers, games...
many useful softwares can be ported to Jehanne through
<a href="https://github.com/JehanneOS/jehanne/tree/master/sys/src/lib/posix" target="_blank">libposix</a> and
<a href="https://github.com/JehanneOS/newlib" target="_blank">newlib</a> (and soon musl).<br/>
</p>
<p>
Also, Jehanne is free software. And it will always be.<br/>
The kernel and older tools are GPLv2, everything new is AGPLv3.<br/>
It's not only "formally" open, like many other projects from big names:
you are wellcome to challenge my assumptions, prove I'm wrong, even remove my code.
</p>
<p>
You just have to make it both <b>simpler</b> and <b>more useful</b>.
</p>
</div>
</body>
</html>