View Single Post
  #7   Spotlight this post!  
Unread 31-07-2013, 09:51
techhelpbb's Avatar
techhelpbb techhelpbb is offline
Registered User
FRC #0011 (MORT - Team 11)
Team Role: Mentor
 
Join Date: Nov 2010
Rookie Year: 1997
Location: New Jersey
Posts: 1,624
techhelpbb has a reputation beyond reputetechhelpbb has a reputation beyond reputetechhelpbb has a reputation beyond reputetechhelpbb has a reputation beyond reputetechhelpbb has a reputation beyond reputetechhelpbb has a reputation beyond reputetechhelpbb has a reputation beyond reputetechhelpbb has a reputation beyond reputetechhelpbb has a reputation beyond reputetechhelpbb has a reputation beyond reputetechhelpbb has a reputation beyond repute
Re: Best Linux Distribution (for a small screen)?

Timed out again and this is my last revisit to this topic.

Decided to quickly install Snow Linux 4 with the Debian kernel.

You can use the trick from Linux Mint above with displays.xml to get the LiveCD into 640x480.

The Snow Linux 4 installer scales with the screen resolution down to 640x480.
So less dragging windows around with ALT-F7.
That installer also does not check to see if:
1. Your are plugged in (laptop)
2. Have more than 5.3GB of space
3. Internet access unlike Linux Mint 13 LTS.
So no barrier there.

After install you end up with grub 2 and lightdm so look back at the directions for Lubuntu for those 2 items.
You'll need to make the xrandr vga.sh script also described previously.
Just be sure to uncomment the 'display-setup-script=' in the section '[SeatDefaults]' and add your shell script.
Do not add it to the bottom of the file or it will be ignored.

