[OSy] Dotaz ke 3. zadani

Andrej Kruták andree182 at gmail.com
Thu Dec 13 11:10:55 CET 2007


Cau,

tiez som o tom rozmyslal a pockam si na odpoved "zhora", ale...

Napr. taky gets nie je potrebne robit v kernel-mode, staci to spravit ako
user funkciu, ktora potom holt bude volat syscall getc - co sice asi bude
znamenat reziu navyse, ale tomu sa clovek fakt nevyhne (ibaze by dovolil
user procesom sahat priamo na zariadenia). Podobne printk nemusi robit
samotny kernel, staci ked to urobis v user mode a pre vypis znakov zavolas
putc (resp. mozno aj puts by mohla byt cez syscall - kvoli aspon nejakej
efektivite).

Skratka asi je dobre pokial mozno obmedzit robenie veci v kernel mode (kvoli
bezpecnosti/efektivite?), ak to ide spravit priamo v uzivatelskom procese...


Andrej

On Dec 13, 2007 10:55 AM, <lukas.berka at email.cz> wrote:

> Dobry den,
>
>  mam dotaz k casti Zakladni vstupne/vystupni operace. Je zde napsano,
> cituji:
>  "Za nevhodnou se z implementacniho hlediska povazuje realizace
>   vsech vyse uvedenych funkci primo formou systemovych volani".
>
>  Teto poznamce moc nerozumim. Vzdyt vsechny vstupne/vystupni funkce
>  musi nutne vest k syscallu, a to k okamzitemu. Jak jinak je
>  implementovat nez primo formou systemovych volani? Maximalne
>  to muzu chapat tak, ze misto makra generujiciho syscall zavolam
>  obecnou funkci se specialnim parametrem, ktera syscall stejne udela.
>
>  V popisu Rozhrani systemovych volani se navic pise, ze je pri
> implementaci
>  kladen duraz na dostatecne oddeleni abstrakce (uzivatelske funkce nemaji
>  predstavovat primo systemova volani, ale jen jejich wrappery).
>  Tyto dve veci spolu asi souvisi, ale nedari se mi pochopit, jak to je
> mysleno.
>
>  Prosim o nejake aspon drobne upresneni, moc by nam pomohlo.
>
> Dekuji.
>
>
>
> _______________________________________________
> OSy mailing list
> OSy at dsrg.mff.cuni.cz
> https://dsrg.mff.cuni.cz/mailman/listinfo/osy
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://d3s.mff.cuni.cz/pipermail/nswi004/attachments/20071213/1a026e58/attachment.html>


More information about the NSWI004 mailing list