Struktura talerzy dyskowych

Z MERA 400 wiki
Przejdź do nawigacji Przejdź do wyszukiwania

Talerze dyskowe podzielone są logicznie na sektory, z których każdy zawiera 256 słów 16-bitowych (512 bajtów). Najmniejszą adresowalną jednostką powierzchni dysku jest sektor. 16-bitowy adres pozwala na zaadresowanie 16M słów, czyli 32MB przestrzeni dyskowej. Dyski mogą być dzielone na obszary, co dla dysków o rozmiarze powyżej 32MB pozwala użyć całej ich pojemności (patrz: Tablica konfiguracji MERY-400 i Tablica opisu dysków WINCHESTER).

Podstawowe zbiory

Talerze dyskowe obsługiwane przez system mają z góry narzuconą strukturę. Odpowiednie ich uformowanie można otrzymać w wyniku wykonania zlecenia CFA programu BOSS. Na nowo kreowanym talerzu utworzonych jest wstępnie dwóch użytkowników: LIBRAR i BOSS. Użytkownik LIBRAR jest pniem drzewa zkorowidzów. U niego też powinny znajdować się wszystkie zbiory zawierające programy biblioteczne. Drugi z nich, BOSS, ma pod swoją kontrolą zbiory zawierające słowniki i metryki dysków oraz zbiór zawierający system operacyjny. Zbiory te mają na talerzu dyskowym ustalone położenie i w związku z tym nie mogą być rozszerzane ani przenoszone w inne miejsce.

Podstawowe zbiory użytkownika BOSS:

Adres dyskowy Zbiór Słowo Opis
0÷1 LABEL Metryka dysku
0 nazwa obszaru dyskowego
1 A0 - adres początku zbioru DICDIC
2 A1 - adres początku zbioru FILDIC
3 A2 - adres początku zbioru MAPA
4 A3 - adres końca zbioru MAPA
5 AK - długość obszaru dyskowego (adres końca dysku)
6, 7 nazwa wpisana przez użytkownika (komentarz)
8÷10 data inicjalizacji talerza dyskowego
11÷16 data i godzina ostatniej aktualizacji czasu
1÷0140 SYSTEM System operacyjny CROOK-5
0140÷A0 Obszar (na talerzu systemowym) używany do kopiowania obszaru pamięci systemu po upadku
A0÷A1 DICDIC Słownik skorowidzów i użytkowników mogących pracować na danym talerzu dyskowym
A1÷A2 FILDIC Słownik zbiorów przechowywanych na obszarze dyskowym
A2÷A3 MAPA Mapa zajętości dysku. Mapa utworzona jest w ten sposób, że każdemu sektorowi dyskowemu odpowiada jeden bit mapy. Bit ustawiony na 0 oznacza, że odpowiadający mu sektor nie wchodzi w skład żadnego zbioru dyskowego.
0÷AK GLOBAL Zbiór obejmujący cały obszar dyskowy

Uwagi:

  • A0, A1, A2, A3 oraz AK oznaczają adresy dyskowe ustalane w czasie inicjalizacji talerza dyskowego.
  • Zbiór SYSTEM nie jest tworzony na obszarze dyskowym dla którego zadeklarowano A0<0140.
  • Jeśli A0=0, to nie jest tworzony zbiór LABEL.
  • Ze względu na przyjęty w systemie sposób kodowania położenia etykiety zbioru wymagane jest, aby różnica A2-A1 była mniejsza od 192. Daje to możliwość zarezerwowania miejsca w słownikach na utworzenie etykiet ponad 4000 zbiorów.

Słownik skorowidzów DICDIC

Pierwszych osiem słów zbioru DICDIC zawiera powtórzenie metryki dysku. Niezgodność tych ośmiu słów z metryką dysku w chwili startu systemu może być powodem uznania talerza jako obcy. Gdy A0=0, wtedy początek zbioru DICDIC spełnia rolę metryki talerza.

Następne słowa zbioru zawierają opis użytkowników i skorowidzów. Opisy uporządkowane są w pozycje takie, że:

  • każda pozycja zajmuje 12 słów, zawiera opis jednego skorowidza i rozmieszczona jest na trzech sektorach, po 4 słowa na każdym;
  • cztery kolejne słowa jednego sektora wchodzą w skład jednej pozycji;
  • dalsze słowa pozycji umieszczone są na następnych dwóch sektorach. Początek czterosłowowego przedłużenia pozycji jest w takim samym położeniu względem początku sektora, co początek pozycji;
  • po zapełnieniu trzech sektorów, początek następnej pozycji znajduje się na następnym wolnym sektorze, tzn. o trzy sektory dalej.

Liczba 0 występująca w pierwszym słowie pozycji oznacza pozycję pustą, natomiast 1 - koniec słownika. Brak pozycji "koniec słownika" sygnalizowany jest alarmem "ERROR IN DIRECTORY".

Poszczególne słowa pozycji opisu skorowidza zawierają:

Słowo Opis
0, 1 Nazwa skorowidza lub użytkownika
2 kod skorowidza
3 liczba sektorów podległych
4 hasło użytkownika
5 budżet do utrwalania zbiorów
6 kod skorowidza nadrzędnego
7 uprawnienia użytkownika
8, 9 nazwa programu obsługi (zlecenie OSL)
10, 11 nazwa pierwszego zlecenia (drugi parametr zlecenia OSL

Ponadto bit 1=1 w słowie siódmym oznacza użytkownika, bit 0=1 - użytkownika czasowo zawieszonego (zlecenie CLU). Występujący w opisie kod użytkownika równy jest adresowi etykiety pomnożonemu przez 4.

Słownik zbiorów FILDIC