Re: encapsulating directory operations

Liste des GroupesRevenir à l c 
Sujet : Re: encapsulating directory operations
De : mutazilah (at) *nospam* gmail.com (Paul Edwards)
Groupes : comp.lang.c
Date : 22. May 2025, 22:45:43
Autres entêtes
Organisation : A noiseless patient Spider
Message-ID : <100o5ua$3m1tm$1@dont-email.me>
References : 1 2 3 4 5 6 7 8 9 10
User-Agent : Microsoft Outlook Express 6.00.2800.1106
"Kaz Kylheku" <643-408-1753@kylheku.com> wrote in message
news:20250521121507.235@kylheku.com...

I think that if you're making some self-contained solution that must
havce a hierarchical file system, and has to be in C90, then just
code up a filesystem that exists entirely within one file that
you can open for updating in binary mode using fopen("....", "r+b")
and within which you create all the needed structure.
>
Then you need not have a shred of anything system-specific
in your file code.

I already have exactly that.

My new OS - PDOS-generic - runs under what I call a
pseudobios. Basically exactly the same as UEFI, except
instead of a UEFI "Open" or whatever they use, I have
instead used fopen().

Other people have converted UEFI into Posix. I converted
it into C90 (others may have done that too).

Regardless - with that pseudobios (or whatever you want
to call it) in place, I have an OS that runs under that. The
OS is passed a parameter of the "boot disk", which it
does a callback to the pseudobios's exported fopen to open.

The pseudobios can in fact be a fairly simple C90 program -
an ordinary program running under Windows, Unix etc.

In which case PDOS-generic will do all its operations on
that simple flat file - as r+b - as you noted.

But on some pseudobioses it is instead a privileged program
because it is the actual UEFI BOOTX64.EFI or whatever.

And in that instance, although you can give it a flat file to
open, and it will happily constrain itself to that flat file, you
can ADDITIONALLY give it a "!BOOT" parameter
(this is something else that may or may not belong in a
C90+ standard).

If you do !BOOT, it will still do the exact same FAT32
operations, but it will do them over the entire boot disk.
ie it takes control of the "host" disk.

That can't be done when running on the pseudobios that
PdAndro (in the Google Play Store) presents though. For
two reasons. First, I don't have privilege, because I don't
rely on jailbreaking, and secondly, the host system is not
FAT32 as far as I am aware.

So that's all existing and proven on various systems, including
Windows. I even have it working to some extent on the mainframe
- to the point where you can do a "dir" under an MVS batch job.
But there is still a bug that is preventing file creation, which
someone else is tracking down currently.

And now I have added a 3rd option. If you pass PDOS-generic
a parameter of "-allbios", there is no boot disk to open, and
it will instead send every fopen() attempt to the pseudobios,
in the hope that the pseudobios has the ability to open individual
files (UEFI does, but a pseudobios layered on top of the
IBM PC BIOS would only likely be able to handle !BOOT).

And it is this 3rd option I am trying to get to work. I have already
proven it under Windows, where I was able to create a \DOS
directory on my Windows 10 machine. Android is a bit more
complicated, and I have asked a question about that here:

https://www.bttr-software.de/forum/board_entry.php?id=22595

I can lift that \DOS restriction in due course, but currently, even
on Windows, I cannot yet do a "dir". I am sending fopen requests
up to the pseudobios, but I am not sending "opendir" requests
up to the pseudobios, because "opendir" doesn't yet exist.

And that's the crossroad I am now at. I don't know whether
to add an opendir(), plus a mkdir() that differs from POSIX,
or use the folder routines from Jean-Marc, or some other
option. That's my question. And while answering the question,
give some consideration to the fact that there are other changes
that I think - in hindsight - should have ideally been formalized
by a C90+ committee - such as EBCDIC ESC.

I believe then, as now, there were a lot of people frustrated that
EBCDIC is even a consideration. Can't the damned thing just
die already? But I'm the opposite of that. I want to nurture
EBCDIC. It provides an abstraction too.

I'm not asking anyone to agree with me. I'm just after technical
analysis.

BFN. Paul.



