pupa-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: PUPA disk questions


From: Marco Gerards
Subject: Re: PUPA disk questions
Date: 25 Oct 2003 14:16:39 +0200
User-agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.2

"Yoshinori K. Okuji" <address@hidden> writes:

[...]

> > The first problem I encountered was while booting from a partition on
> > my 27GB hard drive.  I assume the fat partition wasn't accessible
> > because it has a high cylinder number.  AFAIK the lba functions should
> > be used and I see some lba related code in boot.S.  Do you have some
> > ideas how I can debug his problem?  I know how to read and write IA32
> > assembly, but I'm no expert so I need some help or directions.
> 
> Is your drive accessible with GRUB? The code in PUPA was stolen from GRUB, so 
> if GRUB can access it, PUPA should be able to access it, theoretically.

GRUB works perfectly, but PUPA doesn't.  If you have no idea where I
should look I have to debug all this.

[Discussion about the cache problem]

> 2. Add code to check media changes into the "open" function of each disk 
> driver.

I think it makes sense but we need to be sure all architectures can
detect such change.  Otherwise we need to invalidate the cache for a
device when it is opened (or better, when it is closed).

> > I have been working on ext2fs last week and I have something that
> > works perfectly for me.
> 
> Great! It looks nice.
> 
> BTW, did you try your code on any architecture else i386? I think you have 
> written the code carefully, but it would be good to make sure that your code 
> is portable with real machines.

Not yet, but I will do that in some minutes.  I will let you know.

I've tested my ext2fs code on another box yesterday and it didn't
compile because of the way I've used the union.  This was on gcc 2.95
(IIRC) but it works perfectly on gcc 3.0 (and newer).  What is the
goal of PUPA?  Does it have to work on all compilers and should it
work on every POSIX system?

> > What will normal mode look like?  Will it be like the rescue mode:
> > just add all required commands to command.c or will it be really
> > modular and will all commands be loaded from disk?  Which commands
> > will normal mode have compared to rescue mode?
> 
> Ideally, you should not register commands in command.c. Please do this, only 
> if this is inevitable (like the psuedo command "title"). I'd like to keep 
> PUPA as modular as possible, so that PUPA is flexible enough.

Ok.

> The normal mode should have all commands you want to have. ;)
> Basically, it should have the same set of commands as GRUB, but you don't 
> have 
> to add unnecessary commands and you may change semantics freely.

Sure.

> Probably this is the most interesting part in PUPA development. It is 
> necessary to redesign all GRUB commands. I haven't redesigned everything, but 
> this is a basic strategy:
> 
> * Make all commands consistent. They should look like GNU commands. For 
> example, all commands should support long options, and short options 
> optionally.

That would be really nice.  We need some functions for this.

> * Get rid of magic, like the command "install" in GRUB. Instead, extend other 
> intelligent commands, such as "setup".

How will setup work?  Will it be interactive?  IIRC install was really
confusing.

> * Don't guess the type of a kernel any longer. This was just complex. 
> Instead, 
> prepare one command for one kernel type. For example, "linux" for Linux, 
> "netbsd" for NetBSD.

Ok.

> Also, it is necessary to make the interface powerful enough, like GRUB. The 
> rescue mode is quite dumb, and it is ok. The normal mode should support 
> useful features seen in readline. Unlike GRUB, I'd like to make the interface 
> customizable somehow. For example, some people prefer vi-like key bindings.

I'd like some good key bindings, perhaps I can have a look at it soon.

> Of course, the normal mode should have a menu interface as well. I have 
> already added it, but the current implementation is only for a presentation, 
> so it is welcome to change the look-and-feel completely, if desirable.

Will it be possible to have multiple user interfaces?  For example a
mouse controlled gui or an alternative menu.  I would like some
modularity here so it is possible to add some "user friendly" GUIs.
AFAIK some non-free bootloaders have that so I think it would be nice
if PUPA has such features too.  Of course this is long term thinking.

> Marco, if you have good ideas, don't hesitate! PUPA is a very good chance to 
> change GRUB radically.

I understand PUPA is a radical change, that's why I like it.  I will
have a good look at everything and try to improve what can be
improved.  Especially the interfaces are high priority to me.

Thanks,
Marco





reply via email to

[Prev in Thread] Current Thread [Next in Thread]