From Fedora Project Wiki

(Highlist 2GB, submit it.)
(turn the Bug/patch into livecd-tools NV requirement)
 
(13 intermediate revisions by 2 users not shown)
Line 3: Line 3:
== Summary ==
== Summary ==


Provide both 64bit (preferred) and 32bit distribution for PCs on a single flash disk >=2GB.
Both 64bit and 32bit distribution on a single flash disk where 64bit boots by default if possible.


== Owner(s) ==
== Owner(s) ==
Line 14: Line 14:
Automatically prefer x86_64 (AKA amd64, Intel 64, EM64T) live boot and installation but still provide i686 (AKA Intel 32) live boot and installation for 32bit only PCs and/or recovery of 32bit installations.
Automatically prefer x86_64 (AKA amd64, Intel 64, EM64T) live boot and installation but still provide i686 (AKA Intel 32) live boot and installation for 32bit only PCs and/or recovery of 32bit installations.


Most installations can benefit from x86_64 ABI increased performance and wider data management capabilities.  Still many installations are done in 32bit as people are not aware whether they have 64bit capable hardware.  The installation can autodetect the best installation mode for their system.
Most installations can benefit from x86_64 increased performance thanks to twice the more available registers together with better new ABI resulting in less memory swapping, also thanks to 64bit calculations without registers pairing, more efficient addressing modes used for example in shared libraies and wider data management capabilities thanks to the unlimited addressing space.  Still many installations are present in 32bit mode as people are not sure whether they have 64bit capable hardware.  This installation can autodetect the best installation mode for their system.


Software developers can benefit from easier addressing modes.  Users can benefit from a single kernel variant (no longer need for PAE and/or regular kernel variants).
Software developers can benefit from easier code thanks to the new addressing modes.  Users can also benefit from the simplicity of a single kernel variant (no longer need for PAE and/or regular kernel variants).


== Benefit to Fedora ==
== Benefit to Fedora ==
Line 24: Line 24:
== Builder + Kickstart File ==
== Builder + Kickstart File ==


* http://www.jankratochvil.net/priv/f15-live.sh
* http://people.redhat.com/jkratoch/f15-live.sh
* http://www.jankratochvil.net/priv/f15-live.ks
** requires livecd-tools >= 15.6
* http://people.redhat.com/jkratoch/f15-live.ks
** requires enabling '''updates''' and '''updates-testing''' in /usr/share/spin-kickstarts/fedora-live-base.ks


== ISO Name / FS Label ==
== ISO Name / FS Label ==
Line 31: Line 33:
The shell script creates files in this order:
The shell script creates files in this order:


* f15-live-x86_64.iso
* f15-live-x86_64.iso
* f15-live-i686.iso
* f15-live-i686.iso
* f15-live.bin
* f15-live.bin


If both '''.iso''' files already exist the '''f15-live.ks''' file is not used at all.  '''f15-live.bin''' is a 2GB image suitable for flash disk (like '''/dev/sdX''' where '''X''' is for example '''d''', CHECK THE MEDIA NAME IN YOUR CASE).  You should never use the partition names (like '''/dev/sdX1''').  Example command is:
If both '''.iso''' files already exist the '''f15-live.ks''' file is not used at all.  '''f15-live.bin''' is a 2GB image suitable for flash disk (like '''/dev/sdX''' where '''X''' is for example '''d''', CHECK THE MEDIA NAME IN YOUR CASE).  You should never use the partition names (like '''/dev/sdX1''').  Example command is:
Line 51: Line 53:


