Suomi
Appearance
Suomi
Appearance
Tämä asiakirja tarjoaa syvällisen katsauksen WSL Dashboard -sovelluksen arkkitehtoniseen suunnitteluun, teknologiavalintoihin ja keskeisten ominaisuuksien toteutuslogiikkaan, ja on tarkoitettu kehittäjille ja edistyneille käyttäjille, jotka etsivät teknistä näkökulmaa.
WSL Dashboard käyttää klassista reaktiivinen UI-ohjattu + asynkroninen backend-tehtävä -arkkitehtuuria, hyödyntäen Rust-kielen tyyppijärjestelmää ja omistusmallia muistiturvallisuuden ja korkean suorituskyvyn takaamiseksi.
Sovellus hakee reaaliaikaisen instanssitilan kutsumalla wsl.exe --list --verbose ja jäsentämällä sen tulosteen (UTF-16-koodauksen käsittely).
Siirto-ominaisuus hyödyntää WSL:n tuonti/vienti-mekanismia, mutta korkealla abstraktiotasolla ja atomiikkuudella.
Verkko-ominaisuus yksinkertaisen netsh interface portproxy -kutsun.
wsl hostname -I -tuloksen, se automaattisesti kartoittaa virtuaaliset verkko-IP:t isännän ja instanssin välillä.Hyödyntää usbipd-win -komentorivirajapintaa.
Sovellus seuraa omaa resurssien käyttöään kutsumalla natiiveja Windows API:ta (esim. GetProcessMemoryInfo).
| Mittari | Tavoite / Mitattu | Optimointistrategia |
|---|---|---|
| Käynnistysaika | < 500ms | Esikääntynyt Slint-käyttöliittymä, ajonaikaisen jäsentämisen minimointi. |
| Perusmuisti (tilala) | ~10MB | Minimoitu taustakyselyjen tiheys, tarvittaessa välimuistin vapautus. |
| CPU-käyttö (jouten) | < 0.1% | Windows-tapahtumapohjainen malli, ei kierrätyskyselyjä. |
| Renderöintinopeus | 60 FPS | Skia GPU -kiihdytys, alipikseli-antialiasointirenderöinti. |
UI-responsiivisuuden varmistamiseksi kaikki aikaa vievät toiminnot (esim. VHDX-vienti) lähetetään asynkronisina tehtävinä:
Command-viesteiksi.tokio::sync::mpsc:n kautta.~\.wsldashboard-hakemistoon ilman mitään pilvisynkronointia, suojaten käyttäjän yksityisyyttä.