This commit is contained in:
fatmeat 2025-06-18 10:58:24 +02:00
parent b738eea749
commit e2cbf48dfc
7 changed files with 266 additions and 223 deletions

View File

@ -15,3 +15,4 @@ https://faeraphim.net/main/index.htm
https://lilithdev.neocities.org/
<a href="https://july.lol"><img src="https://july.lol/img/lonelyjulybutton.gif" alt="july.lol"></a>
___
git

View File

@ -0,0 +1,22 @@
<section id="container-aboutme">
<h1>About Me</h1>
<section id="Preambule">
<h1>Preambule</h1>
</section>
<br>
<section id="neuro">
<h2>Desordre Neurologique</h2>
<p>La section suivante sera sous forme de poeme afin d'essayer d'exterioriser mon ressentie</p>
<h3>TSA</h3>
<h3>TDA</h3>
<h3>HI</h3>
<h3>Depression</h3>
</section>
<br>
<section id="shitpost">
<h2>Shitpost</h2>
<h3>Vision sur l'Informatique</h3>
<h3>femboy</h3>
<p>Volibear UwU Daddy</p>
</section>
</section>

View File

@ -0,0 +1,15 @@
<section class="container">
<!-- make each project as a tab kinda like browser tab, and switch page on project select, that should allow to dowload page by page -->
<section id="Music">
</section>
<section id="Writing">
</section>
<section id="Drawing">
</section>
</section>

View File

@ -0,0 +1,145 @@
<section id="container-dev">
<h1>Projects</h1>
<section id="SterlingOs">
<h1>Sterling OS</h1>
<h3>Minimal Capability-Based Operating System</h3>
<h2>Design Principles</h2>
<ul>
<li>No global filesystem, no path resolution</li>
<li>No drivers in kernel, only sandboxed userspace driver processes</li>
<li>No GPU acceleration, all rendering is deterministic software-based</li>
<li>All resources accessed via capability tokens</li>
<li>Processes are strictly sandboxed</li>
<li>Programs operate on memory buffers, not raw file handles</li>
<li>Desktop environment is a sandboxed coordinator, not a privileged process</li>
</ul>
<h2>Authorization Token Model</h2>
<p>Programs delegate access via opaque, kernel-managed tokens.</p>
<pre><code>
grant_token(target_pid, resource_id, flags) -&gt; token_id
accept_token(token_id) -&gt; resource_handle
revoke_token(token_id)
</code></pre>
<h2>File Editing Flow</h2>
<ol>
<li>DE requests file via storage service</li>
<li>Storage service provides a memory buffer</li>
<li>Editor process receives buffer handle, edits</li>
<li>Changes submitted back to storage via DE</li>
</ol>
<h2>Driver Model</h2>
<ul>
<li>All drivers run as fully unprivileged user processes</li>
<li>No driver registration or kernel mediation required</li>
<li>Drivers communicate with hardware via explicit kernel-exposed capability channels</li>
<li>No dynamic linking or privileged probing allowed</li>
<li>Users can run or replace any driver without OS permission</li>
</ul>
<h2>Graphics System</h2>
<ul>
<li>No GPU support, no shaders</li>
<li>Software renderer processes draw via shared memory</li>
<li>DE composites framebuffers deterministically</li>
</ul>
<h2>Programming Language Requirements</h2>
<ul>
<li>Manual memory management</li>
<li>Low-level data layout control</li>
<li>Inline assembly support</li>
<li>Pattern matching and compile-time macros</li>
<li>No runtime, no global init, no dynamic linking</li>
</ul>
<h2>Execution Model</h2>
<ul>
<li>Programs are spawned with exact buffer and token permissions</li>
<li>No shared global state</li>
<li>All IO is mediated via explicit capability-based services</li>
<li>Everything is inspectable and reproducible</li>
</ul>
<h2>Sandboxing Model</h2>
<p>All processes are isolated via strict memory boundaries and capability-scoped access. No process can access global state, shared memory, or system calls without explicit capability grants.</p>
<h3>Memory Layout</h3>
<pre class="diagram">
+-----------------------+
| Code (RX) |
+-----------------------+
| Data (RW) |
+-----------------------+
| Shared Buffers (RWX?) | ← only if explicitly mapped by kernel
+-----------------------+
| Stack (RW) |
+-----------------------+
</pre>
<h3>Process Launch</h3>
<ul>
<li>Preallocated memory map (no heap growth)</li>
<li>Passed a syscall pointer table, token list, and init buffer</li>
<li>Cannot request global system resources directly</li>
</ul>
<h3>Capability Enforcement</h3>
<p>All access is mediated via capability tokens, handed off securely:</p>
<pre><code>
token_id = request_token(pid, SERVICE_IO, READ_WRITE);
handle = accept_token(token_id);
</code></pre>
<ul>
<li>Token scope, rights, and duration enforced by kernel</li>
<li>No access without explicit grant</li>
<li>All capability use is auditable and revocable</li>
</ul>
<h3>Filesystem Abstraction</h3>
<ul>
<li>No global file system</li>
<li>Programs receive only memory buffers with scoped access</li>
<li>Read/write must go through kernel-mapped tokens</li>
</ul>
<h3>Driver Isolation</h3>
<ul>
<li>Drivers are userland processes only</li>
<li>No direct port I/O or DMA access</li>
<li>Hardware is accessed via kernel-exposed capability channels</li>
</ul>
<h3>IPC</h3>
<ul>
<li>All inter-process communication is routed via the kernel</li>
<li>Uses named ports and token-authenticated message queues</li>
<li>No shared memory by default</li>
</ul>
<h3>Future Additions</h3>
<ul>
<li>Deterministic scheduler</li>
<li>Audit trail of all token activity</li>
<li>Formal capability typing system</li>
</ul>
<h2>Philosophy</h2>
<p>Not a POSIX clone. It is a deterministic, capability-secure, user-controlled computing environment built to reject legacy complexity and embrace verifiable simplicity.</p>
</section><br>
<section id="SterlingLang">
</section><br>
<section class="SleepeeLib">
</section><br>
<section class="Game Engine">
</section><br>
</section>

