From: mharris AT blackwidow DOT saultc DOT on DOT ca Date: Mon, 10 Feb 1997 23:22:01 -0500 (EST) Reply-To: mharris AT blackwidow DOT saultc DOT on DOT ca cc: OpenDOS Mailing List Subject: Re: [opendos] OpenDOS + Win95 w/FAT32? In-Reply-To: <199702091512.QAA11315@math.amu.edu.pl> Message-ID: Organization: Total disorganization. MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-opendos AT mail DOT tacoma DOT net Precedence: bulk On Sun, 9 Feb 1997, Mark Habersack wrote: > > > Hmm, there is an interesting question. If filesystem support is loaded > > > from CONFIG.SYS, and you want to have a 100% VFAT or even ext2fs > > > filesystem, how will DOS be able to read the filesystem to find CONFIG.SYS > > > so that it can load the file system driver that is required to read things > > > from the filesystem that CONFIG.SYS is held on.... > > > > The root filesystem type will HAVE to be compiled into the kernel > > directly, otherwise how can ANY files be read off of it? Other > > filesystems may either be "built in", or can be added via boot > > time commands or loaded on the fly with some kind of module > > loader. (Preferably one that resides in XMS :o) > Not quite so, IMHO. Think about how are IBMDOS.COM and IBMBIO.COM loaded at > boot time? Neither MBR nor BR code knows anything about the file system. The > physical location of these files on the disk is know at the format time and > hard-coded into the BR code. To allow mounting *any* FS as the root *without > the need to compile any driver into the kernel* one should only know location > of the superblock on the disk. This requires that the boot loader knows what a superblock is. Thus some sort of knowledge of a particular filesystem is needed it the boot code. Not all filesystems use a superblock so it would not be possible in all situations. > During the partition formatting, user selects > which file systems may be used as root and the formatter allocates enough > space in the superblock to store all the drivers, mount table (config file) > and map of the driver modules stored in the superblock. Now, the code stored > in BR reads the mount table and the map, finds which driver is to be loaded > and then reads in and executes the system image (which might be stored in the > superblock as well), This hides way too much information from the user in my opinion. Should some problems arise with a setup like this (virus, or some other HD disaster) it would be extremely difficult for a user to fix the mounting problems since they'd need to know a fair bit to fix the "superblock". If it were as in UNIX, a simple backup of FSTAB could be restored. I think that the simplest method is to implement it as in Linux/UNIX. It could be made a little more friendly too, and the documentation would let the user know what they were getting into. A front end program could easily be made which could autogenerate the FSTAB file, and make everyone happy anyways. > Should the code be too big to fit in the BR, a system > loader may be stored in the superblock. > In this setup user may shuffle the root FS changing between all the drivers > stored in superblock. BTW. I think that superblock is a good idea to protect > the kernel from a too inquisitive, yet unexperienced, user. If the user can understand all of these concepts, and use it, then they could understand the FSTAB/MOUNT thing even easier IMO. I don't think DOS needs to protect anything from the user. The user is always capable of messing up their OS regardless of which OS it is. If advanced features are complicated, then the average user should be heavily warned of this and/or not allowed to use it at all. I like to read documentation (as do you) to learn how to use certain features of my OS, and I've always got to edit some configuration files to get it to do new things. The best that can be done for Joe user, is to make a front end program that shields the complicated things away from him. DOS is pretty simple if you ask me, compared to any other OS that is. If someone wants to do something complicated, they should realize what they're getting into first. If they mess up, it's their own fault. Why should complicated measures be implemented that hide things from the user and make it difficult to change things? That sounds like a M$ solution to me, don't you agree? TTYL Mike A. Harris | http://blackwidow.saultc.on.ca/~mharris Computer Consultant | My webpage has moved and my address has changed. My dynamic address: http://blackwidow.saultc.on.ca/~mharris/ip-address.html mailto:mharris AT blackwidow DOT saultc DOT on DOT ca Question: Will Linus trash the Linux project when HURD comes out? I hope not.