Mam problem z programem, który piszę w TP 7. Mianowicie program uruchamia także inne programy (Exec). Problem w tym że brakuje dla nich pamięci konwencjonalnej. Jeden z zewnętrznych programów wymaga minimum 570 kB, a mój program zajmuje w pamięci ponad 130 kB. Myślałem o umieszczeniu programu w pamięci xms, lec nie za bardzo wiem jak to zrobić. Proszę o pomoc. Z góry dzięki!

- Rejestracja:około 21 lat
- Ostatnio:około 4 lata
- Lokalizacja:Kraków
z tego co pamiętam (ale mogę się mylić) to coś się wpisywało w CONFIG.SYS tylko nie pamiętam co to było a leciało to jakoś tak:
DEVICE=C:.........ścieżka do pliku+\XMS.COM............
tylko nie wiem jak teraz pod windowsem to zadziała :|

- Rejestracja:ponad 21 lat
- Ostatnio:ponad 2 lata
- Postów:317
Nie slyszalem o czyms takim - tryb rzeczywisty to tryb rzeczywisty i nie ma wyzszych adresow niz 1MB. Mozna podniesc próg 640 kb wykorzystujac pamiec uper ale to bedzie gora 120kb wiecej. Wiem ze jest mozliwosc wykorzystania do 16MB pamięci "extended". Mam gdzies nawet kod do tego ale to dziala na zasadzie jakby dysku , to znaczy program nie bedzie tam ladowal zmiennych tylko sam musisz sobie tam kopiowac i stamtad "znosic" do pamieci ponizej 640 KB, jak w przypadku pliku tyle ze szybciej(choc nieporownwalnie wolniej niz dostep bezposredni do pamieci)
No i jeszcze jedno wyjscie - uzyj borland pascala w trybie chronionym jelsi masz taka mozliwosc.

- Rejestracja:ponad 22 lata
- Ostatnio:dzień
tak czy inaczej w trybie rzeczywistym nie ma możliwości wykonania kodu znajdującego się ponad adresem $FFFF:FFFF, czyli jesteś i tak ograniczony przez 1MB + 64kB - pamięć zajmowana przez dos - karta graficzna (96kB) - wszelakie sterowniki.
tyle pamięci wygospodarujesz odpalając z config.sys następujące polecenia:
device=C:\WINDOWS\himem.sys
device=C:\WINDOWS\emm386.exe RAM I=B000-B7FF
i usuwając co tylko się da jeśli chodzi o inne sterowniki (polecenie mem powie Ci, co jest uruchomione i zżera pamięć, szczególnie mem /d i mem /c).

- Rejestracja:prawie 23 lata
- Ostatnio:prawie 3 lata
Fajnie to rozwiązywał Norton Commander.
Składał się z dwóch plików NC.EXE i NCMAIN.EXE.
Po uruchiomieniu NC.EXE uruchamiał NCMAIN.EXE (cały interfejs itd.), nastepnie kiedy chciało się uruchomić program, NCMAIN zapisywał jaki program z jakimi parametrami (chyba do pliku) i kończył działanie z odpowiednim ExitCode, a nastepnie NC.EXE uruchiamiał zlecony program, a po jego zakończeniu z powrotem NCMAIN.EXE
Zarejestruj się i dołącz do największej społeczności programistów w Polsce.
Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.