Thread View: pl.comp.os.ms-windows.win3
2 messages
2 total messages
Started by M. "SeP"
Sat, 30 Sep 2006 10:59
tryb rzeczywisty - jeszcze raz
Author: M. "SeP"
Date: Sat, 30 Sep 2006 10:59
Date: Sat, 30 Sep 2006 10:59
27 lines
2408 bytes
2408 bytes
jeszcze raz powrócę do tego co było na początku ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ > Witam! > Z tego co wiem tryb rzeczywisty daje możliwość dostępu tylko do 1mb > pamięci > (i 64kb pamięci bezpośrednio nad nim zwany pamięcią wysoką). > Więc jak to niby jest, że DOS pracujący rzekomo w trybie rzeczywistym po > załadowaniu himem.sys ma dostęp do pamięci rozszerzonej? himem.sys udostępnia funkcje zarządzające pamiecią XMS. Zasadniczo to pozwala alokować bloki pamięci XMS i przesyłać dane między tymi blokami a pamięcią rzeczywistą. I to z zasadzie tyle. -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ale o ile rozumiem DOS nadal pracuje w trybie rzeczywistym, tak?? w przypadku EMS była tworzona ramka 64 kb podzielona na 4 16 kb bloki w obrębie UMB, która jeździła po całej pamięci. a w przypadku XMS?? bo rozumiem, że takiej ramki nie ma, a pamięć powyżej 1mb jest widziana w sposób ciągły. więc jak to pogodzić z trybem rzeczywistym? czy ma to jakiś związek z DOS Protected Mode? rozumiem, że DPMI wprowadza ochronę pamięci (ale nie wielozadaniowość), ale jak to pogodzić z pracą w trybie rzeczywistym?
Re: tryb rzeczywisty - jeszcze raz
Author: Konrad Stepien
Date: Sat, 30 Sep 2006 17:44
Date: Sat, 30 Sep 2006 17:44
47 lines
2983 bytes
2983 bytes
M. "SeP" <sepu@USUNTOgazeta.pl> napisał(a): > jeszcze raz powrócę do tego co było na początku > ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ >> Witam! >> Z tego co wiem tryb rzeczywisty daje możliwość dostępu tylko do 1mb >> pamięci >> (i 64kb pamięci bezpośrednio nad nim zwany pamięcią wysoką). >> Więc jak to niby jest, że DOS pracujący rzekomo w trybie rzeczywistym po >> załadowaniu himem.sys ma dostęp do pamięci rozszerzonej? > > > himem.sys udostępnia funkcje zarządzające pamiecią XMS. > Zasadniczo to pozwala alokować bloki pamięci XMS i przesyłać > dane między tymi blokami a pamięcią rzeczywistą. > I to z zasadzie tyle. > -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- > ale o ile rozumiem DOS nadal pracuje w trybie rzeczywistym, tak?? Tak. > w przypadku EMS była tworzona ramka 64 kb podzielona na 4 16 kb bloki w > obrębie UMB, która jeździła po całej > pamięci. I tak jak przy XMS. DOS nadal pracuje w trybie rzeczywistym. > a w przypadku XMS?? > bo rozumiem, że takiej ramki nie ma, a pamięć powyżej 1mb jest widziana w > sposób ciągły. Nie ma ramki, możesz przesłać dowolną ilość pamięci w dowolne miejsce (oczywiście to "dowolne" dotyczy pamięci rzeczywistej). Za to w zasadzie nie ma się kontroli nad pamięcią rozszerzoną. Po prostu przydzielany jest "gdzieś" blok tej pamięci o rządanym rozmiarze, dostaje się na niego "handla" i tyle. Co prawda można się dowiedzieć gdzie fizycznie ten blok leży (jest funkcja himem-a która to robi) ale to się przydaje tylko wtedy gdy sam program przechodzi w trym extended, bo normalnie to nic mu z tego nie przyjdzie. > więc jak to pogodzić z trybem rzeczywistym? Normalnie, program w ogóle nie odwołuje się do XMS-a "po adresie" tylko po uchwycie. -- WARNING: my e-mail is encrypted by ROT13 Xbaenq Fgrcvra <xbaenq@vagreqngn.arg.cy>
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads