Welcome, Guest. Please login or register.


Author Topic: EXOS/EXDOS filerendszer (Read 3463 times)

Offline lgb

  • EP addict
  • *
  • Posts: 3563
  • Country: hu
  • æðsta yfirmaður
    • http://lgb.hu/
EXOS/EXDOS filerendszer
« on: 2012.September.25. 20:13:42 »
Beszeltunk anno arrol, hogy EXDOS-nak vegulis mind1, hogy most egy disk controller IC-vel beszelget v egy kis segitseggel barmi massal, felteve ha az egy blokkonkent olvashato/irhato entitas, akkor az EXDOS siman rapakol egy FAT12 filerendszert, es max csak a "block level" rutinokat kell megirni. Ezt jo gondolom / jol emlekszem? Azonban tovabbmennek: mi van, ha egyaltalan nem FAT12-rol beszelunk, sot blokk eszkoz sincs mogotte? Gondolom ez mar nem az EXDOS hatakore, megis lehet ra - gondolom - hivatkozni file I/O kapcsan, lasd pl a FILE: eszkoz az emulatorban. Nagyon nem vagyok ezen a teren kepben: ilyenkor ez EXOS only dolog gondolom. A ramdisk is ilyen dolog? Vagy az EXDOS specifikus es voltakeppen egy "disk image" van fenn akkor a memoriaban?

Node, nem is a ramdisk erdekelne, hanem az, hogy lehet-e olyan "nem-EXDOS" filerendszer kezelot irni, ami tamogat konyvtarokat, lehet irni/olvasni/listazni, es - ami a lenyeget illeti - nem FAT12 van mogotte. Mennyire egyszeru/bonyolult egy ilyet megalkotni, es fokepp, van errol van dox, pelda, stb? Illetve, az ilyen szintu dolgoknak van valami limitacioja? Pl egyes software-ek nem fogjak tamogatni, vagy barmi hasonlo, aminek kapcsan nem olyan jo mint egy EXDOS altal kezelt disk?

Megvalositas kapcsan - specifikus EP tudas hianyaban - arra gondoltam, hogy esetleg letezik valami POSIX VFS szeru API, tehat lehet implementalni egyenkent file olvasast, irast, seek-elest, mittomen' :) Azert erdekelne, mert pl konkretan mondjuk egy PC-vel osszekotott soros kapcsolaton kuldene a cucc a request-eket a PC fele, az meg kiszolgalna. Ok, tudom lehetne block alapon is uez, de ha file szinten megy az implementacio akkor pl nincs kotve az FS merete, max persze egy kiszolgalt file nem lehet akarmekkora,  vagy hasonlo.

Nos, nem tudom ebbol a zagyvalekbol amit irtam barki megert is valamit :) Ha valakinek van konkret otlete/javaslata, esetleg doksija, pelda programja, azt megkoszonnem! Persze a fenti EXDOS-os "csak az alacsonyszintu rutinokat kell megirni" mukodes is erdekelne azert hasonlo tekintetben, az amugy is egyszerubbnek tunik foleg elso korben, es foleg nekem ...........

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14721
  • Country: hu
    • http://enterprise.iko.hu/
Re: EXOS/EXDOS filerendszer
« Reply #1 on: 2012.September.25. 20:37:47 »
Beszeltunk anno arrol, hogy EXDOS-nak vegulis mind1, hogy most egy disk controller IC-vel beszelget v egy kis segitseggel barmi massal, felteve ha az egy blokkonkent olvashato/irhato entitas, akkor az EXDOS siman rapakol egy FAT12 filerendszert, es max csak a "block level" rutinokat kell megirni. Ezt jo gondolom / jol emlekszem?
Igen.

Quote
Azonban tovabbmennek: mi van, ha egyaltalan nem FAT12-rol beszelunk, sot blokk eszkoz sincs mogotte? Gondolom ez mar nem az EXDOS hatakore, megis lehet ra - gondolom - hivatkozni file I/O kapcsan, lasd pl a FILE: eszkoz az emulatorban.
FILE-nek nincs köze az EXDOS-hoz.

