Re: encapsulating directory operations

Liste des GroupesRevenir à cl 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 operations128Paul Edwards
20 May08:27 +* Re: encapsulating directory operations18Lawrence D'Oliveiro
20 May10:33 i`* Re: encapsulating directory operations17Paul Edwards
21 May01:10 i `* Re: encapsulating directory operations16Lawrence D'Oliveiro
21 May01:23 i  `* Re: encapsulating directory operations15Paul Edwards
21 May04:37 i   `* Re: encapsulating directory operations14Lawrence 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 operations10James Kuyper
22 May06:04 i     `* Re: encapsulating directory operations9Lawrence D'Oliveiro
22 May19:13 i      `* Re: encapsulating directory operations8James Kuyper
22 May23:46 i       `* Re: encapsulating directory operations7Lawrence D'Oliveiro
23 May00:07 i        `* Re: encapsulating directory operations6James Kuyper
23 May00:15 i         `* Re: encapsulating directory operations5Kaz Kylheku
23 May00:26 i          +* Re: encapsulating directory operations2Paul Edwards
23 May01:44 i          i`- Re: encapsulating directory operations1Kaz Kylheku
23 May01:10 i          `* Re: encapsulating directory operations2James Kuyper
23 May03:08 i           `- Re: encapsulating directory operations1Kaz Kylheku
20 May10:18 +* Re: encapsulating directory operations56Keith Thompson
20 May10:33 i+* Re: encapsulating directory operations12Richard 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 operations2Tim Rentsch
23 May14:27 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 operations49Kaz Kylheku
20 May15:12 i`* Re: encapsulating directory operations48Paul Edwards
20 May22:41 i `* Re: encapsulating directory operations47Keith Thompson
20 May23:38 i  `* Re: encapsulating directory operations46Paul 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 operations31Keith Thompson
21 May00:57 i   i+* Re: encapsulating directory operations23Paul Edwards
21 May06:41 i   ii`* Re: encapsulating directory operations22Keith Thompson
21 May11:41 i   ii +* Re: encapsulating directory operations19Paul Edwards
21 May19:06 i   ii i+* Re: encapsulating directory operations16Keith Thompson
21 May19:22 i   ii ii+- Re: encapsulating directory operations1Keith Thompson
22 May22:10 i   ii ii+* Re: encapsulating directory operations11Paul Edwards
22 May23:32 i   ii iii+* Re: encapsulating directory operations9Keith Thompson
23 May00:16 i   ii iiii+* Re: encapsulating directory operations7Paul Edwards
23 May02:38 i   ii iiiii+- Re: encapsulating directory operations1Keith Thompson
23 May03:28 i   ii iiiii+* Re: encapsulating directory operations2Kaz Kylheku
23 May05:27 i   ii iiiiii`- Re: encapsulating directory operations1Keith Thompson
23 May06:08 i   ii iiiii`* Re: encapsulating directory operations3Janis Papanagnou
23 May06:20 i   ii iiiii `* Re: encapsulating directory operations2Keith Thompson
23 May06:43 i   ii iiiii  `- Re: encapsulating directory operations1Janis Papanagnou
23 May16:09 i   ii iiii`- Re: encapsulating directory operations1Richard 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 operations2Paul 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

Haut de la page

Les messages affichés proviennent d'usenet.

NewsPortal