View File

@ -0,0 +1,30 @@
<section class="container">
<section id="Minecraft">
<h2>Minecraft</h2>
<h3>Mon Serveur</h3>
<p>tu dois te login pour te faire whitelist</p>
<h3>Modpack</h3>
<h3>Creative World</h3>
<!-- ajouter un caroussel avec chacun de mes mondes avec une popup descriptif et le lien -->
</section><br>
<section id="League of Legends">
<h2>League of Legends</h2>
<i>je ne suis pas joueur pro.</i><br>
<h3>Guide sur Yasuo</h3>
<h4>Les Combos</h4>
<h4>Build Actuel</h4>
<h4>Runes Actuel</h4>
<br>
<a href="https://www.youtube.com/playlist?list=PL0RgKOdYjzg_P5F88zNTydaJAFAm6LGM2">Playlist sur Youtube</a>
</section><br>
<section id="Dwarf Fortress">
<h2>Dwarf Fortress</h2>
<h3>Histoire de Mes Forteresse</h3>
</section><br>
<section id="Other">
</section>
</section>

View File

@ -27,235 +27,15 @@
<header>
<nav id="top-nav"><ul>
<img src="assets/cooltext484352697795184.png" style="max-width: 30%; height: auto;">
<li><a href="#" id="nav-landing">Home</a></li>
<li><a href="#" id="nav-landing">Whoami</a></li>
<li><a href="#" id="nav-blog">Blog</a></li>
<!--<li><a href="#" id="nav-forum">Chat</a></li>-->
<li><a href="#" id="nav-blog">Projets</a>
<li><a href="#" id="nav-forum">Chat</a></li>
<li><a href="#" id="nav-learn">Learn</a></li>
<li><a href="#" id="nav-shop">Shop</a></li>
<li><a href="#" id="nav-login">Login or Account</a></li>
</ul></nav>
</header>
<main>
<section id="container-aboutme">
<h1>About Me</h1>
<section id="Preambule">
<h1>Preambule</h1>
</section>
<br>
<section id="neuro">
<h2>Desordre Neurologique</h2>
<p>La section suivante sera sous forme de poeme afin d'essayer d'exterioriser mon ressentie</p>
<h3>TSA</h3>
<h3>TDA</h3>
<h3>HI</h3>
<h3>Depression</h3>
</section>
<br>
<section id="shitpost">
<h2>Shitpost</h2>
<h3>Vision sur l'Informatique</h3>
<h3>femboy</h3>
<p>Volibear UwU Daddy</p>
</section>
</section>
<section id="container-dev">
<h1>Projects</h1>
<section id="SterlingOs">
<h1>Sterling OS</h1>
<h3>Minimal Capability-Based Operating System</h3>
<h2>Design Principles</h2>
<ul>
<li>No global filesystem, no path resolution</li>
<li>No drivers in kernel, only sandboxed userspace driver processes</li>
<li>No GPU acceleration, all rendering is deterministic software-based</li>
<li>All resources accessed via capability tokens</li>
<li>Processes are strictly sandboxed</li>
<li>Programs operate on memory buffers, not raw file handles</li>
<li>Desktop environment is a sandboxed coordinator, not a privileged process</li>
</ul>
<h2>Authorization Token Model</h2>
<p>Programs delegate access via opaque, kernel-managed tokens.</p>
<pre><code>
grant_token(target_pid, resource_id, flags) -&gt; token_id
accept_token(token_id) -&gt; resource_handle
revoke_token(token_id)
</code></pre>
<h2>File Editing Flow</h2>
<ol>
<li>DE requests file via storage service</li>
<li>Storage service provides a memory buffer</li>
<li>Editor process receives buffer handle, edits</li>
<li>Changes submitted back to storage via DE</li>
</ol>
<h2>Driver Model</h2>
<ul>
<li>All drivers run as fully unprivileged user processes</li>
<li>No driver registration or kernel mediation required</li>
<li>Drivers communicate with hardware via explicit kernel-exposed capability channels</li>
<li>No dynamic linking or privileged probing allowed</li>
<li>Users can run or replace any driver without OS permission</li>
</ul>
<h2>Graphics System</h2>
<ul>
<li>No GPU support, no shaders</li>
<li>Software renderer processes draw via shared memory</li>
<li>DE composites framebuffers deterministically</li>
</ul>
<h2>Programming Language Requirements</h2>
<ul>
<li>Manual memory management</li>
<li>Low-level data layout control</li>
<li>Inline assembly support</li>
<li>Pattern matching and compile-time macros</li>
<li>No runtime, no global init, no dynamic linking</li>
</ul>
<h2>Execution Model</h2>
<ul>
<li>Programs are spawned with exact buffer and token permissions</li>
<li>No shared global state</li>
<li>All IO is mediated via explicit capability-based services</li>
<li>Everything is inspectable and reproducible</li>
</ul>
<h2>Sandboxing Model</h2>
<p>All processes are isolated via strict memory boundaries and capability-scoped access. No process can access global state, shared memory, or system calls without explicit capability grants.</p>
<h3>Memory Layout</h3>
<pre class="diagram">
+-----------------------+
| Code (RX) |
+-----------------------+
| Data (RW) |
+-----------------------+
| Shared Buffers (RWX?) | ← only if explicitly mapped by kernel
+-----------------------+
| Stack (RW) |
+-----------------------+
</pre>
<h3>Process Launch</h3>
<ul>
<li>Preallocated memory map (no heap growth)</li>
<li>Passed a syscall pointer table, token list, and init buffer</li>
<li>Cannot request global system resources directly</li>
</ul>
<h3>Capability Enforcement</h3>
<p>All access is mediated via capability tokens, handed off securely:</p>
<pre><code>
token_id = request_token(pid, SERVICE_IO, READ_WRITE);
handle = accept_token(token_id);
</code></pre>
<ul>
<li>Token scope, rights, and duration enforced by kernel</li>
<li>No access without explicit grant</li>
<li>All capability use is auditable and revocable</li>
</ul>
<h3>Filesystem Abstraction</h3>
<ul>
<li>No global file system</li>
<li>Programs receive only memory buffers with scoped access</li>
<li>Read/write must go through kernel-mapped tokens</li>
</ul>
<h3>Driver Isolation</h3>
<ul>
<li>Drivers are userland processes only</li>
<li>No direct port I/O or DMA access</li>
<li>Hardware is accessed via kernel-exposed capability channels</li>
</ul>
<h3>IPC</h3>
<ul>
<li>All inter-process communication is routed via the kernel</li>
<li>Uses named ports and token-authenticated message queues</li>
<li>No shared memory by default</li>
</ul>
<h3>Future Additions</h3>
<ul>
<li>Deterministic scheduler</li>
<li>Audit trail of all token activity</li>
<li>Formal capability typing system</li>
</ul>
<h2>Philosophy</h2>
<p>Not a POSIX clone. It is a deterministic, capability-secure, user-controlled computing environment built to reject legacy complexity and embrace verifiable simplicity.</p>
</section><br>
<section id="SterlingLang">
</section><br>
<section class="SleepeeLib">
</section><br>
<section class="Game Engine">
</section><br>
</section>
<section class="container">
<!-- make each project as a tab kinda like browser tab, and switch page on project select, that should allow to dowload page by page -->
<section id="Music">
</section>
<section id="Writing">
</section>
<section id="Drawing">
</section>
</section>
<section class="container">
<section id="Minecraft">
<h2>Minecraft</h2>
<h3>Mon Serveur</h3>
<p>tu dois te login pour te faire whitelist</p>
<h3>Modpack</h3>
<h3>Creative World</h3>
<!-- ajouter un caroussel avec chacun de mes mondes avec une popup descriptif et le lien -->
</section><br>
<section id="League of Legends">
<h2>League of Legends</h2>
<i>je ne suis pas joueur pro.</i><br>
<h3>Guide sur Yasuo</h3>
<h4>Les Combos</h4>
<h4>Build Actuel</h4>
<h4>Runes Actuel</h4>
<br>
<a href="https://www.youtube.com/playlist?list=PL0RgKOdYjzg_P5F88zNTydaJAFAm6LGM2">Playlist sur Youtube</a>
</section><br>
<section id="Dwarf Fortress">
<h2>Dwarf Fortress</h2>
<h3>Histoire de Mes Forteresse</h3>
</section><br>
<section id="Other">
</section>
</section>
</main>
<aside>
<nav>
<a href="#top">top</a>
@ -270,7 +50,9 @@
</ul>
</nav>
</aside>
<main id="content-container">
</main>
<footer>
<p>Copyright @ 2025 <a href="mailto:dev@sleepeesoftware.fr">Sleepee Software</a><br>Verbatim copying and redistribution of this entire page are permitted provided this notice is preserved.<br>
Verbatim copying and redistribution of any of the photos in the photos subdirectory is permitted under the <a href="https://opensource.org/license/mit">MIT License</a></p>

View File

@ -1,3 +1,17 @@
:root {
--primary-color: #00ffff;
--secondary-color: #ff00ff;
--background-color: #0d0d0d;
--text-color: #f0f0f0;
--overlay-background: rgba(0, 0, 0, 0.85);
--button-background: #ff00ff;
--button-hover-background: #00ffff;
--scanline-color: rgba(255, 255, 255, 0.05);
--glow-color: rgba(0, 255, 255, 0.3);
--terminal-background: rgba(0, 0, 0, 0.9);
--terminal-border: #ff00ff;
}
body {
font-family: sans-serif;
display: grid;
@ -37,3 +51,37 @@ footer {
grid-row: 3;
}
nav ul {
display: flex;
flex-wrap: wrap;
gap: 1rem;
list-style: none;
}
nav ul li a {
text-decoration: none;
color: var(--primary-color);
padding: 0.5rem 1rem;
border: 1px solid var(--primary-color);
border-radius: 4px;
text-shadow: 0 0 3px var(--primary-color);
}
nav ul li a:hover {
background: var(--primary-color);
color: var(--background-color);
}
footer a {
text-decoration: none;
color: var(--primary-color);
}
footer a:hover {
color: var(--secondary-color);
}
footer p {
text-align: center;
}