mikrosekundove intervaly v Delphi5
Pavel Chromy
mac
Středa Březen 17 14:27:57 CET 2004
On Mon, 4 Feb 2002 vicek.radek@ozjc.cpost.cz wrote:
> Jde o to, ze pri fungujicim multitaskingu a multithreadingu nemate nikdy
> zaruceno prednostni zpracovani vaseho vlakna a tim i provedeni API funkce.
Windows nejsou real-time system.
> Tzn. udalost vyvolana volanim API fce se zaradi do fronty a ceka jako
> ostatni az na ni dojde rada (pokud jste nezmenili prioritu nejakeho procesu
> na NT). Alespon co vim tak napr. 98 provadeji multitasking tak, ze prideluji
> pravidelne kvanta casu kazdemu procesu. Co se tyka 32-bitovych aplikaci by
> melo byt vse v poradku kazdy proces dostane stejne penzum casu, horsi je
> kdyz neco bezi jeste 16-bitove. Tato aplikace neni schopna uvolnit procesor
> dokud se sama nerozhodne.
Ano, ale to na Win32 pro 16-bit aplikace uz neplati, ona sice neni schopna
uvolnit procesor, ale je k tomu prinucena - bezi totiz zapouzdrena v
emulacnim procesu, ktery je sam 32-bit a funguje pro nej preepmtivni
multitasking. Problem je spis v tom, ze pri pouziti 16-bit aplikace je
vytizeni systemu natolik vysoke, ze nas proces se nedostane k procesoru
vcas.
> I pokud provozujete jen 32-bit app to neni tak
> jednoznacne jelikoz W jsou schopny jeste vyhodnocovat aktivitu jednotlivych
> aplikaci a korigovat tak kvanta jake aplikace dostavaji.
> Musi se proste na to jit asi jinak, bohuzel nevim jak.
Kernel mode driver, ktery zapouzdri casove kriticke zalezitosti a pristupy
na port.
Pavel Chromy
Další informace o konferenci Hw-list