[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Interesting GSoC project ideas for 09
From: |
phcoder |
Subject: |
Re: Interesting GSoC project ideas for 09 |
Date: |
Sat, 28 Feb 2009 12:54:54 +0100 |
User-agent: |
Thunderbird 2.0.0.19 (X11/20090105) |
Robert Millan wrote:
Seems nice. Would you be willing to write a summary for these? Then we
could add it to grub-soc.html.
Where is this file?
Here is elaborated list:
HID:
-bluetooth keyboard
Often BIOS lacks bluetooth support completely. This means that if
someone uses bluetooth keyboard he may even need a separate ps/2 or usb
keyboard just to make his choice in grub. Implementing bluetooth stack
is a difficult task
-mouse support
This feature isn't something that is really useful. It's actually just
to make the bootloader nicer. It requires some changes in the grub's
design to be able to receive output from multiple sources in the same
time. This architecture change can be reused later for e.g recieving
input from both keyboard and serial or keyboard+ssh.
More graphics drivers
FS:
-zfs
It's mentionned in original e-mail. ZFS is a filesystem with many
features absent in classical filesystems, like e.g. snapshotting. It's
used by Solaris/OpenSolaris and FreeBSD. A port to fuse in linux exists
but is too slow to consider booting from zfs with linux
-btrfs
A conceptual replacement for ZFS for linux. Contains some features
absent from both ZFS and classical FS. For more details
http://btrfs.wiki.kernel.org/index.php/Main_Page
-Hammer (dragonflybsd)
It's a new feature of DragonFlyBSD. I don't know how it is better then
FFS or ZFS
Network
-TCP/IP
For many netbooting purposes a fairly complete TCP/IP stack is
necessary. Marco Gerards has some very basic code but said that it
shouldn't hold anybody interested in TCP/IP back
http://savannah.nongnu.org/projects/lwip/ or freebsd could be the base
of port. Following protocols need TCP/IP:
-TFTP
TFTP is a UDP-only protocol similar to very basic FTP used to transfer
kernels and configuration in classical netboot environment
-NFS
NFS is usually used to mount remote root filesystem. Its support in grub
can facilitate netbooting
-SMB
SMB is the protocol for which it's the easiest to setup a server.
Windows, MacOS and many linux distribution propose GUI for it. Many
organisations have an SMB server. Its support can make netbooting as
trivial as "put this iso into your shared folder"
-FTP, HTTP and DNS
These are the most used protocol for internet servers. It's also heavily
used to distribute OpenSource software. If grub2 supports at least FTP
or HTTP and DN,. distributions like ubuntu and debian can put a
configuration file on their server. Then user can just type
configfile (http,debian.org)/grub.cfg
Then a menu with mirrors will appear (random default selection is very
useful in this context), after mirrors user can choose a version and/or
variant. Then grub2 will download corresponding kernel and initrd. In
this way installation doesn't need anything else then grub2 and internet
access. No CD burning,...
Wireless stack
Wifi becomes more and more commonplace. If grub2 supports wireless the
previous scenarios can even be done in wireless environment. IMO target
cards should be intel and atheros because they have opensource drivers
Firewire
It's sometimes used for external harddrives, however USB2 is much more
common. However it has an advantage of being symmetric. It means that a
computer can also present itself as a disk. It's useful for cloning and
disaster recovery
Scripts:
-Finish scripting engine, loops, functions, pipes,...
Scripting engine is still incomplete
-Runtime autoconfig.
It scans all the drives and creates a list of detected OSes in grub2.
Very useful for demonstrations and recovery.
Realmode hooks
some tools are able to hook themselves onto bios interrupts to fool
chainloaded bootloader. This includes map and memdisk. It's also
possible to put dummies on interrupts under coreboot it may be enough in
some cases instead of complete SeaBIOS
--
Regards
Vladimir 'phcoder' Serbinenko