The driver for the VIA Chrome 9 graphics chipset which makes up part of the VIA VX800 combined NorthBridge, SouthBridge and Graphics Adaptor is the Linux Kernel driver CONFIG_FB_VIA
The driver for the VIA VT6115 ethernet controller chip is via-rhine.
Sunday, 17 February 2013
Friday, 15 February 2013
Fujitsu Futro S100 - boot from Network using PXE
Well, I've almost got my head around the network boot business.
There is a standard for BIOS boot from network - called PXE (for Preboot eXecution Environment), and apparently aka "pixie", and originally created by Intel for 32bit systems.
It makes use of a protocol that combines and extends DHCP and TFTP
The device booting up gets itself an IP address (either static or from the DHCP server)
Some useful links:
Windows software to serve the DHCP extensions and TFTP the boot files
http://www.vercot.com/~serva/an/NonWindowsPXE3.html
A good tutorial:
http://osdev.berlios.de/netboot.html
The wikipedia page
http://en.wikipedia.org/wiki/Preboot_Execution_Environment
The PXE spec
http://quimby.gnus.org/internet-drafts/draft-henry-remote-boot-protocol-00.txt
and v2.1
ftp://download.intel.com/design/archives/wfm/downloads/pxespec.pdf
PXELINUX
http://www.syslinux.org/wiki/index.php/PXELINUX
An interesting thread, though I'm still digesting it:
http://reboot.pro/topic/2936-is-it-possible-to-boot-any-bootable-iso-file-off-the-network/
Articles about tinyCore:
http://sirlagz.net/2011/05/16/how-to-pxe-boot-tiny-core-linux/
and Puppy
http://minipc.org/pxe/1-netbooting-readme.txt
http://puppylinux.org/wikka/PXELINUX
https://docs.google.com/document/d/1bkMJ-2wjAAC8HVZZTZBFxBELbojoGctLMg27KazqvRw/edit?hl=en&pli=1#
http://sirlagz.net/2011/06/13/how-to-boot-puppy-5-2-5-over-pxe/
and a thread
http://murga-linux.com/puppy/viewtopic.php?t=23615
Some ready-made netboot files (for Breeezy)
http://minipc.org/pxe/
Nitty-gritties of PXE
http://wiki.osdev.org/PXE#Files.2C_via_TFTP
There is a standard for BIOS boot from network - called PXE (for Preboot eXecution Environment), and apparently aka "pixie", and originally created by Intel for 32bit systems.
It makes use of a protocol that combines and extends DHCP and TFTP
The device booting up gets itself an IP address (either static or from the DHCP server)
Some useful links:
Windows software to serve the DHCP extensions and TFTP the boot files
http://www.vercot.com/~serva/an/NonWindowsPXE3.html
A good tutorial:
http://osdev.berlios.de/netboot.html
The wikipedia page
http://en.wikipedia.org/wiki/Preboot_Execution_Environment
The PXE spec
http://quimby.gnus.org/internet-drafts/draft-henry-remote-boot-protocol-00.txt
and v2.1
ftp://download.intel.com/design/archives/wfm/downloads/pxespec.pdf
PXELINUX
http://www.syslinux.org/wiki/index.php/PXELINUX
An interesting thread, though I'm still digesting it:
http://reboot.pro/topic/2936-is-it-possible-to-boot-any-bootable-iso-file-off-the-network/
Articles about tinyCore:
http://sirlagz.net/2011/05/16/how-to-pxe-boot-tiny-core-linux/
and Puppy
http://minipc.org/pxe/1-netbooting-readme.txt
http://puppylinux.org/wikka/PXELINUX
https://docs.google.com/document/d/1bkMJ-2wjAAC8HVZZTZBFxBELbojoGctLMg27KazqvRw/edit?hl=en&pli=1#
http://sirlagz.net/2011/06/13/how-to-boot-puppy-5-2-5-over-pxe/
and a thread
http://murga-linux.com/puppy/viewtopic.php?t=23615
Some ready-made netboot files (for Breeezy)
http://minipc.org/pxe/
Nitty-gritties of PXE
http://wiki.osdev.org/PXE#Files.2C_via_TFTP
Fujitsu Futro S100 Heat management
Fujitsu Futro S100 on stand |
The bottom side, hidden in this photo, is just as perforated as the visible upper side.
So I'm guessing that the key issue for a stand is to raise the perforated section of the underside up off the surface by... it looks like 6 to 10mm.
I'm now toying with creating a couple of U-shaped supports out of some 20mm veneered chipboard.
Linux VIA Rhine III ethernet driver and the VIA VT6115 chip
Wary Puppy picks up the via-rhine Linux driver module all by itself.
One of the interesting* things, is that the VIA VT6115 chip used in the Fujitsu Futro S100 isn't in the list of chips supported by via-rhine linux driver.
* for particular values of the word "interesting"
One of the interesting* things, is that the VIA VT6115 chip used in the Fujitsu Futro S100 isn't in the list of chips supported by via-rhine linux driver.
* for particular values of the word "interesting"
Fujitsu Futro S100 - Step 2 - set the frame buffer size
By default, the Futro's BIOS is set to reserve 128MB of the RAM as a video frame buffer.
The Futro is capable of displaying video at 1920 x 1200, but I'm using an old LCD screen with a maximum display of 1280 x 1024 LCD monitor I have.
I like as much screen real-estate as possible, but I don't need much in the way of colour, so I used my patent frame buffer sizing formula and came up with 16MB. At that setting, Xorg allows me to select 1280x1024 at 16bit colour depth. I'd be happy to run with about 8 bits of colour depth, but Xorg doesn't offer that. And if I want the 24bit option that Xorg offers, all I have to do is set the frame buffer to 32MB.
This frees up an extra 112MB of RAM!
Setting VGA Frame Buffer sizes
The formula for calculating frame buffer sizing :
First of all, you need the size of one screenful:
multiply the horizontal resolution by the vertical resolution by the colour depth : this is the size in bits (b)
then
divide by 8 : this is now the size in Bytes (B)
then
divide by 1024 : this is now the size in KiloBytes (KB)
then
divide by 1024 again : this is now the size in MegaBytes (MB)
To go straight in one stage -
(horizontal resolution * vertical resolution * colour depth ) / ( 8 x 1024 x1024) = size of 1 screen in MB
Then, depending on how many frames you need to buffer to avoid flicker, you need to multiply the size in MB by the number of frames you need.
Incidentally, if you know the screen frequency - which is the same as the number of frames in one second -
then one second of video = size of 1 screen * screen frequency.
Fujitsu Futro S100 - Step 1 - Boot up
The replacement Fujitsu Futro S100 has arrived from the excellent people at scrumpymacs.
It's just as lovely a piece of kit as the first one, but behaves much better.
Step 1: Get it booting - first of all, I put the latest Wary version of Puppy Linux on an old Kingston Technologies 1GB USB memory stick. I think I used ISOrecorder, I can't remember.
I bought a big Compact Flash card off of eBay - a Sandisk 2GB card - and used Rufus to format it as a bootable Wary Puppy Linux disk.
It's just as lovely a piece of kit as the first one, but behaves much better.
Step 1: Get it booting - first of all, I put the latest Wary version of Puppy Linux on an old Kingston Technologies 1GB USB memory stick. I think I used ISOrecorder, I can't remember.
I bought a big Compact Flash card off of eBay - a Sandisk 2GB card - and used Rufus to format it as a bootable Wary Puppy Linux disk.
Fujitsu Futro S100 has arrived
The thin client arrived, and is a lovely solid lump of satisfying thing.
But the first one behaved erratically - not booting by itself, with the network socket sometimes responding, and sometimes not, and buzzing very loudly during the POST memory test.
The good people at scrumpymacs replaced it promptly and quickly, and the new Fujitsu Futro S100 is purring like a dream.
But the first one behaved erratically - not booting by itself, with the network socket sometimes responding, and sometimes not, and buzzing very loudly during the POST memory test.
The good people at scrumpymacs replaced it promptly and quickly, and the new Fujitsu Futro S100 is purring like a dream.
Sunday, 10 February 2013
Setting up a home microserver - choosing a device
There are two main options:
1) Raspberry Pi Model B
Uncased (but cases are now available and there are active threads on making your own case)
Power consumption : 2W
Power cost per annum: approx. £2.50 (assuming always on, and £0.125p per KWhr)
Clock speed : 700MHz, user can set up to 1GHz .
RAM : 512MB, (including onboard video ?)
Storage: SDHC Flash card (up to ... ?)
Ethernet: 10/100Mbps wired
USB ports : 2
Other ports:
HDMI out
Micro USB power in
Linux support: getting better by the fortnight.
Price not including case or power supply
2) Re-purposing a thin client device as a Linux server.
There are lots of thin clients available second-hand on eBay:
e.g.Sun Sunray (aka Sunray 1) : very cheap - but no-one has ever re-purposed one.
Igel 1/2 (aka Igel 2110) : currently £20 (inc. delivery) on eBay, with 256MB RAM.
After a lot of research, and reading almost every word written at "Repurposing Thin Clients" (parkytowers.me.uk/thin/), I went with one of the machines they *didn't* mention : - the Fujitsu Futro S100
Fujitsu Futro S100
Cased
Power consumption : 11W
Power cost per annum: approx. £13.75 (assuming always on, and £0.125p per KWhr)
Clock speed : 500MHz?
Chipset: VIA Eden processor,
VX800 (combined North & Southbridge),
VIA VT6115 (Rhine III ethernet controller)
RAM: up to 1GB, (including onboard video)
Storage: internal Compact Flash socket (up to 2GB?)
Ethernet: 10/100Mbps wired
USB ports : 4 (2 at the front, 2 at the back)
Other ports:
PS/2 Mouse, PS/2 Keyboard
Audio out
Mic in
VGA out
9-pin Serial I/O
Kensington lock socket
12V power in
I got mine from the good people at scrumpymacs, for £30 + £5 p&p, with 1GB of CF ROM and 1GB or RAM, Unlike the Pi, it comes with case and power supply. And an audio-out cable (3.5mm stereo jackplug at both ends). Their customer service is excellent, with the device arriving very quickly.
Linux support: should be good, though I'm a little nervous in case it's not!
Ultimately, my plan is to attempt to get the power bill down by using Wake On LAN to ensure it's only powered up on demand
The chipset is the VIA Eden CPU (low-power x86 compatible) at a 500MHz clock speed.
At time of writing, for Linux it's apparently important not to use the Nehelim versions of Eden.
Here is the chart of which Edens have which core
It also uses the VX800 combined North and South Bridge, and the VT6115 wired 10/100Mbps ethernet controller chip.
----------------
Once it's running, the plan is to run:
nginx, Seaside, the fencing competition app, and PaFF and FiF domains, plus give friends access to my photo library on the microserver.
1) Raspberry Pi Model B
Uncased (but cases are now available and there are active threads on making your own case)
Power consumption : 2W
Power cost per annum: approx. £2.50 (assuming always on, and £0.125p per KWhr)
Clock speed : 700MHz, user can set up to 1GHz .
RAM : 512MB, (including onboard video ?)
Storage: SDHC Flash card (up to ... ?)
Ethernet: 10/100Mbps wired
USB ports : 2
Other ports:
HDMI out
Micro USB power in
Linux support: getting better by the fortnight.
Price not including case or power supply
2) Re-purposing a thin client device as a Linux server.
There are lots of thin clients available second-hand on eBay:
e.g.
Igel 1/2 (aka Igel 2110) : currently £20 (inc. delivery) on eBay, with 256MB RAM.
After a lot of research, and reading almost every word written at "Repurposing Thin Clients" (parkytowers.me.uk/thin/), I went with one of the machines they *didn't* mention : - the Fujitsu Futro S100
Fujitsu Futro S100
Fujitsu Futro S100 with flash drive in a front USB port, beside a Compact Flash card |
Power consumption : 11W
Power cost per annum: approx. £13.75 (assuming always on, and £0.125p per KWhr)
Clock speed : 500MHz?
Chipset: VIA Eden processor,
VX800 (combined North & Southbridge),
VIA VT6115 (Rhine III ethernet controller)
RAM: up to 1GB, (including onboard video)
Storage: internal Compact Flash socket (up to 2GB?)
Ethernet: 10/100Mbps wired
USB ports : 4 (2 at the front, 2 at the back)
Other ports:
Fujitsu Futro S100, rear view showing ports and connectors |
Audio out
Mic in
VGA out
9-pin Serial I/O
Kensington lock socket
12V power in
I got mine from the good people at scrumpymacs, for £30 + £5 p&p, with 1GB of CF ROM and 1GB or RAM, Unlike the Pi, it comes with case and power supply. And an audio-out cable (3.5mm stereo jackplug at both ends). Their customer service is excellent, with the device arriving very quickly.
Linux support: should be good, though I'm a little nervous in case it's not!
Ultimately, my plan is to attempt to get the power bill down by using Wake On LAN to ensure it's only powered up on demand
The chipset is the VIA Eden CPU (low-power x86 compatible) at a 500MHz clock speed.
At time of writing, for Linux it's apparently important not to use the Nehelim versions of Eden.
Here is the chart of which Edens have which core
It also uses the VX800 combined North and South Bridge, and the VT6115 wired 10/100Mbps ethernet controller chip.
----------------
Once it's running, the plan is to run:
nginx, Seaside, the fencing competition app, and PaFF and FiF domains, plus give friends access to my photo library on the microserver.
Attempting to create a class and two subclasses
Attempt 1 - Squeak 3.0.6
Action-click the desktop -> Browser
Select a package
Amend the code in the lower pane, to change the #NameOfClass and the package name
Object subclass: #Person
instanceVariableNames: 'forenames surname'
classVariableNames: ''
poolDictionaries: ''
category: 'MyNewApp'
To create the accessors automagically:
Select the class, and action-click, then : Refactor class > Accessors
This seems to work
Action-click the desktop -> Browser
Select a package
Amend the code in the lower pane, to change the #NameOfClass and the package name
Object subclass: #Person
instanceVariableNames: 'forenames surname'
classVariableNames: ''
poolDictionaries: ''
category: 'MyNewApp'
To create the accessors automagically:
Select the class, and action-click, then : Refactor class > Accessors
This seems to work
Tuesday, 5 February 2013
Stage 3 - Setup Multiple Virtual Hosts on NginX
This configuration works with multiple virtual hosts, and allows the images for all pages to be in an images directory.
worker_processes 2; # One for each CPU core
error_log logs/main_error.log;
pid logs/nginx.pid;
events { worker_connections 1024; }
http
{ include mime.types;
# i.e. On Windows, [<nginx>/conf/]mime.types
# i.e. the mime.types file in the conf dir in the nginx's directory
default_type application/octet-stream;
index index.htm index.html index.st index.php;
# the file provided when a client asks for a directory
server #default
{ server_name :80;
access_log logs/catchall.access.log;
error_log logs/catchall.error.log;
root html\catchall;
}
server #Server_1
{ server_name Server_1.uk.to ; # *.Server_1.uk.to;
access_log logs/Server_1.access.log;
error_log logs/Server_1.error.log;
root html/Server_1/currentSite;
location ^~ /images/ { alias html/Server_1/images/; }
}
server #Server_2
{ server_name Server_2.uk.to ; # *.Server_2.uk.to;
access_log logs/Server_2.access.log;
error_log logs/Server_2.error.log;
root html/Server_2/currentSite;
location ^~ /images/ { alias html/Server_2/images/; }
}
}
worker_processes 2; # One for each CPU core
error_log logs/main_error.log;
pid logs/nginx.pid;
events { worker_connections 1024; }
http
{ include mime.types;
# i.e. On Windows, [<nginx>/conf/]mime.types
# i.e. the mime.types file in the conf dir in the nginx's directory
default_type application/octet-stream;
index index.htm index.html index.st index.php;
# the file provided when a client asks for a directory
server #default
{ server_name :80;
access_log logs/catchall.access.log;
error_log logs/catchall.error.log;
root html\catchall;
}
server #Server_1
{ server_name Server_1.uk.to ; # *.Server_1.uk.to;
access_log logs/Server_1.access.log;
error_log logs/Server_1.error.log;
root html/Server_1/currentSite;
location ^~ /images/ { alias html/Server_1/images/; }
}
server #Server_2
{ server_name Server_2.uk.to ; # *.Server_2.uk.to;
access_log logs/Server_2.access.log;
error_log logs/Server_2.error.log;
root html/Server_2/currentSite;
location ^~ /images/ { alias html/Server_2/images/; }
}
}
Labels:
configuration,
nginx,
virtual hosts,
web server,
Windows
Subscribe to:
Posts (Atom)