Hollosi Information eXchange /HIX/
HIX CODER 1790
Copyright (C) HIX
2003-03-31
Új cikk beküldése (a cikk tartalma az író felelőssége)
Megrendelés Lemondás
1 Re: TP7 delay 2GHz-tul :o) (mind)  9 sor     (cikkei)
2 Re: szamtek alapjai - HDD, billentyuzet. leendo OS (mind)  19 sor     (cikkei)
3 Soros kommunikációs probléma (mind)  14 sor     (cikkei)
4 Re: TP7 delay 2GHz-tul :o) (mind)  11 sor     (cikkei)
5 Re: szamtek alapjai - HDD, billentyuzet, leendo OS 2 (mind)  178 sor     (cikkei)

+ - Re: TP7 delay 2GHz-tul :o) (mind) VÁLASZ  Feladó: (cikkei)

Misi!

Sot, nemcsak ez a baj, hanem nekem most jott elo, hogy  a Win98-ra irt PIC prog
ramozomban a millisec-es kesleltetes nem mukodik rendesen WinXP alatt, miutan s
leep-pel (ez masm32, de gondolom ugyanaz a fuggveny mas neven) oldom meg. Igy n
alam is csak ez a 'gyalogos' GetTime jott be. Ha van valami jobb otleted, szolj
 nekem is. Koszi.

(webes bekuldes, a bekuldo gepe: bodosi.phys.szote.u-szeged.hu)
+ - Re: szamtek alapjai - HDD, billentyuzet. leendo OS (mind) VÁLASZ  Feladó: (cikkei)

Azert egy fajlra mutathat hardlink vagy softlink... A hardlink az, ahol az
inode-bejegyzesre mutat tobb directorybol - persze akar mas-mas
fajlnevvel -, es ez csak particion belul mukodik, a softlink pedig az, ami
pl. a Win-ben is van, hogy a link egy mar meglevo fajlra mutat.. Ebbol
viszont lehet halott linket gyartani, ha a celfajlt kitorlod...
(Winben kedvenc szorakozasunk volt, hogy letrehoztunk egy ures fajlt
"meaning of life" neven, majd csinaltunk ra egy linket, majd letoroltuk az
eredeti fajlt... Ezutan megprobaltuk elinditani a linket... Es persze jokat
rohogtunk, amikor irta: "Microsoft Windows is searching for meaning of life.
Click on 'Browse' if you want to locate it." vagy valami ilyesmi...)

Sücy
----- Original Message -----
From: >
Sent: Monday, March 24, 2003 8:24 PM
Subject: Re: szamtek alapjai - HDD, billentyuzet. leendo OS
> Tobb bejegyzes is mutathat egy
> file-ra, es csak akkor torlodik, ha mindegyiket kitoroltek - viszont az
> op. r. nem tudja "visszahozni".
+ - Soros kommunikációs probléma (mind) VÁLASZ  Feladó: (cikkei)

Sziasztok!

Meglehetősen nagy problémám adódott. A Microsoft MSDN-je alapján írtam egy
 soros port kezelő programot ami NT alapú rendszerekben kivállóan műk
ödik, de Win9x alatt nem. Tanácstalan vagyok. Ez a program a szakdolgozatom rés
zét képezné,ha sikerülne.
Ja igen, Delphi 6 alatt programozok, és nem a felrakható komponensekkel kellene
 megvalósítani a kapcsolatot.
Ha van valakinek ebben tapasztalata, vagy megoldása, légyszi ossza meg velem.

Köszi!
Jani

(webes bekuldes, a bekuldo gepe: dialup23.ts4.sztaki.hu)
+ - Re: TP7 delay 2GHz-tul :o) (mind) VÁLASZ  Feladó: (cikkei)

> Tegnap elovettem egy regi progimat, ami meg TP7 alatt irtam. Modositottam,
> ujraforditottam, es megelpodve tapasztaltam, hogy a delay parancs nem
> mukodik rendesen a 2GHz-es procival. Teljesen elmaszik az egesz, semmi koze
> nincs a valos ideju keslelteteshez /pedig a help valami  ilyesmirol
Ugye, a regi meg DOS alatt futott? Elkepzelheto, hogy jobb lesz a 
helyzet, ha engedelyezed a programnak a valos ideju orat.

> Szoval nektek hogy muxik a dolog - mar aki hasonlo cipobe jar - van erre
> valmi pach?
Lehet, hogy ez is kell, errol mar tobbszor volt szo itt - bar, ha nem 
szall el a programod...
+ - Re: szamtek alapjai - HDD, billentyuzet, leendo OS 2 (mind) VÁLASZ  Feladó: (cikkei)