One should test it both with x86_64 hardware CPU (equivalent to '''qemu-kvm -cpu qemu64''') and also with i686 hardware CPU ('''qemu-kvm -cpu qemu32''') to verify '''ifcpu64.c32''' boots the right distro variant.  Real iron can be also used.
One should test it both with x86_64 hardware CPU (equivalent to '''qemu-kvm -cpu qemu64''') and also with i686 hardware CPU ('''qemu-kvm -cpu qemu32''') to verify '''ifcpu64.c32''' boots the right distro variant.  Real iron can be also used.
== Similar projects ==
None of the projects below provides the primarily/sole purpose of [[Biarch Spin]] (see Summary).  I do not mind porting the '''ifcpu64.c32''' support to any of the scripts below but they have other deficiencies compared to the '''f15-live.sh''' build script provided here.  I can port '''f15-live.sh''' to Perl-5 upon request.
[http://git.fedorahosted.org/git/?p=livecd;a=blob;f=tools/mkbiarch.py;hb=HEAD livecd-tools /usr/bin/mkbiarch]
* Missing '''ifcpu64.c32''' functionality which is the primarily/sole purpose of [[Biarch Spin]]
* It does not preserve the source media boot menu:
** Missing memtest86+ and other entries normally available at the source .iso files
* Fully superseded by '''f15-live.sh'''
[https://fedorahosted.org/multiboot-media-creator/ Multiboot Media Creator]
* Missing '''ifcpu64.c32''' functionality which is the primarily/sole purpose of [[Biarch Spin]]
* Missing unique media identifier to boot on systems with multiple versions of such media
* Does not preserve the source media boot menu:
** Missing memtest86+ and other entries normally available at the source .iso files
* I can extend '''f15-live.sh''' to accept arbitrary number of .iso files (not just the two)
[http://spot.fedorapeople.org/multiboot-media-creator.py Multiboot Media Creator in Python]
* Missing '''ifcpu64.c32''' functionality which is the primarily/sole purpose of [[Biarch Spin]]
* Missing unique media identifier to boot on systems with multiple versions of such media
* It does not preserve the source media boot menu:
** Missing memtest86+ and other entries normally available at the source .iso files
* I can extend '''f15-live.sh''' to accept arbitrary number of .iso files (not just the two)


== Spins Page ==
== Spins Page ==
Line 86: Line 112:
----
----


[[Category:Spins_Ready_For_Wrangler]]
[[Category:Spins_in_Development]]


<!-- After review, the spins wrangler will move your page to Category:Spins_Ready_For_Sig... if it still needs more work it will move back to Category:Spins_in_Development -->
<!-- After review, the spins wrangler will move your page to Category:Spins_Ready_For_Sig... if it still needs more work it will move back to Category:Spins_in_Development -->

Latest revision as of 19:34, 31 March 2011

Biarch Spin

Summary

Both 64bit and 32bit distribution on a single flash disk where 64bit boots by default if possible.

Owner(s)

Detailed Description

Automatically prefer x86_64 (AKA amd64, Intel 64, EM64T) live boot and installation but still provide i686 (AKA Intel 32) live boot and installation for 32bit only PCs and/or recovery of 32bit installations.

Most installations can benefit from x86_64 increased performance thanks to twice the more available registers together with better new ABI resulting in less memory swapping, also thanks to 64bit calculations without registers pairing, more efficient addressing modes used for example in shared libraies and wider data management capabilities thanks to the unlimited addressing space. Still many installations are present in 32bit mode as people are not sure whether they have 64bit capable hardware. This installation can autodetect the best installation mode for their system.

Software developers can benefit from easier code thanks to the new addressing modes. Users can also benefit from the simplicity of a single kernel variant (no longer need for PAE and/or regular kernel variants).

Benefit to Fedora

Fedora can automatically provide the best suitable variant of the distribution for each user. User experience gets greatly improved.

Builder + Kickstart File

ISO Name / FS Label

The shell script creates files in this order:

  • f15-live-x86_64.iso
  • f15-live-i686.iso
  • f15-live.bin

If both .iso files already exist the f15-live.ks file is not used at all. f15-live.bin is a 2GB image suitable for flash disk (like /dev/sdX where X is for example d, CHECK THE MEDIA NAME IN YOUR CASE). You should never use the partition names (like /dev/sdX1). Example command is:

cat f15-live.bin >/dev/sdX

As the biarch image is provided as a flash disk image including partition table for one 2GB FAT partition the ISO label is not applicable. FAT image has label LIVE, both ext3fs.img files have label _f14-live. The images get found by UUID such as: root=live:UUID=7404-2829

Dependencies

No special dependencies are known.

Scope / Testing

The provided .ks file is not essential for this Spin, the .ks' file can be dropped. Just the default CD size times 2 is not much useful as the nearest higher available flash disks are 2GB. Therefore I have provided some additional packages in the supplied .ks file. I changed there some personal boot defaults but those can be either also dropped or imported to the system .ks files.

One should test it both with x86_64 hardware CPU (equivalent to qemu-kvm -cpu qemu64) and also with i686 hardware CPU (qemu-kvm -cpu qemu32) to verify ifcpu64.c32 boots the right distro variant. Real iron can be also used.

Similar projects

None of the projects below provides the primarily/sole purpose of Biarch Spin (see Summary). I do not mind porting the ifcpu64.c32 support to any of the scripts below but they have other deficiencies compared to the f15-live.sh build script provided here. I can port f15-live.sh to Perl-5 upon request.

livecd-tools /usr/bin/mkbiarch

  • Missing ifcpu64.c32 functionality which is the primarily/sole purpose of Biarch Spin
  • It does not preserve the source media boot menu:
    • Missing memtest86+ and other entries normally available at the source .iso files
  • Fully superseded by f15-live.sh

Multiboot Media Creator

  • Missing ifcpu64.c32 functionality which is the primarily/sole purpose of Biarch Spin
  • Missing unique media identifier to boot on systems with multiple versions of such media
  • Does not preserve the source media boot menu:
    • Missing memtest86+ and other entries normally available at the source .iso files
  • I can extend f15-live.sh to accept arbitrary number of .iso files (not just the two)

Multiboot Media Creator in Python

  • Missing ifcpu64.c32 functionality which is the primarily/sole purpose of Biarch Spin
  • Missing unique media identifier to boot on systems with multiple versions of such media
  • It does not preserve the source media boot menu:
    • Missing memtest86+ and other entries normally available at the source .iso files
  • I can extend f15-live.sh to accept arbitrary number of .iso files (not just the two)

Spins Page

TBD.

Slogan

Automatic 64bit/32bit installation and recovery.

Spin description

Provide both 64bit (preferred) and 32bit distribution for PCs on a single flash disk >=2GB.

Screenshot

Download tab

https://fedoraproject.org/w/uploads/c/ce/Spin-details-download.png

Support tab

Users can contact jan.kratochvil@redhat.com although there is no specific code besides ifcpu64.c32 from the project syslinux.

Custom branding

None used.

Comments and Discussion