Quote
A ramdisk is ilyen dolog? Vagy az EXDOS specifikus es voltakeppen egy "disk image" van fenn akkor a memoriaban?
Az a EXDOS egyik egységkezelője (RAMUNIT), és igen voltaképpen egy disk image a RAM-ban.


Quote
Node, nem is a ramdisk erdekelne, hanem az, hogy lehet-e olyan "nem-EXDOS" filerendszer kezelot irni, ami tamogat konyvtarokat, lehet irni/olvasni/listazni, es - ami a lenyeget illeti - nem FAT12 van mogotte. Mennyire egyszeru/bonyolult egy ilyet megalkotni,
Csak egy komplett DOS-t kell írni hozzá...
Ezért is akadt el anno a vinyó projekt, mert azt hittem ahhoz is az kéne  :oops: végül az EXDOS visszafejtéssel derült ki, hogy ez megúszható.

Quote
es fokepp, van errol van dox, pelda, stb?
Ez példátlan projekt lenne!

Quote
Illetve, az ilyen szintu dolgoknak van valami limitacioja? Pl egyes software-ek nem fogjak tamogatni, vagy barmi hasonlo, aminek kapcsan nem olyan jo mint egy EXDOS altal kezelt disk?
EPDOS és ISDOS nem menne rajta.

Quote
Megvalositas kapcsan - specifikus EP tudas hianyaban - arra gondoltam, hogy esetleg letezik valami POSIX VFS szeru API, tehat lehet implementalni egyenkent file olvasast, irast, seek-elest, mittomen' :)

Azt nem tudom micsoda  :oops:

Quote
Persze a fenti EXDOS-os "csak az alacsonyszintu rutinokat kell megirni" mukodes is erdekelne azert hasonlo tekintetben, az amugy is egyszerubbnek tunik foleg elso korben, es foleg nekem ...........
Nekem is :-)
Anno raktam be példát erre, megpróbálom előásni.

Offline Moldani

  • User
  • *
  • Posts: 80
  • Country: hu
  • Jelenlegi konfiguráció
EXOS/EXDOS filerendszer
« Reply #2 on: 2013.April.12. 21:44:17 »
Az a kérdésem, hogy Exdosban lehet egész könyvtárakat másolni?
Moldani

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14721
  • Country: hu
    • http://enterprise.iko.hu/