>> Nem kell ennyi: egy szektor n*256 byte, es csak egyszerre 
>> kezelheto.
> ?? Hogyhogy "egyszerre"? A szektor a tortaszelet, nem? Ebben vannak
>  kisebb es nagyobb ivek,
Ebben pongyola voltam: arrol a korivrol beszelek, ahol ez az n*256 byte
elhelyezkedik, amelyet a lemez egyszerre ir vagy olvas (az "n" a lemez
fizikai felepitesetol fugg). Ennel kevesebb byte-ot nem tud beolvasni
vagy kiirni, ez a blokkos eszkozok jellemzoje. Megirhatna valaki a nevet...

> azokon a bitek. (Tenyleg, fix fordulatszamrol szokas beszelni, ezek
>  szerint a maganeses reteg felbontasat nem akarja'k maxra 
> kihasznalni?)
Ez a lemeztol fugg. Lattam mar olyan optikai lemezt, amelyen szemmel
lathatoak voltak a szektorjelek es a kulso savokon tobb volt beloluk.

>> a mai winchestereken altalaban 2 fej van,
> Marmint az 1 db lemez ket oldalan 1-1db fej?
Igen. Van masfele is, de az ritkabb.

>> de a BIOS-ban mar szabvanyos, hogy a fejek, a savok es a szektorok
>>  szama hany biten van tarolva
> Remek. Szoval a BIOS rutinnak lenne feladata, mint a FDDnel, hogy a 
> mechnika minden nyu"get atvegye, IOn at vezereljen mindent, kozben
Nem, ettol meg a winchester intelligens - csak nem olyan, amilyennek a
BIOS gondolja. Belul titokban forditja a cimeket.

> a HDDnek kevesebb feje de tobb savja meg szektora van, es csak 
> szinleli a soklemezes felepitest?
Pontosan.

> Miert nem keszul modern HDDhez modern BIOS rutin?
Mert a regi szabvanyos. Ha nem tetszik, csinalj uj szabvanyt, vedd
tudomasul, hogy a regi winchesterek nem fognak vele mukodni, aztan
probald meg elterjeszteni :-( Ezert szoktak inkabb foltozgatni a
szabvanyt, errol inkabb kesobb.

>> - vagy a felengedett billentyu helyet mutatja meg)
> Puffer a bill.ben, szep sorban beolvashatok IOn at. OK. Lenyomva 
> tartott gomb tobbszoros lenyomasnak szamit, puffer hamar betelik. 
> OK. De ebbol hogyan latszik, hogy _mikor_ volt lenyomva vagy epp 
> felengedve?
A felengedeskor kuldott kodban latszik, hogy ez egy "felengedett" gomb
(a fegfelso bit ilyenkor egyes). A billentyuzet be van programozva,
hogy a folyamatosan lenyomva tartott gombnal milyen surun kuldje ujra a
kodot. A BIOS nem foglalkozik azzal, hogy folyamatos-e a gombnyomas: ha
jon a kod, beteszi a pufferbe.

>> vagy a felengedett billentyu helyet mutatja meg) a megfelelo 
>> porton,
> Hogyhogy a helye't?  Es hogyhogy a megfelelo porton? Nem ertem.
A "hely" a gomb poziciojat mondja meg a billentyuzeten: "Esc"=1, a
kovetkezo gomb=2, az utolso=84 - mindegy, hogy milyen felirat (pl.
magyar vagy angol) van rajta. A port az, amelyiken a billentyuzet
beszelget a geppel.

>> majd kuld egy nyugtazo jelet a billentyuzetnek.
> Mit nyugtaz? Hogy megkapta? Nem a kezfogasrol beszelsz gondolom..
De igen, pont ez a mechanizmus. A nyugtazo jelre a billentyuzet tudja,
hogy beolvastak a kodot - leveszi, es kiadja a kovetkezot + ker uj
megszakitast, ha van meg lenyomott gomb.

>> en mar irtam olyan programot, ahol egyszerre 8 jatekos nyomogatja 
>> a gombokat es mindnek _folyamatosan_ kell mukodnie.
> Erre kivancsi vagyok hogy csinaltad, mert nem ertem. Az egyszerre
Nem tudsz egyszerre megnyomni ket gombot.

