Rozdělení prací skupin vývoje OS TUOX
- FDD Driver - odladění a zdokumentování již existujícího modulu driveru floppy disku
pro čip I8272 (resp. kompatibilní). Stručný výtah z HW dokumentace čipu. Odladění v minimálním jádře.
(Pospisil, Neuwirth)
- HDD Driver - odladění a zdokumentování již existujícího modulu driveru IDE disku.
Stručný výtah z HW dokumentace a popis činnosti modulu. Na vyzkoušení je nutný stroj
s možností vygenerování krátké speciální partition pro TUOX (postačí jednotky MB).
(Vlcek, Zly)
- Memory manager - odstranění několika omezení v modulu MM, dodělávky: core dump,
vylepšit alokaci paměti pro programy, nulování nového datového paměťového prostoru, ...,
(viz soubor tuox/k/mm/dodelat.txt). Testy.
(Knakal)
- File system - odstranění několika omezení a nedodělaných míst v modulu FS
(viz soubor tuox/k/fs/dodelat.txt), dodělat volání pro shutdown a reboot, testy
(Fukala, Hucka)
- CD - studie možností a pokus o začlenění CD do TUOXu. Implementace DOS programu
pro zjišťování obsahu CD, čtení bloků z jednotlivých souborů. ISO 9660 k dispozici.
(Chovancik, Rakyta)
- Kontrola implementace knihovních funkcí a vývoj testovacích programů
- služby FS a kontrola přístupových práv uživatelů a skupin, dědění deskriptorů souborů,
stavové informace, chroot, chown
(Wiglasz, Janacek, Hronsky)
- Kontrola implementace knihovních funkcí a vývoj testovacích programů
- synchronizace procesů (wait, exit) a signály
(Abeska, Holusova)
- Kontrola implementace knihovních funkcí a vývoj testovacích programů
- volání FS (na základě existujících testovacích programů, použít standardní knihovny
namísto přímého volání jádra). Ujasnění významu chybových kódů vracených jednotlivými voláními,
jejich popis. Ověření chování FS při fork(), exec(), exit().
(Skuplik, Antl, Kolar)
- Kontrola implementace knihovních funkcí a vývoj testovacích programů
- volání MM. Na základě existujících testovacích programů, použít standardní knihovny
namísto přímého volání jádra. Ujasnění významu chybových kódů vracených jednotlivými voláními,
jejich popis. (Jezek, Skapa)
- Bootstrap - úprava stávajícího zavaděče a ladícího zavaděče jádra pro zavádění
systému z diskety, dopracování existujících utilit pro vytváření zaváděcí diskety.
Rozpracovat možnost zavádění systému z HDD. C0FS.ASM - rozumná inicializace SP
podle skutečné délky DS jednotlivých modulů, v KMAIN.C rozumná inicializace paměťové
mapy.
(Gajec,Hrdy,Smidak)
- Studie o začlenění matematického koprocesoru (možno se omezit na 8087) do systému
a rozšíření jádra o přepínání kontextu koprocesoru.
(Zajac, Horak)
- Přepracování existujícho driveru pro síťovou kartu 3COM 3C509 (v současné verzi pro DOS
+ existuje zárodek ovladače pro TUOX) do podoby ovladače pro TUOX. Úvaha o způsobu
začlenění do systému (znakové/blokové zařízení). Specifikace zpráv pro vysílání, příjem, ioctl(),
rozbor možností sdílení ovladače více procesy. Tištěná firemní hardwarová dokumentace k uvažované
síťové kartě je k dispozici.
(Vlcek,Duzyk)
- Seznámení se s ovladačem TTY a vývoj testovacích programů pro něj (test escape sekvencí,
různých terminálových disciplín, nastavování volitelných parametrů terminálu, ...).
Doplnit možnost přemapovávání escape sekvencí podle typu připojeného terminálu.
(Nedela, Onderek)
- Seznámení se s ovladačem TTY a jeho částí pro obsluhu terminálů napojených přes RS232.
Oživení již existujícího modulu ovladače terminálu přes RS232 na minimálním testovacím jádře.
Rozvaha o možnostech sdílení terminálu více procesy - přepínání procesů mezi pozadím a popředím,
pozastavování procesu na pozadí, který se pokouší vypisovat na terminál, ... . Modifikace ovladače TTY
a implementace příkazů fg, bg.
(Starzyk, Ramik)(Kupka,Hasala)
- Navrhněte a implementujte virtuální síťový terminál pro TUOX - možnost emulace terminálu
přes síť. Jedná se o obdobu TELNETu, z důvodu rozumného rozsahu se omezíme na nepotvrzovaný protokol
pro šíření stisků kláves a znaků pro výpis na obrazovku. Klientská část může být implementována pro DOS,
raději však pro TUOX. Je vhodné držet se aspoň formálně některého standardního
datagramově-orientovaného protokolu (nejspíše IPX, IP je složitý).
(Kosturik, Nehybova, Schovanek)
- Rozbor možností implementace standardních mechanismů meziprocesové komunikace (pipes,
named pipes, sdílená paměť) do OS TUOX a implementace některých z nich. Implementace
bude spočívat v rozšíření modulu Memory Manager, resp. File System a dopsání příslušných funkcí
systémových knihoven.
(3+)
- Koordinace testovacích prací, správa chybových kódů, vytvoření makefile pro jednotlivé
testovací fáze, úprava maker pro ohlašování chybových stavů systému. Vytvoření obsahu root
filesystemu zaváděcí diskety (tj. různých konfiguračních souborů, návrh adresářové struktury,
nakopírování binárních souborů do /bin a /sbin, ...). Provádí se ve spsolupráci se skupinou
vývoje zavaděče. Tvorba makefile pro sestavovani jednotlivych testovacich fazi systemu (z BC++ 3.1 projektu).
(Vybiral)
- Implementace knihovních funkcí pro proudové souborové složby (fopen(), fread(), fwrite(), ...)
s použitím existujících implementovaných knihovních funkcí odpovídajícím službám jádra.
Možná s použitím cizích zdrojových kódů (Linux?) - RYCHLE !
(Drstakova, Smolka)
- Odladění ovladače RAM disku na minimálním jádře, ustavení konvencí pro stanovení
adresy začátku a velikosti paměti pro RAM disk - spolupráce s bootstrapem a předání
začátku volné paměti memory manageru.
(Stefanides)
- Uživatelské procesy - překlad a test všech existujících programů pro TUOX,
jejich odladění. Dodělat nedodělané (chown, stty, chmem, ps). Interpretace vrácených chybových kódů.
login - předat do shellu (tsh) proměnné environmentu, které očekává (USER, HOME_DIR, ...)
(Vomacka, Horak, Ott, Musinsky)