Přejít na obsah
ARCHIVEKArchiv e-mailových konferencí o 8bitových počítačích Archiv Pandory 1999 až 2013

Původní podoba příspěvku

Fuzzy Zpět na příspěvek

Surová data tak, jak byla v roce 2013 stažena z Pandory (HTML zdroj bez úprav, osobní e-mailové adresy jsou maskované).

<!-------------------------------------------------------------->
<table width="100%"><tr><td align="left" valign="middle"></td><td align=right valign="middle"></td></tr></table><BR><pre>Ahoj Michale,

jojo, postupne bude.
MZIX (zatim) neumi relokaci binarek, takze kazdy proces zacina na
0x0100 a ma k dispozici 32k pameti, vcetne zasobniku a heapu. Zbylych
32k zabira kernel.
Aby sel udelat multitasking se tedy potrebuje aktualni proces
odswapovat pryc - a k tomu se ted pouziva ramdisk. Jestlize scheduler
usoudi, ze je potreba
prepnout na jiny proces, tak odlozi ten aktualne bezici na RD a nacte
z RD novy. Tahle operace je casove draha, neco pres 0.3s, a tak se
nemuze prepinat moc casto,
v ukazce je prepinani nastaveno na 0.5s. Obecne to zavisi na priorite
procesu, bude se dat nastavovat za behu systemu.

Dale, kdyz proces ceka na vstup - napr. sash na zadani prikazu, tak je
ve stavu SLEEP a neni aktivni. Tj. kdyz das na pozadi bezet border,
tak ten border bezi furt dokud
nezadas nejaky prikaz. To se pak sash vzbudi a zkusi ten prikaz
vykonat. Muzes to videt treba kdyz mas na pozadi border a das &quot;ls&quot;.
Pak se sash vypisujici adresar a border budou nekolikrat
stridat po te pulsekunde, jde to videt podle toho kdy border blika a
kdy ne. V ukazce muzes taky dat 2 (a vice) borderu na pozadi - pak se
pravidelne stridaji, v pulsekundovych
intervalech jsou videt prestavky na prohozeni tech dvou border procesu.

Co se tyka mista na RD - tak kazdy proces sezere 32k, takze napr. 1MB
RD staci na rozjeti 32 procesu. Pouziti RD pro swapovani je zatim
nouzovka misto memextu.
Stary od Davida nemam a novy od Vaska jeste neni, emulator to neumi,
takze to nemam na cem vyskouset. Ale s memextem by prepinani procesu
byl fukot, to je jasny, nic by se nikam
nemuselo kopirovat, jen by se prepinaly stranky memextu.

Obcas si taky pohravam s myslenkou udelat relokovatelne binarky, aby
kazdy sebemensi proces nezabiral tech 32k.
Nezkouseli jste nekdy nekdo (obecne) relokovat (jinak nerelokovatelny) z80
<img src="BODY_IMAGES_WRAP_GIF"> kod?

Fuzzy


2012/2/18 Michal Hučík (sharpemu@pandora.cz) &lt;ordoz@[doména skryta]&gt;:
<span class="replyquote1">&gt;
&gt;
&gt; Ahoj, pro experimentovani by se jeste hodilo mit i kill, jobs a nejaky
&gt; pstools, aby mel clovek lepsi predstavu co se deje, nicmene i tak je to
&gt; pekne. Zkousel jsem spustit nekolik shellu na pozadi :)
&gt; Jak je tam udelany shedulling? Pri kazdem zatemneni prepnes na dalsi proces?
&gt;
&gt; Michal
&gt;
&gt;
&gt; Dne 16.2.2012 22:34, Fuzzy (sharpemu@pandora.cz) napsal(a):
&gt;
</span><span class="replyquote2">&gt;&gt; Ahojte,
&gt;&gt;
&gt;&gt; kdo byste se chteli mrknout na dalsi prototyp, tak je tady:
&gt;&gt; https://sourceforge.net/projects/umzix/files/prototypes/2012-02-16/
&gt;&gt;
&gt;&gt; Co potrebujete:
&gt;&gt; - bud emulator, nastavit mzix dsk, nastavit RD a nabootovat
&gt;&gt; - nebo relny sharp s unikartou nebo pravym FD, musi byt RD minimalne
&gt;&gt; 64kB, nastavit/nahrat mzix dsk, nabootovat z FD (realneho sharpa jsem
&gt;&gt; zatim nezkousel, zkusite nekdo?)
&gt;&gt;
&gt;&gt; POZOR! Ukazka prepise obsah vaseho RD.
&gt;&gt;
&gt;&gt; co muzete zkouset:
&gt;&gt; ls
&gt;&gt; cd
&gt;&gt; pwd
&gt;&gt; mkdir
&gt;&gt; rm
&gt;&gt; rmdir
&gt;&gt; exit
&gt;&gt;
&gt;&gt; pak muzete zkusit spustit na pozadi jednoduchy proces, ktery blika
&gt;&gt; borderem:
&gt;&gt; border&amp;
&gt;&gt; a dal zkouset vyse uvedene prikazy. Sash a border se stridave
&gt;&gt; odswapovavaji na RD (docela sranda :-); zadny memext to jeste neumi -
&gt;&gt; s tim by to byl multiprocessing samozrejme uplne jina liga.
&gt;&gt;
&gt;&gt; Ma to jeste mouchy, napr. kdyz filesystem budete vic trapit tak se
&gt;&gt; trochu rozhodi :-( Ale to nevadi, je to zatim jen ukazka.
&gt;&gt;
&gt;&gt; Fuzzy
&gt;&gt;
</span><span class="replyquote1">&gt;
&gt;
&gt; ---
</pre>