> lenyomott gombok kodjaival mi lesz? Nem telik meg az a puffer nagyon
>  hamar? Hogy tesz kulonbseget a lenyomas es felengedes kozott? Nem
En nem puffert hasznaltam. A Videoton TV-foci tovabbfejlesztett
valtozatarol van szo - itt a feladat az, hogy a jatekosok egy gomb
lenyomasara elinduljanak folfele (amig le van nyomva a gomb), a masikra
lefele. Minden jatekosnak sajat gombparosa van (pl. ugy mozognak, mint
az asztali fociban). Ugy oldottam meg, hogy amikor beerkezik a
gombnyomas kodja, akkor atirok egy jelzot, hogy az adott jatekos most
pl. felfele megy - amikor pedig jon a jel, hogy elengedtek, akkor
torlom, igy leall (kozben lehet, hogy 5 masikat megnyomtak vagy
elengedtek - akkor is tudja, hogy most melyiket kell irnia). Igy lehet
megoldani, hogy ne csak a programozott idonkent (altalaban negyed
masodpercenkent jon ismetles) mozduljon egyet a jatekos. Ettol
fuggetlenul a kodot el is teszem, igy a tobbi funkcio is megy a
programban, csak ugy kellett megirnom, hogy scankodokat hasznaljon,
mert ilyenkor senki sem forditja nekem. Hasonlot hasznalok egy masik
programban, ahol az a gond, hogy ha folyamatosan nyomsz egy gombot,
akkor az elso ismetles kb. 1 mp: tehat a jatekos mozdul egyet, majd var
egy mp-et, utana negyed mp-enkent mozdul(na, de kozben agyonvagtak,
mert nem volt eleg furge). Ehelyett a program figyeli a kodokat: ha
erkezik egy kod, azt atadja a BIOS-nak, amelyik szepen lekezeli, stb. -
a rutinom pedig, ha ez egy "elengedett" gomb volt, akkor kitorli a
megfelelo valtozot (amiben idaig az elozo kod volt), igy a foprogramban
a jatekos leall. Igy mindegy, hogy a billentyuzet milyen surun kuldi az
ismetlest: a jatekos folyamatosan mozog.

Ha egy program "ratelepszik" egy BIOS rutinra, akkor a sajat rutin
vegen illik meghivni az eredeti BIOS rutint is. Ha ezt nem teszi meg
(lassu lenne vagy mas problema), akkor viszont el KELL vegeznie az
eredeti rutin feladatat is (pl. kezelni a rendszerorat vagy nyugtazni a
billentyuzetet, kulonben az ora nem megy, a billentyuzet pedig - hiaba
olvassak - egy ido utan sipolni fog, hogy betelt a puffer: ilyenkor nem
a gepben, hanem a billentyuzetben levo). Figyelni kell arra is, hogy a
rutin ne legyen tul hosszu, mert ha kozben erkezik tobb ujabb
megszakitas, akkor ezekbol tipusonkent csak egy fog lefutni, igy keshet
az ora (mint ahogy szokott is, floppykezeles kozben), stb. - akar
osszeomolhat a rendszer.

>> A Shift/Ctrl/Alt/xLock/stb. allapotat megjegyzi 
>> Marmint a Shift/Ctrl/Alt stb. gombot?
Igen. Ez kell ahhoz, hogy tudja pl. hogy most kis vagy nagybetut
kuldjon (ezeknek a scankodja ugyanaz, mert ugyanaz a gomb).

>> akkor beirja az ASCII kodot is (figyelembe veve a fenti shiftek 
>> allapotat), ha nem akkor csak az un. scankodot irja ebbe a 
>> taroloba, ami megfelelo fuggvenyekkel olvashato is: igy lehet 
>> megkulonboztetni pl. a Ctrl M jelet az Enter gombtol.
> Kiprobaltam a Ctrl M-t, tenyleg enterkent viselkedik. Mi az a 
> scankod, mivele fuggveny olvassa?? Ez az egesz nagyon homalyos.
BIOS belso rutin forditja a kodokat. Nem tudom milyen programmal nezted
- az, amelyik a scankodot is atadja, megmutatja a kulonbseget. Az ASCII
kodja mindkettonek 0D, de az Enter scankodja 1C, az "M" pedig 32 hexa.

>> programozhato ugy, hogy max. 4 byte-os, hosszu kodokat kuld,
> Leutesenkent 4 bajt? Mar epp tunodtem, hogy a sok ASCII kod mellett 
> nem fer el a tobb kod, de igy mar ertem. A 84 gombnal sem csak 1 
> bajt volt?
De, ott meg igen. Szerintem epeszu felhasznalashoz ez eleg, teljesen
feleslegesnek tartom a 84 gombosnal nagyobb billentyuzetet. Te minden
gombot hasznalsz rajta?