Re: EXOS/EXDOS filerendszer
« Reply #3 on: 2013.April.12. 21:48:03 »
Quote from: Moldani
Az a kérdésem, hogy Exdosban lehet egész könyvtárakat másolni?
Egy utasítással nem :-(

Offline Moldani

  • User
  • *
  • Posts: 80
  • Country: hu
  • Jelenlegi konfiguráció
Re: EXOS/EXDOS filerendszer
« Reply #4 on: 2013.April.12. 21:56:43 »
Quote from: Zozosoft
Egy utasítással nem :-(
És több utasítással hogyan a leghatékonyabb a másolás? :smt017
Moldani

Offline szipucsu

  • Global Moderator
  • EP addict
  • *
  • Posts: 9898
  • Country: hu
    • Támogató Támogató
    • Webnyelv.hu - Tanuljunk nyelveket!
Re: EXOS/EXDOS filerendszer
« Reply #5 on: 2013.April.12. 22:12:45 »
:MD könyvtárnév
:COPY [útvonal] *.* [útvonal]

Valami ilyesmi...
100 SOUND SOURCE 2,STYLE 128,PITCH 25.2,SYNC 1
110 SOUND PITCH 25,SYNC 1
120 ! Videos

Offline lgb

  • EP addict
  • *
  • Posts: 3563
  • Country: hu
  • æðsta yfirmaður
    • http://lgb.hu/
Re: EXOS/EXDOS filerendszer
« Reply #6 on: 2013.August.30. 18:03:22 »
Na lenne kerdesem, megint :D Ha most EXOS szempontjabol nezzuk, akkor az EXDOS az "csak" egy EXOS_ROM szignaturaval megaldott ROM, es neki is az EXOS a "fonoke", ezt jol gondolom? Amit viszont nem teljesen ertek:

LOAD "FILE:akarmi"

Ez mondjuk a fileio-nal van ugye az ep128emu-n, ahol a hozza adott rom-ocska szepen regisztral maganak egy FILE nevu eszkozt. Viszont, ha olyanrol van szo, hogy A: stb, az konkretan hogy van megoldva? Az EXDOS regisztral egy A nevu eszkozt, ahogy a FILE is, van valami kulonbseg? Mi van, ha en regisztralok pl egy N nevu eszkozt akkor (N mint netlink ...), akkor esetleg user szamara a LOAD "A:file" es a LOAD "N:file" tokeletesen egyenertekunek latszik csak eppen az egyik ugye egy FAT12-vel mukodo diskrol (vagy image-rol ...) megy a masik meg az en krealmanyomon at? Persze, a DIR pl gondolom nem menne ra, mert EXDOS akkor sem tud errol mint EXDOS meghajto, bar gondoltam ra, hogy mi van ha feluldefinialom pl a DIR-t, elemzem hogy melyik meghajtora menne, ha N-re, lekezelem en, kulonben meg visszaadom h nem tudom, es talan akkor EXDOS elkapja. Vagy ez nem ilyen egyszeru?

Illetve ami meg feher volt nalam, az az EXDOS API-ja, hogy programok (amik nem dir parancsot irogatnak be pl ...) hogy kezelik a disk-et? Pl EPDOS, vagy barmi ilyen file manager/kivalasztos szeru ize, az hogy keri el directory listinget, hogy kerdezi le, milyen meghajtok vannak, hogy hoz letre konyvtarat stb? Mert gondolom nem ugy, mint en, kezzel, hogy :DIR, meg stb ...

Ezeket azert is kerdezem, mert meg mindig bizonytalan vagyok, hogy JSep netlinkben hogy lehetne minnel "szebben" megcsinalni, hogy majd egy tavoli servert mint tarhelyet lehessen kezelni, es lehetoleg minnel EP-sebb legyen a megoldas, amit mas programok is kepessek hasznalni. Jelenleg csak ott tartok, hogy legyen pl NDIR utasitas ami output-ban hasonlit a DIR-re, csak eppen ugye a netlink-re vonatkozik, de ez nem olyan szep :(

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14721
  • Country: hu
    • http://enterprise.iko.hu/
Re: EXOS/EXDOS filerendszer
« Reply #7 on: 2013.August.30. 20:14:04 »
Első körben,  LOAD/SAVE parancsoknál a DISK: eszköz van használva, mivel ezt állítja be alapértelmezett perifériának az EXDOS. Egységszám nélkül, vagy 0-ás számmal az aktuális meghajtót jelenti, 1-26 számmal az A-Z meghajtók érhetők el.
Azért, hogy az EXOS fájlműveleteknél is használhatóak legyenek a megszokott DOS-os fájlnevek (pl. A:GAME.COM), létrehozza az A: , B: , stb EXOS perifériákat.
Ha te is létrehozol ilyet (amit szerintem inkább ne csináljunk :-) ), akkor az győz, aki utoljára regisztrálja a periféria nevet. Pl. így írja felül a német bővítés a KEYBOARD: eszközt.

Viszont ennek csak az EXOS fájlműveleteknél van szerepe, a DOS parancsokban látható A: , stb közvetlenül az EXDOS CLI által lesz feldolgozva.
Vagyis attól, hogy csinálsz egy N: eszközt, a DIR N: nem fog rajta működni.

A lemezkezelés következő szintje a FISH hívások, ezek nagyon hasonlóak a CP/M / MS-DOS rendszerekben is használatos dolgokhoz, FCB-k és társai.
A következő szint, a FISH-en keresztül a logikai szektorok írása/olvasása, az EPDOS ezt használja, tehát közvetlenül olvassa a FAT-ot, könyvtárakat, stb.
Floppy esetén van még ez alatt a DISKIO, ami pl formázásnál használatos.

Offline lgb

  • EP addict
  • *
  • Posts: 3563
  • Country: hu
  • æðsta yfirmaður
    • http://lgb.hu/
Re: EXOS/EXDOS filerendszer
« Reply #8 on: 2013.August.30. 20:56:28 »
Quote from: Zozosoft
Viszont ennek csak az EXOS fájlműveleteknél van szerepe, a DOS parancsokban látható A: , stb közvetlenül az EXDOS CLI által lesz feldolgozva.
Vagyis attól, hogy csinálsz egy N: eszközt, a DIR N: nem fog rajta működni.

Ebben biztos voltam :) Azert irtam azt is, hogy mi van ha a DIR parancsot (ha minden igaz akkor az a ROM extension-ok belepo kodjanal a 2-es funkcio, hogy parse command string vagy hasonlo) "feluldefinialom"? Ha en kapom meg elsonek, akkor megnezem a string tobbi resze alapjan h "engem" erint-e, ha igen, csinalok kb legalabb hasonlo formatumban eredmenyt, mint amit az EXDOS DIR-je csinalna. Ha a string alapjan nem az "enyem", akkor lemondok rola, igy talan megtalalja utan az EXDOS, es o le fogja kezelni. Ez szerinted igy mukodne, vagy tul van bonyolitva, es egyszerubb egy NDIR inkabb? Foleg, mivel ugye akkor a DIR feluldefinialosdi jatekban arra is figyelni kell, hogy mi az aktualis meghajto, miegymas.

Quote
A lemezkezelés következő szintje a FISH hívások, ezek nagyon hasonlóak a CP/M / MS-DOS rendszerekben is használatos dolgokhoz, FCB-k és társai.

Na en erre gondoltam anno is, amikor eloszor irtam ebbe a topic-ba; hogy ha az EXDOS elegge modularis, nem lehetne a FISH reszet lecserelni ahhoz, hogy tok mas filerendszer legyen? Azaz pl egy "modern" OS-nel is van a konkret driver a hardware-hez, azon at ami block szinten latszatja, afolott ami block iras/olvasassal filerendszert implemental, es ahol tobb kulonbozo fs is van, ez utobbibol pl tobb is van, es az OS eldonti hogy melyiket hivja eppen, pl egyik disk-en FAT van, a masikon meg ext3 filerendszer. Amirol irtam POSIX VFS stb az mondjuk unix-os korokben megnevezes erre: a kernel implemental egy VFS API-t, ami amolyan csattolo, es a megfelelo filerendszer kod azonos funkciojat hivja, attol fugg melyik mount point-rol van szo (DOS-os kisse santito hasonlat: melyik meghajtorol). Tehat hogy nincs egy filerendszer belebetonozva, kernelben lehet akar 100 kulonbozo is egyszerre ... Mikor irtad, hogy az IDE csattalonal milyen remek volt, hogy kiderult, eleg modularis az EXDOS ahhoz, hogy le lehessen cserelni ezt a reszet, felcsillant bennem a remeny, hogy a konkret FAT-es reszt is le lehet cserelni mint a filing system (ez lenne talan a FISH?) rendszeret, ahogy a block io reszet is le lehet ezek szerint.

Igazabol, igy belegondolva, kezdek rajonni, hogy talan nem is annyira fontos, hogy EXDOS-t majmoljam, atlag programnak gondolom mindegy, hogy honnan toltodik be, ha esetleg kell neki adatfile, stb, akkor nem vagyok biztos, hogy azt ugyanott keresi majd? Ha igen, akkor max spec programokkal nem menne persze, ha kozvetlen block stb olvasas van, mint pl EPDOS, ISDOS ...
Jol gondolom, es szerinted is kar a faradtsagert megprobalni belekotni az EXDOS-ba, mindenfele fura modon? :)

