Systém ukládání disků - Disc Filing System
![]() | Tento článek má několik problémů. Prosím pomozte vylepši to nebo diskutovat o těchto otázkách na internetu diskusní stránka. (Zjistěte, jak a kdy tyto zprávy ze šablony odebrat) (Zjistěte, jak a kdy odstranit tuto zprávu šablony)
|
Vývojáři | Počítače žaludů |
---|---|
Celé jméno | Systém ukládání disků |
Představený | 1982Žalud MOS | s
Identifikátor oddílu | Žádný |
Struktury | |
Obsah adresáře | Jeden katalog 31 záznamů pevné délky |
Přidělení souborů | Položky počáteční délky |
Špatné bloky | Žádný |
Limity | |
Max. velikost svazku | 256 kB |
Max. velikost souboru | 255½ KB |
Max. počet souborů | 31 |
Max. délka názvu souboru | 7 znaků |
Povolené znaky v názvech souborů | ASCII |
Funkce | |
Zaznamenaná data | Žádný |
Časové období | N / A |
Vidlice | Ne |
Atributy | Znak adresáře, Načíst adresu, Adresa spuštění, Zamknuto |
Oprávnění systému souborů | Ne |
Transparentní komprese | Ne |
Transparentní šifrování | Ne |
jiný | |
Podporováno operační systémy | Žalud MOS |
The Systém ukládání disků (DFS) je počítač souborový systém vyvinutý uživatelem Počítače žaludů, původně jako doplněk ke kartě Eurocard Systém žaludů 2.
V roce 1981 vyhlásily vzdělávací střediska západní Austrálie a jižní Austrálie společná nabídková řízení požadující dodávky osobních počítačů do jejich škol. Australský distributor počítačů Acorn, společnost Barson Computers, přesvědčil společné výkonné ředitele Hermann Hauser a Chris Curry umožnit brzké vydání Žalud BBC mikropočítač být nabízen s diskovým úložištěm jako součást balíčku. Dohodli se na podmínce, že Barson upravil Acorn DFS ze systému 2 bez pomoci Acorn, protože neměli k dispozici žádné zdroje. To vyžadovalo několik drobných změn hardwaru a softwaru, aby byl DFS kompatibilní s BBC Micro.
Barson vyhrál výběrové řízení pro oba státy s vybavením DFS, rok před Velkou Británií. Právě tato raná iniciativa vyústila v to, že se BBC Micro více zaměřila na vzdělávací trh v Austrálii, s velmi malým pronikáním na trh domácích počítačů až do příchodu Žalud Electron.
DFS dodáván jako ROM a čip řadiče disku namontovaný na základní desce BBC Micro. Registrační systém měl extrémně omezenou funkčnost a kapacitu úložiště a používal plochou adresářovou strukturu. Každý název souboru může mít až sedm písmen a navíc jedno písmeno pro adresář, ve kterém je soubor uložen.[1]
DFS je pozoruhodný v tom, že na rozdíl od většiny registračních systémů neexistoval jediný prodejce nebo implementace. Původní DFS napsal Acorn, který si nadále udržoval vlastní kódovou základnu, ale různí prodejci diskových jednotek psali své vlastní implementace. Společnosti, které psaly své vlastní implementace DFS, zahrnovaly Cumana, Solidisk, Opus a Watford Electronics. Implementace Watford Electronics je pozoruhodná podporou 62 souborů na disk namísto obvyklých 31 pomocí nestandardního formátu disku. Kromě toho implementace Solidisk představila proprietární „zřetězené“ katalogy, které umožňovaly neomezený počet souborů na disk (omezeno pouze velikostí disku).[2] Mezi další funkce implementací třetích stran patřila možnost zkontrolovat volné místo a vestavěné FORMÁT
a OVĚŘTE
příkazy, které byly odeslány na obslužný disk s původním Acorn DFS.
Acorn navázal na svou původní sérii DFS s Acorn 1770 DFS, který používal stejný formát disku jako dřívější verze, ale přidal sadu dalších příkazů a podporoval vylepšené WD1770 čip řadiče disketové jednotky.
Fyzický formát
DFS obvykle používá jednu stranu dvojité hustoty 5¼ " disketa. Disky jsou formátovány jako 40 nebo 80 stop, což poskytuje kapacitu 100 nebo 200 KB na stranu (deset 256bajtových sektorů na stopu, s kódováním FM).
Kapacita je omezena výběrem Intel Řadič 8271 v původním BBC Micro, který pouze podporuje FM kódování, ne MFM kódování, které bylo v době spuštění BBC Micro již běžně používáno. Kódování FM poskytuje poloviční kapacitu záznamu MFM pro danou fyzickou hustotu disku.
Kódování FM a MFM se běžně označuje jako „jednoduchá hustota“ a „dvojitá hustota“, i když disky a jednotky jsou stejné, na rozdíl od „vysoké hustoty“, která používá různé jednotky a disky.
Dvouhustotní disky 3½ "s dvojitou hustotou lze formátovat a používat s 1770 DFS (DFS na bázi Intel 8271 má problémy s mnoha 3½" disky), což poskytuje stejnou kapacitu "jedné hustoty" s kódováním FM, ale původně to nebyl standardní postup . 3 1/2 "disky byly normálně naformátovány jako MFM" double density "pomocí pozdějšího Pokročilý systém ukládání disků, protože toto je přítomno na všech strojích Acorn dodávaných s 3 1/2 "disky. Od roku 2009 se 3 1/2" disky častěji používají s BBC Micros než v minulosti, včetně použití s DFS, kvůli jejich větší dostupnosti a snadnější výměně dat s více nedávné počítače.
Disky 5¼ "a 3½" s vysokou hustotou nejsou systémem DFS podporovány.
Jednostranný a oboustranný provoz
DFS nepodporuje přímo oboustranné disky; místo toho jsou dvě hlavy oboustranné jednotky považovány za dvě samostatné logické jednotky. DFS může podporovat až čtyři svazky, očíslované od 0 do 3. Jednotka 0 je výchozí a jednotka 1 představuje druhou jednotku připojenou ke kabelu. „Drive“ 2 označoval zadní stranu jednotky 0 a „drive“ 3 byl zadní stranou jednotky 1. Neexistuje podpora pro více než dvě fyzické jednotky.
Vzhledem k instalované základně jednostranných jednotek byl komerční software obvykle poskytován na jednostranných discích nebo jako „flippy disky "které byly ručně obráceny pro přístup na druhou stranu.
Kompatibilita 40 a 80 stop
Disky lze formátovat pomocí 40 nebo 80 stop pomocí * FORMULÁŘ 40
nebo * FORMULÁŘ 80
příkazy a disky mohou mít stopu 40 nebo 80. Toto je nejběžnější problém s kompatibilitou pro uživatele DFS: disky se 40 stopami byly normou pro komerční distribuci softwaru kvůli instalované základně 40-stopových jednotek, ale 80-stopové jednotky se staly běžnějšími, když ceny klesly, což uživatelům umožnilo ukládat více údajů. 80 stopová jednotka nebude automaticky číst 40 stopové disky.
Kapacita disku je uložena jako počet sektorů v katalogu na stopě nula. Stopa nula je umístěna na stejném místě na discích se 40 i 80 stopami, což umožňuje systému souborů disku odpovídajícím způsobem nastavit krokování motoru. Avšak procesor Acorn DFS na bázi Intel 8271 tak nedělá, a proto byla funkce duálního formátu řešena několika způsoby:
- jednoduchým připojením 40-stopého a 80-stopého pohonu k BBC Micro, ačkoli to bylo pro domácího uživatele nákladné;
- někteří prodejci diskových jednotek, zejména UFD (User Friendly Devices) a Akhter Computer Group, nabízeli sestavy jednotek vybavené přepínači pro výběr 40- nebo 80-stopého provozu;
- časopisy jako např Uživatel Micro nabídl sady pro sestavení desek plošných spojů, které by mohly být zapojeny do kabelu diskové jednotky, volitelně „zdvojnásobení“ připojených jednotek;[3]
- Uživatel Micro také publikoval článek[4] při vytváření disků duálního formátu s daty v hodnotě 21 stop uloženými v obou formátech tak, aby každý typ jednotky mohl přistupovat k obsahu; tyto však měly omezenou kapacitu a po vytvoření byly jen pro čtení;
- Uživatel žaludu časopis distribuoval 40stopé krycí disky s malým užitným programem na stopě nula, takže vlastníci 80stopých jednotek je mohli přeformátovat na 80stopové disky s původním obsahem na prvních 40 stopách; nebo
- uživatel může upgradovat na řadič WD1770 nebo podobný. Acorn 1770 DFS a některé systémy řadičů třetích stran poskytly v softwaru možnost duálního formátu přeprogramováním řadiče během hledání stopy; jako bonus nabídly systémy třetích stran proprietární formáty MFM (tzv. „double-density“) pro ještě větší kapacitu disku.
Pokud nepoužijete správné nastavení, dojde k chybám ze systému DFS, například Chyba disku 18 v 01/00
,[5] nebo poškození diskové jednotky pokusem vystoupit z hlavy za fyzický konec povrchu disku.
Přepnutím na 80 stop se katalog žádným způsobem nerozšířil, takže uživatel měl sklon k vyčerpání slotů pro názvy souborů, než mu dojde místo na disku. Tato situace vyústila v Kočka plná
chyba.
Ukládání souborů
Názvy souborů
DFS zachovává velká a malá písmena, ale nerozlišuje velká a malá písmena. Prevalence názvů všech velkých písmen je s největší pravděpodobností způsobena tím, že BBC Micro výchozí nastavení Caps Lock povolil po tvrdém nebo měkkém resetu. Znaková sada je docela tolerantní a všechny tisknutelné 7bitové znaky ASCII jsou povoleny, včetně mezer, ale kromě:
- Jeden zástupný znak
#
. - Více zástupný znak
*
. - Kontrolní kódy generované shellem úniková postava
|
, ačkoli sekvence||
lze použít k reprezentaci jednoho|
znak v názvu souboru. - Znak specifikátoru jednotky
:
jako první znak a název listu (vlastní název souboru). To způsobí aŠpatná jízda
neboŠpatné jméno
chyba. Kde je dvojtečka jednoznačná, například vFOO: BAR
, pak je povoleno jako součást názvu listu. - Znak specifikátoru adresáře
.
jako první nebo druhý znak názvu listu..
nelze použít jako znak adresáře. Kde je tečka jednoznačná, například vPRG.BAS
, pak je povoleno jako součást názvu listu a je ne považováno za specifikátor adresáře (zatímcoF. PENÍZE
bude souborPENÍZE
v adresářiF
).
Z důvodu přenositelnosti na implementace DFS třetích stran je nejlepší se tomu vyhnout :
a .
v názvech listů.
Uvozovky jsou povoleny BBC BASIC vyžaduje, aby jim unikl dvakrát:
ULOŽIT "" "" "" "A" ""
předá řetězec"""A"
na DFS, který poté uloží soubor s názvem"A
.- Naopak
ULOŽIT „A“ „“
uloží soubor s názvemA"
. - Stejná technika se používá k vložení mezer:
ULOŽIT "" "B A R" ""
uloží soubor s názvemBAR
.
Plně kvalifikovaný název souboru nebo „specifikace souboru“ (zkráceně „fsp“) obsahuje dvojtečku, potom číslo jednotky, tečku, písmeno adresáře, další tečku a název. Například se volá soubor ve výchozím adresáři „drive“ 2 BOB
bude mít úplnou specifikaci : 2. $. BOB
. Specifikátory jednotek a adresářů jsou volitelné.
Adresáře
"Adresáře" v DFS jsou předpony jednotlivých znaků na názvy souborů - například F
v F.BankLtr
- slouží k seskupení souborů. Uspořádání je ploché a výchozí adresář je $
se používá místo kořenového adresáře. Na vyžádání katalogu disku (s *KOČKA
nebo *.
příkazy), soubory v aktuálním adresáři jsou zobrazeny bez předpony adresáře v jednom bloku a níže jsou uvedeny všechny ostatní soubory ve druhém bloku se viditelnými předponami adresáře. Například (od Acorn DFS - implementace DFS třetích stran se mohou mírně lišit):
PROGRAM (12) Drive 0 Option 2 (RUN) Dir. : 0. $ Lib. : 0. $! BOOT HELLO SUMS TABULKA ZKOUŠEK VEKTORY ZOMBIE A.HELLO L B.SUMS F.BankLtr
Prvních sedm souborů je v aktuálním adresáři, který je $
na jednotce 0. Níže jsou uvedeny všechny soubory v jiných adresářích, v tomto případě A
, B
a F
. An L
za názvem souboru (jako u Ahoj
, výše) ukazuje, že soubor je uzamčen proti úpravám nebo vymazání. První řádek obsahuje název disku a počet změn.
DFS poskytuje pracovní prostor rozdělený na adresář a knihovnu. "Adresář" je pracovní adresář na aktuálním svazku, podobně jako pracovní adresář v jakémkoli jiném systému příkazového řádku. „Knihovna“ je druhý alternativní pracovní adresář, který funguje podobně CESTA a měl tu výhodu, že mohl být na jakémkoli svazku. Žádosti o otevření souborů s nekvalifikovanými jmény budou nejprve vyhledány v pracovním adresáři; v opačném případě bude prohledán také adresář knihovny. Adresář i knihovna mají výchozí stejný adresář.
Struktura disku
Katalog (tabulka souborů) zabírá první dva sektory disku: jeden pro názvy a adresáře každého souboru a odpovídající sektor obsahující umístění, velikosti a metadata souborů. Pro každý soubor se používá osm bajtů každého sektoru. S dalšími osmi bajty z každého sektoru vyhrazenými pro 12bajtový název disku a informace o svazku je celkový počet souborů na disku (bez ohledu na to, ve kterém adresáři je každý soubor) omezen na 31. V zájmu úspory místa , nejvýznamnější bit písmene adresáře pro soubor se použije jako uzamčený příznak (jen pro čtení).
Velikost svazku
Ačkoli jsou fyzické disky obvykle formátovány buď na 100 kB nebo 200 kB, DFS podporuje velikosti svazků až 256 kB.
Největší povolená velikost souboru DFS je velikost svazku minus ½ KB pro katalog, protože velikosti souborů jsou uloženy jako 18bitové množství.
Přidělení souborů
DFS nepodporuje fragmentace dat, což znamená, že data souboru musí být uložena v jednom běhu po sobě jdoucích sektorů, ale volné místo je náchylné stát se roztříštěný. Zápisy souborů s náhodným přístupem selžou, když konec souboru dosáhne začátku dalšího, i když jinde na disku mohou být volné sektory. V takových případech DFS přeruší a Nelze prodloužit
chyba. ULOŽIT
také není schopen rozdělit soubor, aby se vešel na dostupné místo, ale protože k selhání dojde ve fázi alokace sektoru, vrácená chyba je Plný disk
.
A *KOMPAKTNÍ
je poskytnut příkaz k přemístění všech souborů na disku do pevného bloku, přičemž se za ním umístí veškeré volné místo do druhého bloku. To umožňuje dalšímu vytvořenému souboru vyplnit disk, ale lze rozšířit pouze poslední existující soubor, aniž by byl přesunut. ULOŽIT
odstraní jakýkoli existující soubor a zkopíruje zadaný blok paměti kamkoli, kde je na disku místo. Naproti tomu *KOMPAKTNÍ
příkaz používá programovou paměť jako vyrovnávací paměť k přemístění souborů a přepíše libovolný program a data v paměti.
Metadata
Stejně jako systém ukládání kazet podporuje Acorn DFS standardní metadata souborů BBC Micro: adresa načítání a adresa spuštění, protože Žalud MOS (dále jen operační systém používaný společností BBC Micro) nepodporuje přemístění binárního kódu. Soubor by měl být načten na adresu, kterou programátor zamýšlel, protože obsah může odkazovat na interní umístění absolutními adresami. Adresa spuštění je také zaznamenána, protože vstupní bod nemusí být nutně na začátku nebo dokonce v souboru.
Atributy souboru jsou omezeny na jeden bit: Zamčeno. Pokud je nastaveno, L
napravo od názvu souboru v katalogu se zobrazí a soubor nelze změnit, přepsat nebo odstranit.
Termíny
Disky DFS nesledují žádná data (protože Acorn MOS před verzí 3 neudržoval hodiny v reálném čase), ale místo toho nabízejí zvláštní funkci: počet úprav. Při každé aktualizaci katalogu se počet zvyšuje. Počet je uveden v závorkách za titulem v prvním řádku katalogu disků, například 12
v seznamu katalogu zobrazeném dříve.
Další funkce
DFS také podporuje prostředky ke spuštění softwaru disku na základě sekvence kláves. Pokud podržíte klávesu Shift, když je stroj soft nebo hard reset, DFS zkontroluje jednotku 0 na disk obsahující pozitivní spouštěcí příznak. Příznak spouštění je buď 0 (ignorovat), 1 (načíst soubor), 2 (spustit soubor strojového kódu) nebo 3 ("spustit" skript). Pokud je spouštěcí příznak kladný, volá se soubor $.! BOOT
je vyhledáno a načteno do paměti (1), načteno a provedeno jako strojový kód (2) nebo vloženo do vyrovnávací paměti klávesnice (3). Možnost 3 čte soubory „EXEC“, text makro soubory použité jako primitivní shell skripty. Nejedná se o opravdové skripty prostředí, ale pouze o řadu kláves, které se mají psát, jako je například záznam k přehrávání. Nemohou tedy smyčky nebo větve, pokud nezadají takový kód do tlumočníka BASIC. Kromě toho, že se používají během resetu, lze je kdykoli spustit pomocí operačního systému * EXEC
příkaz. Soubory EXEC jsou nezávislé na souborovém systému.
Alternativy
Existovala varianta DFS zvaná DNFS neboli Disc / Network Filing System, která obsahovala Econet Network Filing System (NFS), standardní Disc Filing System a podpůrný software koprocesoru Tube na jedné ROM; tato ROM nainstalovala do systému dva registrační systémy najednou.
Původní návrh DFS vycházel z řadiče diskové jednotky Intel Corporation FDC 8271, bezprostředního předchůdce designu 8272 nalezeného v Osobní počítač IBM. Řadič 8271 měl omezenou funkčnost a byl zastaralý a novější verze systému souborů od různých dodavatelů, včetně Solidisk, Acorn a Watford Electronics, byly založeny na novějších řadičích disků WD1770 a WD1772. Řadič 1770 se po nástupu ADFS rychle stal standardním řadičem v řadě Acorn.
DFS byl nahrazen Advanced Disc Filing System (ADFS), který byl plně hierarchický a byl vhodný pro běh pevných disků na BBC Micro. ADFS byl výchozí registrační systém na internetu BBC Master ale většina uživatelů se pravděpodobně vrátila k DFS z důvodu kompatibility; ADFS nemohl číst disky DFS. ADFS byl také vybrán jako standardní registrační systém pro RISC OS.
Reference
- ^ http://acorn.chriswhy.co.uk/docs/Acorn/Manuals/Acorn_DiscSystemUGI2.pdf
- ^ https://sweh.spuddy.org/Beeb/mmb_utils.html
- ^ Cook, Mike (říjen 1985). „Přechod na nižší verzi systému? Ano, může to dávat smysl.“ Uživatel Micro. Stockport, Velká Británie: Publikace databáze. 3 (8): 125–127. ISSN 0265-4040.
- ^ Nixon, Chris (duben 1987). Msgstr "DIY disky dvojitého formátu". Uživatel Micro. Stockport, Velká Británie: Publikace databáze. 5 (2): 43–44. ISSN 0265-4040.
- ^ Uživatelská příručka k systému archivace disků Acorn, vydání č. 2, červenec 1983, strana 84. „Disk“ je v chybových zprávách napsán „k“, ale ve jménu systému archivace „c“.
externí odkazy
- Struktura souborového systému AFS, Watford a Duggan DFS
- Specifikace Watford DFS (extended Acorn DFS) - zahrnuje původní specifikaci Acorn DFS
- Ruční žalud DFS (Formát RTF)