assembly kod

Balla Zoltán vega55 at freeweb.hu
Sun Oct 19 16:34:29 CEST 2003


From: "Kovy" <janos at kovy.hu>
> Köszi a segítséget. Arra gondoltam, hogy egyes programok és események
> kiváltják a "hullamerevséget", aztán egyszer ismét elindul a kurzor, az egér stb.
> Tehát valami lefogta. Ezt szeretném tenni én is, de csak akkor amikor szükséges.
>
> János
>
>
Amikor maga az eger is "megfagy" azt valoszinuleg az op rendszer csinalja! Anno en
is nagyon szerettem volna, ha egy programom(EEPROM egeto) akkora prioritassal fut,
hogy meg az eger sem mozog futaskor. Ezt Win95-Me alatt nem tudtam sehogyan sem
elerni. Ezek a Windows-ok nem engedik sem a hardware-s megszakitaskezelo
(reszleges)letiltasat, sem pedig nem tamogatjak a real time prioritast. A maximalis,
amit ki tudsz hozni az az, hogy egy olyan ciklust keszitesz, amiben csak "teszed a
dolgodat" anelkul, hogy a GUI-hoz fordulnal. Ha most kozvetlen a ciklus inditasa
elott maximalis prioritast adsz a processnek es a szalanak(!), akkor mar
meglehetosen jo arannyal fog futni a program, de meg mindig sajnos nem lesz real
time! Ennel tobbet ezek alatt a Windowsok alatt nem lehet! Legalabbis en ugy tudom,
es tapasztaltam :-(
Egy pici javulast meg el tudsz erni azzal, ha letiltod az egeret a Windows-ban.
Azonban ez csak az egeruzenetek megszunesehez vezet(ami megintcsak idobe kerul), nem
pedig az altala okozott megszakitasok megszunteteset teszi lehetove, igy lenyeges
valtozas nem fog tortenni!
Talan az is eleg lenne Neked, ha kihasznalnad a prahuzamos port megszakitaskereset.
Ha ehhez irsz, vagy inkabb szerzel egy kernel szintu drivert, akkor ujra csak eleg
pontosan tudsz reagalni az esemenyekre!
Mas a helyzet, ha mondjuk Win2000 ala irod a programot. Itt mar van ra lehetoseg,
hogy akkora(real time) prioritast adj a programodnak, hogy futasa kozben az op
rendszer gyakorlatilag leall a program futasa idejere!!! Ilyenkor sem az ora, sem az
eger, sem pedig a kurzor nem mozog, sot egyetlen mas program sem fut, beleertve
magat az op rendszert is! Tehat, ha a programod nem adja vissza a vezerlest az op
rendszernek, akkor nincs olyan ami megszakithatna, akarcsak egy pillanatra is a
futasat. Az mas kerdes, hogy ha egy pillanatra atadod a vezerlest az op redszernek,
mar semmi garancia nincs arra vonatkozolag, hogy mikor kapod ujra meg! Altalaban
rogton megkapod, mivel a Te programod a legnagyobb(az op rendszertol is nagyobb)
prioritasu.

Zoli



More information about the Elektro mailing list