Btw, egy dolog utott meg szoget a fejembe. Amint eppen ejjeli maganyomban a csalad elalvasa utan EXOS_ROM-ot irtam, es ehhez doksit olvastam, lattam az EXOS string felepitesenek leirasat. En itt kicsit meglepodtem, ui vmi olyan remlik, hogy a filenevre 26 karaktert irnak. Nem keves az? Pl ha (foleg ha nem kell EXDOS/FAT kotottseg), "NL:\ZozoKedvencKonyvtara\datafiles\..." stb, akkor konnyen kifogyok abbol ... Persze relative path is lehetne, erre gondoltam az NCD parancsot majd, ami annyit tenne, hogy az emuval kozli hogy a nem abszolut (nem \-el kezdodo) path-el ele tegye oda a beallitottat. Az JSep es a server kozott http-vel meg mar mindig abszolut path-ek mennek, tehat az NCD-vel ilyen modon krealtam nemi konyvtarszerkezet szeru izet, NDIR-el listazhato, NL: eszkoznevvel meg lehet irni/olvasni, akkor mar jo uton vagyok? Itt maradnek az NL eszkoznevvel megis, mert nem tudom mennyire valoszinu, hogy valaki EXDOS-al N meghajtot hasznal, es utkoznek vele.

Talan nem ide tartozik, de talaltam egy erdekesseget, bar ez lehet, csak nekem uj. Kivancsi kedvemben nyomtam egy TYPE parancsot egy konyvtarnevre. Erdekes az eredmeny ... Pedig az elejen meg fel is lelkesultem, ui egyes OS-ekben (pl Solaris) a konyvtar valoban megnyithato file-kent, es akkor ott lathatod raw forumatumban a konyvtarbejegyzeseket, amibol a directory is megkonstualhato akar kiirhato formaban, ha valaki ugy szeretne lekerdezni. Bar ahogy nezem az eredmenyt, EP eseten ez inkabb veletlen bug, vagy egyszeruen a konyvtarban levo file-okat kilistazza egymas utan szepen, es ez csak nekem uj?
« Last Edit: 2013.August.30. 20:59:45 by lgb »

