281 lines
8.2 KiB
HTML
281 lines
8.2 KiB
HTML
<!-- index.html -->
|
|
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
<title>Sleepee Software</title>
|
|
<!-- Google Font -->
|
|
<link href="assets/IosevkaSS15-Regular.ttf" rel="stylesheet">
|
|
<!-- style --->
|
|
<link rel="stylesheet" href="style.css">
|
|
<!-- icon -->
|
|
<!--<link rel="icon" type="image/png" href="/assets/favicon-96x96.png" sizes="96x96" />-->
|
|
<link rel="icon" type="image/svg+xml" href="/assets/favicon.svg" />
|
|
<link rel="shortcut icon" href="/assets/favicon.ico" />
|
|
<link rel="manifest" href="/assets/site.webmanifest" />
|
|
</head>
|
|
<body>
|
|
<!--<div id="top"></div>
|
|
<div id="loading-screen">
|
|
<div class="loading-text">PRESS TO START</div>
|
|
</div>
|
|
<div class="grid-bg"></div>
|
|
<div class="crt-overlay"></div>
|
|
|
|
<div class="content">-->
|
|
<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-blog">Blog</a></li>
|
|
<!--<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) -> token_id
|
|
accept_token(token_id) -> 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>
|
|
<ul>
|
|
<a href="#Preambule">Preambule</a>
|
|
<a href="#neuro">Desordre Neurologique</a>
|
|
<a href="#shitpost">Shitpost</a>
|
|
</ul>
|
|
<a href="#container-dev">Project</a>
|
|
<ul>
|
|
<a href="#SterlingOs">Sterling Os</a>
|
|
</ul>
|
|
</nav>
|
|
</aside>
|
|
|
|
<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>
|
|
</footer>
|
|
<!--<script src="js/index.js"></script>-->
|
|
</body>
|
|
</html>
|