LiveCD layout optimisation
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Baltix |
Fix Released
|
Undecided
|
Unassigned | ||
debian-cd (Debian) |
New
|
Undecided
|
Unassigned | ||
debian-cd (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned | ||
livecd-rootfs (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
Binary package hint: livecd-rootfs
As discussed with cjwatson on IRC:
The Ubuntu Lucid LiveCD stands to have much more locality of reference than it currently has. Ideally, the boot files should be bunched together on the LiveCD, Linux modules first, then files required by boot scripts, then whatever is needed by X to start; icons for programs all in one place; and the documentation all in one place as well.
CDs can store more data at the edge (away from the centre) due to CLV [1], and need less seeking to access files.
Seeing as the Ubuntu LiveCD's boot sequence is predictable, based on the Filesystem Hierarchy Standard [2], we can make very broad assumptions about the need for file access during the boot sequence.
When the CD starts up, /usr is not read. /bin, /sbin, /lib and /lib/modules are used by the startup scripts and Linux loading up. So we can place these files together.
Then X is started, and the rest of the boot scripts. These read files from /usr/lib/dri, /etc and /bin, which will be cached (/bin/sh, /bin/awk, etc.) Conveniently the files needed by X are all in /usr/bin/X11, so we can bunch it with /etc too.
When the user wants documentation in GNOME, he/she will click links leading to other files related to what they want. So put all of these files together. But since these files are not often accessed in normal use, put them at the *start* of the disc. While /usr/share/doc is not *huge*, the documentation will occupy a lot of "radial space" on the CD (see attached CD layout image). Then normal use of the CD needs much less-wide seeks.
Sort files using these broad assumptions, for mksquashfs and mkisofs, are also attached.
[1] http://
[2] http://
Changed in debian-cd (Debian): | |
status: | Unknown → New |
Changed in debian-cd (Debian): | |
importance: | Unknown → Undecided |
Changed in livecd-rootfs (Ubuntu): | |
assignee: | nobody → liu bo (1300733887-9) |
status: | Incomplete → Fix Committed |
status: | Fix Committed → Opinion |
Changed in baltix: | |
status: | New → Fix Committed |
Changed in debian-cd (Ubuntu): | |
status: | New → Fix Committed |
Changed in baltix: | |
status: | Fix Committed → New |
status: | New → Incomplete |
Changed in livecd-rootfs (Ubuntu): | |
status: | Opinion → Fix Released |
Changed in baltix: | |
status: | Incomplete → Fix Released |
Changed in debian-cd (Ubuntu): | |
status: | Fix Committed → Fix Released |
Changed in baltix: | |
assignee: | nobody → liu bo (1300733887-9) |
Changed in debian-cd (Debian): | |
assignee: | nobody → liu bo (1300733887-9) |
Changed in debian-cd (Ubuntu): | |
assignee: | nobody → liu bo (1300733887-9) |
Negative weights in this sort-file put the corresponding files at the 'end' (which will end up at the edge of the CD) of filesystem. squashfs.