Offline Mayer Gábor

  • EP fan
  • *
  • Posts: 216
  • Country: hu
Re: EXOS/EXDOS filerendszer
« Reply #9 on: 2013.August.30. 21:01:13 »
Arról van info hogy az A: és a DISK: miben tér el? A belépési pontok sem azonosak.

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14721
  • Country: hu
    • http://enterprise.iko.hu/
Re: EXOS/EXDOS filerendszer
« Reply #10 on: 2013.August.30. 21:28:22 »
Quote from: Mayer
Arról van info hogy az A: és a DISK: miben tér el? A belépési pontok sem azonosak.
DISK esetén még az egységszámot is fel kell dolgozni, hogy kiderüljön melyik meghajtóról van szó.

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14721
  • Country: hu
    • http://enterprise.iko.hu/
Re: EXOS/EXDOS filerendszer
« Reply #11 on: 2013.August.30. 22:30:50 »
Quote from: lgb
Ez szerinted igy mukodne, vagy tul van bonyolitva, es egyszerubb egy NDIR inkabb? Foleg, mivel ugye akkor a DIR feluldefinialosdi jatekban arra is figyelni kell, hogy mi az aktualis meghajto, miegymas.
Ez működhet, de egyszerűbb az NDIR :-)

Quote
nem lehetne a FISH reszet lecserelni ahhoz, hogy tok mas filerendszer legyen?
FISH lecserélésre utaló nyomot még nem találtam.


Quote
Igazabol, igy belegondolva, kezdek rajonni, hogy talan nem is annyira fontos, hogy EXDOS-t majmoljam, atlag programnak gondolom mindegy, hogy honnan toltodik be, ha esetleg kell neki adatfile, stb, akkor nem vagyok biztos, hogy azt ugyanott keresi majd? Ha igen, akkor max spec programokkal nem menne persze, ha kozvetlen block stb olvasas van, mint pl EPDOS, ISDOS ...
Ez pontosan így van. A programok 99.9%-a az EXOS alapértelmezett perifériát használja fájlműveletekre.

Quote
Jol gondolom, es szerinted is kar a faradtsagert megprobalni belekotni az EXDOS-ba, mindenfele fura modon? :)
Jól :-)

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14721
  • Country: hu
    • http://enterprise.iko.hu/
Re: EXOS/EXDOS filerendszer
« Reply #12 on: 2013.August.30. 22:49:31 »
Quote from: lgb
 vagy egyszeruen a konyvtarban levo file-okat kilistazza egymas utan szepen, es ez csak nekem uj?
Csak neked új, ha nincs fájlnév megadva, az *.*-ot jelent, aminek megfelelő fájlokat kilistázza.