Article View: pl.comp.os.ms-windows.win3
Article #5606Re: tryb rzeczywisty
From: Konrad Stepien
Date: Fri, 09 Jun 2006 17:49
Date: Fri, 09 Jun 2006 17:49
111 lines
6321 bytes
6321 bytes
Sep <sepu@USUNTOgazeta.pl> napisał(a): > a skoro już o pamięci: > w Internecie jest pełno błędów np. "pamięć rozszerzona to ta powyżej 640 kb" > Wydaje mi się, że (proszę o nanoszenie poprawek): > > -procesory 16-bitowe mogły obsłużyć tylko 20 lini adresowych w których > mieścił się obszar 1mb pamięci RAM. Z tego powodu całą pamięć powyżej 1mb > nazywa się pamięcią rozszerzoną Nieprawda. To dotyczy procesorów 8086/88. 80286 też jest 16-bitowy a adresuje znacznie więcej. Że o innych prockach 16-bitowych (np. motorola 68000) nie wspomnę. > -wszystkie procesory 32- i 64- bitowe potrafią przejść w tryb procka > 16-bitowego i dlatego można na nich korzystać z pracującego w trybie > rzeczywistym DOS-u > Wszystkie z rodziny i386. Bo taki Itanium już nie. O nieintelowskich nie wspomnę. Poza tym nie w trym 16-bit a w tryb 8086. Bo taki 286 może pracować w swoim natywnym trybie (innym niż 386 i wyższe), albo w "trybie rzeczywistym (real mode)" czyli jako 8086. > -pamięć do 640 kb to tzw. pamięć podstawowa (konwencjonalna) Tak, ale to już kwestja organizacji pamięci PC a nie procesora jako takiego. > -pamięc między 640 kb a 1mb to pamięć górna (upper) > ładowane są do niej ROM-y urządzeń takich jak karty graficzne w celu > przyspieszenia pracy (dziś Te romy są tam nie tyle ładowane, co mapowane na ten zakres adresów. O "ładowaniu" można mówić w wypadku "shadow BIOS". Ale to tylko trik polegający na przepisaniu ROM-u do RAM-u, właśnie w celu przyspieszenia. W każdym razie, shadow nie jest obowiazkowy. > nie przynosi to już tak dużego wzrostu wydajności) Bo dziś żaden system nie korzysta z BIOS-u w czasie normalnej pracy. BIOS jest potrzebny w zasadzie tylko w czesie startu systemu. > część z tej pamięci (nie wykorzystywana przez ROM-y) > może zostać przekstałcona w bloki UMB (upper memory blocks) do których można > ładować sterowniki W zasadzie racja, ale obszar pamięci górnej to nie tylko ROM-y. Ta pamięć jest głównie wykorzystywana jako pamięć peryferiów, np. pamięć katy graficznej. Niektóre płyty 286 i wczesne 386 miały mozliwość przemapowania pamięci RAM z tego zakresu na obszar powyżej 1MB. Szczególnie uzyteczne w maszynach z jednym megiem RAM. Wedy oczywiście nie można było korzystać z shadow BIOS. > w celu zaoszczędzenia pamięci podstawowej > za pomocą poleceń loadhigh i devicehigh. > wyłączenie opcji Shadow Ram w BIOS-ie zwiększa > ilość pamięci którą można przekstałcić w UMB Nie. Ten obszar jest i tak zajęty. Wyjątkiem jest to przemapowanie o którym pisałem, ale ono i tak nie wpływa na UMB. > -pierwszy obszar 64kb powyżej 1mb to pamięć wysoka HMA (high memory area) > -pamięć rozszerzoną (extended) można przekstałcić w pamięć stronicowaną > (expanded) zgodną ze specyfikacją Lotus-Intel-Microsoft EMS 3.2 lub 4.0 > (czym się różnią te dwie wersje?) a odbywa się to w następujący sposób: w > pamięci górnej tworzony jest blok 64kb podzielony na 4 strony po 16 kb, > które mogą "jeździć" po całej pamięci rozszerzonej. > -pamięć stronicowana (EMS) jest wolniejsza od tej w standardzie XMS Czy ja wiem. W sumie nie powinna. Myślę, że te opinie pochodzą z czasu gdy stosowane były karty pamięci EMS, bo maszyny klasy XT inaczaj nie potrafiły. > -aby stworzyć bloki UMB trzeba załadować sterownik emm386.sys (jeżeli nie > chce się tworzyć pamięci EMS to z poleceniem noems); FreeDOS posiada > odzdzielny sterownik tworzący bloki UMB - umb.sys > -sporo programów pracuje znacznie wolniej po załadowaniu emm386.sys > nawet z poleceniem noems - dlaczego? Nie zauważyłem. Inna sprawa, że emm386 zajmuje pamieć podstawową, i jeśli program nie potrafi korzystać z pamięci rozszerzonej, to emm386 będzie mu tylko przeszkadzał. > -gdy windows 9.x w plikach config.sys lub autoexec.bat > odnajdzie sterownik 16-bitowy którego nie potrafi zastąpić odpowiednikiem > 32-bitowym to > przełącza się w "tryb zgodności z trybem Ms-DOS" > jak on działa?? Nie znam się za dobrze na win9x, ale po mojemu to działa na takiej samej zasadzie jak odwołania do BIOS-u (BIOS jest 16-bitowy). > -czy to prawda, że windows 95 bez załadowania himem.sys nie potrafi zobaczyć > całej pamięci? Nie, może zupełnie pierwsze wersje bez service-pack. Za to ZTCP to win3.x nie widziały powyżej 16MB jeśli się nie założyło EMS-a > -wymienione podziały pamięci (podstawowa, górna ....) nie są podziałami > fizycznymi, a jedynie programowymi Programowe podziały to ograniczenie base memory do 640kb. Podział na 1MB i okienko 64KB (minus 16 bajtów) obszaru HMA są jak najbardziej fizyczne i wynikają z ilości nóżek które ma procesor 8086. > -systemy 32-bitowe widzą pamięć jako jedną całość bez żadnych podziałów > W zasadzie tak. Ale obszar pomiędzy 640kb a 1MB i tak jest niedostępny, bo tam siedzą BIOS-y i pamięć peryferiów. Poza tym standardowy kontroler DMA widzi tylko pierwsze 16MB, i trzeba o tym pamietać programując np. kartę muzyczną. -- WARNING: my e-mail is encrypted by ROT13 Xbaenq Fgrcvra <xbaenq@vagreqngn.arg.cy>
Technical Details
Message-ID:
<slrn.pl.e8jd5l.qmk.xbaenq@sekator.interdata.net.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!news.nask.pl!news.nask.org.pl!newsfeed.tpinternet.pl!sekator.interdata.net.pl!xbaenqReferences:
<e66e5d$nj9$1@atlantis.news.tpi.pl> <slrn.pl.e8g11c.4po.xbaenq@sekator.interdata.net.pl> <e6c847$84r$1@atlantis.news.tpi.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!news.nask.pl!news.nask.org.pl!newsfeed.tpinternet.pl!sekator.interdata.net.pl!xbaenq From: Konrad Stepien <xbaenq@vagreqngn.arg.cy> Newsgroups: pl.comp.os.ms-windows.win3 Subject: Re: tryb rzeczywisty Date: Fri, 9 Jun 2006 17:49:41 +0000 (UTC) Organization: Hard Core Slrn-pl User Lines: 111 Message-ID: <slrn.pl.e8jd5l.qmk.xbaenq@sekator.interdata.net.pl> References: <e66e5d$nj9$1@atlantis.news.tpi.pl> <slrn.pl.e8g11c.4po.xbaenq@sekator.interdata.net.pl> <e6c847$84r$1@atlantis.news.tpi.pl> NNTP-Posting-Host: sekator.interdata.net.pl Mime-Version: 1.0 X-Trace: sekator.interdata.net.pl 1149875381 27350 212.244.121.10 (9 Jun 2006 17:49:41 GMT) X-Complaints-To: news@interdata.net.pl NNTP-Posting-Date: Fri, 9 Jun 2006 17:49:41 +0000 (UTC) X-Licznik: 3792 User-Agent: slrn/0.9.7.0 (pl-1.1.1) (Linux/2.4.32-ow1 (i686)) Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit