‟overcq”

Zmienne plikowe

System OUX/C+ jest strukturalnie tworzony z myślą o zarządzaniu dostępnymi zasobami komputera, takimi jak dostępna pamięć ulotna, by nie następowało przerwanie programu z powodu braku zasobu, ale kontrolowane wyjście z wykonywanej funkcji.

W tym celu program OUX/C+ jest tworzony strukturalnie ze zwracaniem i sprawdzaniem błędów po wykonaniu procedury oraz powrotem z procedury w przypadku błędu wewnętrznego. Zapewnia to kontrolowane wyjście na przykład w przypadku braku pamięci do przydzielenia programowi.

Drugim problemem do rozwiązania jest przetwarzanie danych o rozmiarze przekraczającym lub nadmiernie zajmującym dostępną pamięć ulotną, tak by nie było konieczności dokładania fizycznej pamięci ulotnej do wykonania zasobożernej operacji na komputerze, np. kompilacji dużego programu. Wstępnym rozwiązaniem tutaj jest wykorzystanie pamięci nieulotnej, ale nie do bezmyślnego przerzucania pamięci do pliku wymiany, lecz do składowania w pliku — danych pośrednich programu. Taki plik reprezentowałby jakąś zmienną w programie, na przykład tablicę (struktur).

W celu wprowadzenia tego drugiego rozwiązania trzeba dostosować obecny menedżer plików (“mem-file”) tak, by nie przechowywał w pamięci podręcznej zawartości pliku dla takich zmiennych plikowych. Poza tym menedżer plików i tak wymagał dodania algorytmu zwalniania pamięci podręcznej dla zwykłych plików.

Menedżer plików (“mem-file”) został dostosowany tak, by można było tworzyć zarządzalne zmienne plikowe w postaci rozszerzeń tego menedżera. Na przykład można utworzyć procedury odczytu i zapisu danych do zmiennej plikowej: …“_Q_file_Z_variable_P()” i …“_Q_file_Z_variable_R()”.