Date Sujet#  Auteur
20 May07:06 * encapsulating directory operations160Paul Edwards
20 May08:27 +* Re: encapsulating directory operations21Lawrence D'Oliveiro
20 May10:33 i`* Re: encapsulating directory operations20Paul Edwards
21 May01:10 i `* Re: encapsulating directory operations19Lawrence D'Oliveiro
21 May01:23 i  `* Re: encapsulating directory operations18Paul Edwards
21 May04:37 i   `* Re: encapsulating directory operations17Lawrence D'Oliveiro
21 May11:00 i    +* Re: encapsulating directory operations3Paul Edwards
22 May07:49 i    i`* Re: encapsulating directory operations2Lawrence D'Oliveiro
22 May08:02 i    i `- Re: encapsulating directory operations1Kaz Kylheku
22 May00:51 i    `* Re: encapsulating directory operations13James Kuyper
22 May06:04 i     `* Re: encapsulating directory operations12Lawrence D'Oliveiro
22 May19:13 i      `* Re: encapsulating directory operations11James Kuyper
22 May23:46 i       `* Re: encapsulating directory operations10Lawrence D'Oliveiro
23 May00:07 i        `* Re: encapsulating directory operations9James Kuyper
23 May00:15 i         `* Re: encapsulating directory operations8Kaz Kylheku
23 May00:26 i          +* Re: encapsulating directory operations3Paul Edwards
23 May01:44 i          i+- Re: encapsulating directory operations1Kaz Kylheku
24 May03:26 i          i`- Re: encapsulating directory operations1Lawrence D'Oliveiro
23 May01:10 i          `* Re: encapsulating directory operations4James Kuyper
23 May03:08 i           `* Re: encapsulating directory operations3Kaz Kylheku
24 May00:29 i            `* Re: encapsulating directory operations2James Kuyper
24 May01:08 i             `- Re: encapsulating directory operations1Kaz Kylheku
20 May10:18 +* Re: encapsulating directory operations58Keith Thompson
20 May10:33 i+* Re: encapsulating directory operations14Richard Heathfield
20 May10:45 ii+- Re: encapsulating directory operations1Paul Edwards
20 May12:42 ii+- Re: encapsulating directory operations1David Brown
20 May14:55 ii+* Re: encapsulating directory operations7Kaz Kylheku
20 May15:05 iii`* Re: encapsulating directory operations6Richard Heathfield
20 May15:09 iii +* Re: encapsulating directory operations2Muttley
20 May15:15 iii i`- Re: encapsulating directory operations1Paul Edwards
20 May15:48 iii `* Re: encapsulating directory operations3Paul Edwards
20 May16:02 iii  `* Re: encapsulating directory operations2Richard Heathfield
20 May16:28 iii   `- Re: encapsulating directory operations1Paul Edwards
23 May13:43 ii`* Re: encapsulating directory operations4Tim Rentsch
23 May14:27 ii `* Re: encapsulating directory operations3Richard Heathfield
24 May06:32 ii  `* Re: encapsulating directory operations2Tim Rentsch
24 May06:54 ii   `- Re: encapsulating directory operations1Richard Heathfield
20 May10:36 i`* Re: encapsulating directory operations43Paul Edwards
20 May13:23 i +* Re: encapsulating directory operations39David Brown
20 May14:47 i i`* Re: encapsulating directory operations38Paul Edwards
20 May15:37 i i +* Re: encapsulating directory operations10Richard Heathfield
20 May16:11 i i i`* Re: encapsulating directory operations9Paul Edwards
20 May16:43 i i i `* Re: encapsulating directory operations8Richard Heathfield
20 May22:15 i i i  +* Re: encapsulating directory operations2Paul Edwards
20 May23:50 i i i  i`- Re: encapsulating directory operations1Kaz Kylheku
21 May02:11 i i i  +- Re: encapsulating directory operations1Lawrence D'Oliveiro
21 May03:40 i i i  `* Re: encapsulating directory operations4James Kuyper
21 May05:50 i i i   `* Re: encapsulating directory operations3Richard Heathfield
21 May09:06 i i i    `* Re: encapsulating directory operations2David Brown
21 May09:27 i i i     `- Re: encapsulating directory operations1Richard Heathfield
20 May17:19 i i `* Re: encapsulating directory operations27David Brown
20 May17:43 i i  +* Re: encapsulating directory operations6Richard Heathfield
20 May18:14 i i  i+* Re: encapsulating directory operations4Kaz Kylheku
20 May18:20 i i  ii`* Re: encapsulating directory operations3Richard Heathfield
20 May19:50 i i  ii +- Re: encapsulating directory operations1Richard Heathfield
20 May20:34 i i  ii `- Re: encapsulating directory operations1Kaz Kylheku
21 May09:09 i i  i`- Re: encapsulating directory operations1David Brown
20 May17:51 i i  +- Re: encapsulating directory operations1Kaz Kylheku
20 May18:09 i i  +* Re: encapsulating directory operations2Richard Heathfield
20 May19:34 i i  i`- Re: encapsulating directory operations1Richard Heathfield
20 May22:41 i i  +* Re: encapsulating directory operations4Paul Edwards
20 May23:02 i i  i+- Re: encapsulating directory operations1Keith Thompson
21 May02:05 i i  i`* Re: encapsulating directory operations2Lawrence D'Oliveiro
21 May10:23 i i  i `- Re: encapsulating directory operations1Paul Edwards
20 May22:51 i i  +* Re: encapsulating directory operations9Paul Edwards
21 May05:31 i i  i`* Re: encapsulating directory operations8Richard Heathfield
21 May11:08 i i  i `* Re: encapsulating directory operations7Paul Edwards
21 May11:28 i i  i  +- Re: encapsulating directory operations1Richard Heathfield
21 May16:00 i i  i  `* Re: encapsulating directory operations5David Brown
21 May16:37 i i  i   `* Re: encapsulating directory operations4Richard Heathfield
21 May18:21 i i  i    +- Re: encapsulating directory operations1Michael S
22 May11:37 i i  i    `* Re: encapsulating directory operations2James Kuyper
22 May18:53 i i  i     `- Re: encapsulating directory operations1Kaz Kylheku
20 May23:09 i i  +- Re: encapsulating directory operations1Paul Edwards
21 May09:27 i i  `* Re: encapsulating directory operations3David Brown
21 May11:46 i i   `* Re: encapsulating directory operations2Paul Edwards
21 May15:46 i i    `- Re: encapsulating directory operations1David Brown
21 May01:12 i `* Re: encapsulating directory operations3Lawrence D'Oliveiro
21 May01:25 i  `* Re: encapsulating directory operations2Paul Edwards
21 May02:03 i   `- Re: encapsulating directory operations1Lawrence D'Oliveiro
20 May14:53 +* Re: encapsulating directory operations75Kaz Kylheku
20 May15:12 i`* Re: encapsulating directory operations74Paul Edwards
20 May22:41 i `* Re: encapsulating directory operations73Keith Thompson
20 May23:38 i  `* Re: encapsulating directory operations72Paul Edwards
21 May00:09 i   +* Re: encapsulating directory operations5Paul Edwards
21 May00:22 i   i+- Re: encapsulating directory operations1Keith Thompson
21 May01:18 i   i+* Re: encapsulating directory operations2Kaz Kylheku
21 May01:31 i   ii`- Re: encapsulating directory operations1Paul Edwards
21 May02:02 i   i`- Re: encapsulating directory operations1Lawrence D'Oliveiro
21 May00:18 i   +* Re: encapsulating directory operations57Keith Thompson
21 May00:57 i   i+* Re: encapsulating directory operations49Paul Edwards
21 May06:41 i   ii`* Re: encapsulating directory operations48Keith Thompson
21 May11:41 i   ii +* Re: encapsulating directory operations43Paul Edwards
21 May19:06 i   ii i+* Re: encapsulating directory operations40Keith Thompson
21 May19:22 i   ii ii+- Re: encapsulating directory operations1Keith Thompson
22 May22:10 i   ii ii+* Re: encapsulating directory operations35Paul Edwards
22 May23:32 i   ii iii+* Re: encapsulating directory operations33Keith Thompson
23 May00:16 i   ii iiii+* Re: encapsulating directory operations18Paul Edwards
23 May02:38 i   ii iiiii+* Re: encapsulating directory operations5Keith Thompson
25 May23:12 i   ii iiiiii`* Re: encapsulating directory operations4Paul Edwards
25 May23:34 i   ii iiiiii `* Re: encapsulating directory operations3Keith Thompson
23 May03:28 i   ii iiiii+* Re: encapsulating directory operations2Kaz Kylheku
23 May06:08 i   ii iiiii`* Re: encapsulating directory operations10Janis Papanagnou
23 May16:09 i   ii iiii`* Re: encapsulating directory operations14Richard Harnden
22 May23:44 i   ii iii`- Re: encapsulating directory operations1Paul Edwards
22 May23:06 i   ii ii`* Re: encapsulating directory operations3Paul Edwards
21 May20:31 i   ii i`* Re: encapsulating directory operations2Kaz Kylheku
22 May22:52 i   ii `* Re: encapsulating directory operations4Paul Edwards
21 May03:21 i   i`* Re: encapsulating directory operations7Kaz Kylheku
21 May03:26 i   +* Re: encapsulating directory operations7James Kuyper
21 May22:19 i   `* Re: encapsulating directory operations2Waldek Hebisch
21 May03:35 +* Re: encapsulating directory operations3Janis Papanagnou
22 May19:34 +- Re: encapsulating directory operations1Bonita Montero
25 May06:10 `- Re: encapsulating directory operations1Tim Rentsch

Haut de la page

Les messages affichés proviennent d'usenet.

NewsPortal