>> Nem - intelligensen nezi, hogy mikor nyomtak le es engedtek el az
>>  adott gombot es pontosan igy kuldi a kodokat is.
> A kodjaban benne van, hogy leutes vagy felengedes es az idopontja
Nem, csak a sorrend stimmel.

>>> rezidens progi egyszer is atadja a CPUt a user altal 
>>> kivalasztott proginak, onnatol kezdve semmi hatalma nem marad.
>> Tevedsz. Mar DOS/Win3 alatt is ott van a megszakitasi rendszer: ha
>>  mas nem, 55ms-onkent az idozito "szol" (persze, ha ezt az 
> Olyan termeszetesnek veszed ezeket, de pl. az 55msrol most hallok 
> eloszor. Ezek szerint van valami beepitett hardveres idozito. Es az
>  mit csinal? Mi van 55 ms utan? Kap a futo progi egy megszakitast?
Igen, ahogy irod. Az idozito folyamatosan megy es max. 55ms-ra
programozhato (32 biten). Ilyenkor egy BIOS megszakitas fut le, ami DOS
alatt alapesetben a rendszerorat kezeli - de erre barmilyen program
ratelepedhet. Ha letiltod, nem megy a SW ora a gepen, ha pedig kisebb
idore allitod es nem csinalsz tovabbi trukkot, akkor sietni fog
(esetleg nem lehet dolgozni sem, mert mondjuk a NC-ben 3 mp mulva indul
a 3 percre allitott kepernyovedo).

> akkor? Es mi az, hogy "ha mas nem"? Ha nincs hardveres idozites,
Pl. ha valaki "elfogta" a lemezkezelo megszakitast (virusok kedvenc
modszere), akkor minden lemezkezelesi muveletnel megkapja a vezerlest.

> akkor me'g mi mas zokkentheti ki a futo progit?
Pl. a billentyuzetkezelo megszakitas. Idealis, ha billentyukoddal
szeretnel leallitani egy programot - ha mar a nagy tudasu M$ ezt nem
tette bele az elso operazos rendszerebe x ev alatt sem.

>> Igy mukodnek pl. a nem dedikalt DOS szerverek.
>  kis egyszeru agyamnak a szerver egy felfoghatatlan fogalom. Amiket
Itt most csak az lenyeges, hogy ez a szerver raul nehany megszakitasra,
igy idonkent megkapja a vezerlest es vegezheti a dolgat - ugy, hogy
kozben Te is dolgozhatsz a gepen a sajat programoddal.

>>> a userprogi rogton a BIOS rutint hivogatja,
>> altalaban sajat programkonyvtarakban levo rutinokat szokas hivni
> Jaj de nehez ez a szamtek. Mi az a programkonyvtar?? Az OSnek 
Bocs' - a programkonyvar annak a forditonak a resze, amelyet a
programodhoz hasznalsz. Ha egy magasszintu programban kiadsz pl. egy
"print" utasitast, akkor futaskor ez az elore megirt rutin fog lefutni.
Ez megoldhato ugy, hogy amelyik rutin(csomagbol barmelyik) kell, azt
beleforditja a programodba - vagy van egy(nehany) kiegeszito file,
amelyiknek ott kell lenni a programod mellett vagy a PATH-ban, es azt
hasznalja. Erdemes egy ures programot (amelyiknek a forrasa csak annyi,
hogy elindul es leall), visszaforditani es megnezni: van benne jo par
rutin, amelyek arra szolgalnak, hogy a programod el tudjon indulni,
legyen egy kornyezete, amit hasznalhat es utana normalisan vagy
hibajelzessel le tudjon allni. Az a legszebb a szam.techn.-ban, hogy 
akarhova nyulunk, mindenutt van valami erdekes... :-) az eddigi 
temakrol is lehetne sokkal bovebben irni.

AGYKONTROLL ALLAT AUTO AZSIA BUDAPEST CODER DOSZ FELVIDEK FILM FILOZOFIA FORUM GURU HANG HIPHOP HIRDETES HIRMONDO HIXDVD HUDOM HUNGARY JATEK KEP KONYHA KONYV KORNYESZ KUKKER KULTURA LINUX MAGELLAN MAHAL MOBIL MOKA MOZAIK NARANCS NARANCS1 NY NYELV OTTHON OTTHONKA PARA RANDI REJTVENY SCM SPORT SZABAD SZALON TANC TIPP TUDOMANY UK UTAZAS UTLEVEL VITA WEBMESTER WINDOWS