-
Data: 2019-03-01 05:08:44
Temat: Re: CP/M i 64kB
Od: "J.F." <j...@p...onet.pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Dnia Thu, 28 Feb 2019 21:05:17 +0100, Sebastian Biały napisał(a):
> On 28/02/2019 14:56, d...@w...pl wrote:
>> Przesadzasz z tymi 64kB liniowej przestrzeni.
>> Było jej w 8086/88 1024kB
>
> Nie była liniowa. Była podzielona na okna po 64kB przemieszczane
> rejestrami segmentowymi. Niewielikie usprawnienie względem Atari czy
> Commodore które miały to zrobione w hardware. Atari obsługiwało 1MB po
> kilku przeróbkach i kod wyglądał tylko troche bardziej strasznie niż x86.
Bez przesady ... 1MB na 8 bit procesorze i stronnicowany 8 czy 4K ...
to musialo byc straszne :-)
>> A że nie można było sobie adresować jednym rejestrem, tylko parą - no cóż w tym
dziwnego, skoro rejestry były 16-bitowe?
>
> A kto im probił zrobić rejestry adresowe 20 bitowe? Reglamentacje mieli
> w korpo? Jakoś 68k nie miał problemu z byciem 16 bitowym hardwareowo,
> ale model programistyczny miał 32 bity.
te 16 bit to chyba tylko szyna zewnetrzna i multiplikator.
Reszta byla 32-bit.
20-bitowe rejestry bylyby raczej trudne w obsludze.
>> Najdurniejszym pomysłem było to, że strony były zrobione po 16B, zamiast po prostu
po 64kB.
> Nic by to nie dało. Segmentacja bez względu na szerokość to idiotyzm w
> czystej postaci.
No, tak w ogolnosci ma pare zalet.
Np. pozwala zmniejszyc fragmentacje przestrzenii adresowej.
Wyobraz sobie, ze uzywasz w programie kilku duzych tablic,
o zmiennym rozmiarze. Czyz nie byloby wygodnie, gdyby kazda z nich
byla w osobnym segmencie, adresowanym od zera ?
Czy np problem C i innych podobnych jezykowi i unixow/innych systemow.
Program ma swoj kod.
I wymaga pamieci danych, stosu na adresy powrotow i zmienne funkcji,
oraz sterty pamieci do alokacji.
Gdzie je ustawic, jesli wstepnie nie wiadomo ile tego stosu i sterty
trzeba ?
A do tego program uzywa kilku bibliotek, ktorych pewnie beda uzywac
tez inne programy/procesy.
Gdzie je zaladowac do pamieci, jesli procesor nie pozwala na kod w
pelni relokowalny ?
J.
Następne wpisy z tego wątku
- 01.03.19 20:17 Sebastian Biały
- 01.03.19 20:37 Sebastian Biały
- 01.03.19 20:51 Sebastian Biały
- 01.03.19 22:09 HF5BS
- 01.03.19 22:12 Sebastian Biały
- 01.03.19 22:57 Sebastian Biały
- 02.03.19 00:29 J.F.
- 02.03.19 01:10 J.F.
- 02.03.19 02:07 Marcin Debowski
- 02.03.19 10:00 Sebastian Biały
- 02.03.19 10:20 Sebastian Biały
- 02.03.19 12:43 Marcin Debowski
- 02.03.19 13:18 Marek
- 02.03.19 13:30 Mateusz Viste
- 02.03.19 13:36 Zbych
Najnowsze wątki z tej grupy
- w czasach LED komary mają ciężko
- walizka z kodami
- Rejestrator temperatur - termopara, siec
- Router LTE z możliwością zmian MTU
- Fajny film widziałem...
- Jaka ładowarka sieciowa do Iphona?
- Taśma izolacyjna do prac elektrycznych
- Recenzja 3.1A ;) w 6 gniazdach...
- Re: Recenzja 3.1A ;) w 6 gniazdach...
- Re: Recenzja 3.1A ;) w 6 gniazdach...
- Re: Recenzja 3.1A ;) w 6 gniazdach...
- Wkrętarki, wiertarki...
- Zasilacz impulsowy 12V 10A, coś godnego uwagi jako zamiennik akumulatora wkrętarki
- Mouser - koszt wysyłki
- [OT] Jak wycinac ksztalt w piance lub styropianie?
Najnowsze wątki
- 2025-07-18 celnicy pobili policjanta
- 2025-07-18 Warszawa => Technik IT - Konfiguracja i Wsparcie Sprzętowe <=
- 2025-07-18 Warszawa => Specjalista ds. Sprzętu IT i Wsparcia Technicznego <=
- 2025-07-18 Białystok => Kotlin Developer <=
- 2025-07-18 Warszawa => Sales Director (Cloud solutions) <=
- 2025-07-18 Spalinowa trauma
- 2025-07-18 Polska => Senior Key Account Manager <=
- 2025-07-18 Białystok => Programista Kotlin <=
- 2025-07-18 Szczecin => Key Account Manager IT <=
- 2025-07-18 Łódź => Programista Mainframe (z/OS, Assembler) <=
- 2025-07-18 Łódź => Mainframe (z/OS, Assembler) Developer <=
- 2025-07-18 Lublin => Delphi Programmer <=
- 2025-07-18 Lublin => Programista Delphi <=
- 2025-07-17 Grok zaczął nadużywać wulgaryzmów i wprost obrażać niektóre znane osoby
- 2025-07-17 Andrzej Duda ułaskawił Roberta Bąkiewicza od zarzutu zapchnięcia ze schodów aktywistki Babci Kasi