Be aware that Snow Linux was the only one of the 6 Linux distro I installed that correctly and immediately recognized that I was using Oracle VirtualBox so instead of this line:
xrandr --output default --primary --mode 640x480
You want:
xrandr --output VBOX0 --primary --mode 640x480
How did I know it was VBOX0?
Do a: xrandr -q
Again the 3rd line down, the one below the one that starts with 'Screen 0' shows the first display subsystem (if you have several displays you might get several results but let's keep this example down to a single display).

So after doing all that I found that at boot in the GUI the OS was using 82MB of the 512MB of physical RAM.
About 2.3GB of the 4GB virtual hard drive was used.
The guided partitioning during the install used about 500MB of the virtual hard drive as swap space so that is also not available for other things.
So you end up with about 1.8GB of free space to do as you please out of the 4GB of storage.

I got Python 2.7.3, Perl 5.14.2 and OpenJDK 1.7.0_03 by default with this install.
I also got GAWK and GNU SED by default with this install.

Also I noticed after Ether asked below that I may not have listed the version of PuppyLinux I installed earlier as well.

Let's do one better and make sure that we are all looking at the same thing.
The versions of the ISO files I am using are:
Code:
   Distribution             ISO file used                       Size of ISO as stored on EXT3

1. Lubuntu                  lubuntu-13.04-alternate-i386.iso    653MB
2. Puppy Linux              lupu-528.005.iso                    133MB
3. CrunchBang aka #!        crunchbang-11-20130506-i486.iso     771MB
4. D**n Small Linux (DSL)   dsl-4.11.rc2-syslinux.iso            51MB
5. Linux Mint               linuxmint-13-xfce-dvd-32bit.iso     811MB
6. Snow Linux               snowlinux-4-xfce-i386.iso           694MB
So let me collect from all of my above posts the information about the storage used and the physical RAM consumed after boot:
Code:
Available free space with guided partitioning on *4GB* virtual drive:
(Do not assume this will stay at this level.)
(Data will likely accumulate from usage and also from updates.)

1. Lubuntu                  1.4GB free
2. Puppy Linux              3.3GB free   * 2nd largest free space
3. CrunchBang aka #!        0.6GB free   * Needed to substract swap partition in earlier post
4. D**n Small Linux (DSL)   3.7GB free
5. Linux Mint               2.2GB free   * *WARNING* I needed >5.3GB to install so this is from 6GB
6. Snow Linux               0.8GB free

Physical RAM used at boot of default internal hard drive install:
(These numbers will differ from the content of: cat /proc/meminfo)
(These numbers might differ from the content of: free)
(Execution of just about any non-trivial program will consume additional physical RAM.)
(Installation of updates could easily alter the amount of RAM that is consumed at idle once booted.)

1. Lubuntu                  140MB   * Largest usage of RAM
2. Puppy Linux               37MB   * 2nd smallest usage of RAM
3. CrunchBang aka #!         82MB
4. D**n Small Linux (DSL)    14MB   * Smallest usage of RAM
5. Linux Mint               130MB
6. Snow Linux                82MB
Finally what common programming languages do you get by default:
Code:
                          | AWK         | SED         | Perl   | Python | OpenJDK
--------------------------+-------------+-------------+--------+--------+----------
1. Lubuntu                | AWK         | GNU SED     | 5.14.2 | 2.7.4  | N/A
2. Puppy Linux            | GAWK        | GNU SED     | 5.10.1 | N/A    | N/A
3. CrunchBang aka #!      | AWK         | GNU SED     | 5.14.2 | 2.7.3  | 1.6.0_27
4. D**n Small Linux (DSL) | BusyBox AWK | BusyBox SED | 5.8.0  | N/A    | N/A
5. Linux Mint             | GAWK        | GNU SED     | 5.14.2 | 2.7.3  | 1.6.0_24
6. Snow Linux             | GAWK        | GNU SED     | 5.14.2 | 2.7.3  | 1.7.0_03
I've gathered up a few more things from this topic here in the table below.
Code:
                          | Boot loader | Login / Display Manager | Rough boot time
--------------------------+-------------+-------------------------+-----------------------------------
1. Lubuntu                | grub 2      | lightdm                 | 46 seconds 
2. Puppy Linux            | grub 1      | N/A                     | 34 seconds  * Tie for 2nd fastest
3. CrunchBang aka #!      | grub 2      | slim                    | 39 seconds
4. D**n Small Linux (DSL) | grub 1      | N/A                     | 21 seconds  * Fastest
5. Linux Mint             | grub 2      | mdm                     | 34 seconds  * Tie for 2nd fastest
6. Snow Linux             | grub 2      | lightdm                 | 51 seconds  * Slowest
The boot times are the result of rounding up or down to the nearest second.
Then trying the boot 3 times, averaging and then rounding up or down.
Therefore a mere second or 2 difference between OS is pretty irrelevant.
The measurement was done with a stop watch so there's more inaccuracy.
I started as close to the double-click to start the VM as possible.
I stopped as close to the login prompt or command prompt appearing as possible.
PuppyLinux never produced a login prompt it just presented a command prompt (a bit insecure in some cases).
Keep in mind this therefore includes the Oracle VirtualBox BIOS screen display time.
The BIOS screen appears for roughly: 3 seconds.
In all cases the boot loader was configured to wait: 2 seconds.
Therefore all boot times are actually padded by 5 seconds.
Since I am not using any sort of custom BIOS that means that these virtual machines will never boot faster than 2 seconds.
These numbers are worst case for my laptop because I put the virtual storage on an external USB3 Iomega 500GB 2.5" hard drive.
This laptop does not have integrated USB3 so I have that drive plugged into my USB2 port.
Therefore these boot times are longer than when I originally installed the virtual machines on my internal SSD.
My laptop is an: Lenovo T61, 6465-CTO, 4GB of RAM, Intel T7700 CPU @ 2.4GHz
A faster or slower CPU will likely impact the boot performance.
If the system memory for the host is too low the host will swap and that will impact the boot performance.
In all cases I had no other manually started programs open except Oracle VirtualBox and gnote (to scribble notes).
Also keep in mind that if you do not properly shutdown Linux on the next boot it might 'fsck' which eats time.
Finally note that D**n Small Linux was the *only* OS I installed on an virtual IDE controller instead of virtual SATA.
So D**n Small Linux might be getting an advantage from that difference in the virtual machine.
I can't test D**n Small Linux on a virtual SATA controller because it wouldn't work that way for me.

Copying the virtual disk for D**n Small Linux back to my SSD decreased the boot time by 3-4 seconds over 3 tests.
Copying the virtual disk for Snow Linux back to my SSD decreased the boot time by 3 seconds over 3 tests.
Remember that the SSD is much faster but much of what the boot does is limited by queries to hardware.
Therefore virtualizing these hosts has negatively impacted the performance.

Keep in mind that FIRST's RFQ for a new control system asked for boot times under 30 seconds.
Using that as guidance you could cold boot a laptop on the robot with some tweaking.
Further with a laptop on the robot secondary to the cRIO you might not need to reboot at all because it has a battery.

I have all 6 of these installations as Oracle VirtualBox virtual machines.
I am running Oracle VirtualBox version: 4.2.16 r86992 on:
RedHat 6.3 Santiago kernel 2.6.32-279.14.1.el6.x86_64
If anyone wants them as appliances I can do that.

Last edited by techhelpbb : 31-07-2013 at 21:37.
Reply With Quote