Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Brak stabilności w systemie.

26 Lis 2011 22:37 885 8
  • Poziom 10  
    Od paru lat w ramach rozrywki piszę sobie własny system w asemblerze. System ten jest oparty całkowicie na DOS, czyli startujemy go identycznie jak WIN 3.x -pisząc jeden z programów natrafiłem się na następujący problem:
    Program który piszę pozwala przeglądać i edytować pliki w postaci HEX, lecz zanim program to umożliwi to otwiera podany plik i dzieli go na pliki 64KB zapisując w katalogu tymczasowym systemu, podczas otwierania w szczególności dużych plików system po prostu mi się zawiesza.
    Do otwierania i zapisywania używam INT 21h z funkcjami 3Ch i 3Dh.
    Czy ktoś wie co może być przyczyną zawieszenia się programu?
    Warto zwrócić uwagę, że zawieszenie odbywa się w różnych miejscach.
    SS:SP zachowuje stabilność.
  • Poziom 10  
    AX=3D80h
    Otwieram plik, czytam 2x po 32 KB do pamięci.
    Tworzę nowy plik i zapisuję 2x po 32 KB, zamykam utworzony plik.
    Zamykam otwarty plik do odczytu.
    Oczywiście cały czas pełna kontrola BX, DS:DX i SS:SP.
    Zawieszanie następuje zawsze na operacjach na tym właśnie pliku.
  • Poziom 10  
    Nie działa a wręcz gdy przy al=80h wieszał w granicach 75% do 90% to teraz pasek postępu poszedł mi tylko jakieś 10%.
    Mam jeszcze jeden problem związany z tymi plikami w momencie gdy je kasuję to też mi zawiesza system, ale w przypadku kiedy wykonuję komendę kasowania plików nie istniejących (korzysta z funkcji 41h dla 21h).
  • Poziom 10  
    Dokładnie to botuje ten mój system z dyskietki startowej Win98 przy czym system umieszczony jest na dysku C z FAT32.
    Jednak zauważyłem ciekawostkę: w domu system używam na stacjonarce a do pracy biorę sobie system na fleszce i botujuę go z niej na laptopie (do botowania używam oczywiście zawartości dyskietki Win98) i na tym laptopie nie zawiesza mi się (przynajmniej przy kasowaniu tych plików bo przy otwarciu nie mam możliwości sprawdzić).
  • Poziom 10  
    Jak pisałem, program sprawdzałem na mojej stacjonarce i laptopie, wykonywałem test pracy systemu na innych komputerach, ale niestety nie ten program.
    Dziękuję za zainteresowanie...