Smallfoot
Encyclopedia
- For the fictional character see Small Foot.
Smallfoot is the name of both a Rapid application development
Rapid application development
Rapid application development is a software development methodology that uses minimal planning in favor of rapid prototyping. The "planning" of software developed using RAD is interleaved with writing the software itself...
toolkit and an embedded operating system designed and released by Caldera Systems/The SCO Group in both Unix
UnixWare
UnixWare is a Unix operating system maintained by The SCO Group . UnixWare is typically deployed as a server rather than desktop. Binary distributions of UnixWare are available for x86 architecture computers. It was originally released by Univel, a jointly owned venture of AT&T's Unix System...
and Linux
Linux
Linux is a Unix-like computer operating system assembled under the model of free and open source software development and distribution. The defining component of any Linux system is the Linux kernel, an operating system kernel first released October 5, 1991 by Linus Torvalds...
formats. Created for use in embedded environments such as point of sale
Point of sale
Point of sale or checkout is the location where a transaction occurs...
systems and gaming, the toolkits are used to create specifically tailored operating systems geared towards the desired use. These customized and stripped down versions of the operating systems make less of a footprint, hence the names Smallfoot embedded UNIX and Smallfoot embedded Linux respectively.
Smallfoot is also notable in that it was a key Linux product of the SCO Group, developed for both the UNIX and Linux platforms and distributed by SCO and Caldera Systems after its purchase of SCO. In the IBM vs SCO (2003- ) lawsuit, SCO denies (or has denied) distribution of Linux kernel code, however SCO Smallfoot is based on both 2.4.10 and 2.6.1 Linux kernel versions.
History
The name Smallfoot (whilst trademarked by SCO) was never the intended products final name. It was thought up by both Jack Richards and David Taylor as a working name, both thought something better would be thought up by marketing.Smallfoot was proposed in 2001 by Justin 'Jack' Richards, then principal open source consultant for EMEIA. Richards joined SCO in 1999 as the first dedicated Linux consultant and was tasked with building SCOs' consulting resource in this area. Richards was a contributor (one of many) to Matthew Marshs' "Linux Networking Unleashed" book. The Smallfoot concept was championed by David Taylor, vice president of professional services at SCO, who gave the go ahead for initial prototypes to be written.
Smallfoot... started as a way of positioning Linux as a way forward for SCO customers using the outdated 3.2.4.2 OpenServer POS solution. We (SCO) had literally millions of POS seats around the world using this almost pre-historic version of UNIX and we couldn't support it for ever, not to mention the fact that the global sales force just couldn't understand selling Linux. I'd come to SCO to inject Linux into its veins - a new life blood to a declining market share - and a Linux POS platformed seemed like the path of least resistance. I spoke with Dave [Taylor] about some work I had been doing and suggested that we should look into Linux POS. He asked some questions about technology, the market and the competitors and from that point on he was hooked. --Jack Richards (17th August 2007)
Version one - Linux
Richards designed the first Linux version in late 2001 and produced a number of proof of concept systems including "Doom on a Disk", a bootable mini-CDROM based version that ran the free version of ID Software' DOOM game. The CDROM was given out as a free demonstration at Linux World that year.Smallfoot itself was the result of a number of internal and external projects that Richards was working on at the time. The initial idea behind Smallfoot came from a project that he was working on to build a custom Linux distribution, based on Red Hat 5 for Linetex Computers based in Woking and a project that a colleague sitting across the room was working on for Deutsche Bahn (an embedded Openserver solutions for platform messaging).
Alan Bristow, then the IT director at Linetex commissioned SCO Professional Services to build a shrink-wrapped Linux distribution for a project called eSP, a PC based systems management and monitoring platform.
Soon after this, the late Chuck Zenkus (IT director and project director) from Incredible Technologies
Incredible Technologies
Incredible Technologies , based in Arlington Heights, Illinois is a US-based designer and manufacturer of coin-operated video games. Some of their games include Silver Strike Bowling, Power Putt, Target Toss Pro: Bags/Lawn Darts, and Golden Tee Golf...
approached Caldera Systems in Utah with the idea of creating a Linux development and OS platform for its new TouchIT system.
Caldera Systems did not have the engineering bandwidth at the time and so subcontracted the work out to SCO in the UK. (Note: Caldera Systems completes its acquisition of the SCO OS business in mid-2001. The Incredible Technologies deal was part of an early strategic delivery deal initiated prior to the acquisition. SCO Professional Services Group deliver the ITS work, not Caldera Systems (formerly LST) in Erlangen, Germany, where the OpenLinux development was done).
Richards was tasked with developing a stateless Linux OS platform and development environment. The basic requirements of the OS were that it could remain stable and secure in the field, whilst performing 3D SDL/OpenGL graphical operations and stereo 44.1 kHz wave playback on a moderate CPU platform. The TouchIt system had just 32MB of RAM and was based on a Celeron 500. Of this 32MB, 16MB was actually shared on the motherboard by the i815 graphics card.
TouchIt was shown at the 2001 ATEI
Amusement Trades Exhibition International
The Amusement Trades Exhibition International is the major UK trade show for the coin-op and amusements trade.- 2009 Vortex incident :...
in Las Vegas, opposite Nolan Bushnell
Nolan Bushnell
Nolan K. Bushnell is an American engineer and entrepreneur who founded both Atari, Inc and the Chuck E. Cheese's Pizza-Time Theaters chain...
s' UWink
UWink
uWink, Inc. was a publicly-traded digital entertainment company based in Los Angeles, California, USA. The company was founded in 2000 by Nolan Bushnell, the co-founder and former CEO of both Atari and Chuck E. Cheese...
system. UWink was also based on Linux, but had a special button in the cash box that needed to be pressed to shut it down without corruption. It took 3 minutes to boot.
Conversely, TouchIT http://www.newsforge.com/article.pl?sid=01/06/19/1755242&mode=thread took 33 seconds to boot into game and the power cord could just be pulled to power down the system. TouchIT survived over 40,000 hours of testing without a single OS failure while UWink died if you pulled out the power whilst running too often.
These two platforms formed the knowledge base for Smallfoot.
It was at this point that Ransom Love visited the UK offices and viewed a demonstration of Smallfoot. Further funding and support followed.
Version two - Toolkit and image builder now in the project roadmap
Federico Ciggonini, an engineer in the TEAM group at SCO in Watford, was tasked with implementing an OS cutter based on Richards' specifications that would allow the stock OpenLinux Platform to be used as the base OS for a Smallfoot deployment.At this point, Allan Clark became influential in the design of the Smallfoot platform. Clark, based in Murray Hill near New York, provided a large amount of support and development input to Richards' team in the UK.
A fully functional Operating System now existed and had been deployed to a small number of clients, proving the concept and becoming the first Linux Point of Sale operating system commercially available. The SCO development team applied to the Linux Standards Base for an official package to be registered (lsb-smallfoot, The SCO Group (Caldera Systems Inc.), smallfoot@sco.com) and this entered into registration http://www.lanana.org/lsbreg/packages/packages.txt
At this point, SCO Professional services decide to develop the concept further - a fully automated version of the Smallfoot build system, coined "The Smallfoot Toolkit".
Under direction from Jack Richards, Allan Clark in NJ leads the OS image generation part and Sujit Kuma in India lead the GUI frontend development.
The technology incubates and the customer interest rises after a number of press releases and technology previews.
Within 12 months, SCO management add resources to the Smallfoot development team.
The Smallfoot Engineering department was formed in Murray Hill, New Jersey
Murray Hill, New Jersey
Murray Hill is an unincorporated area within portions of both Berkeley Heights and New Providence, located in Union County in northern New Jersey, United States....
under Andy Nagle, with developers drafted from OS engineering department (3) and Professional Services department (1). Jack Richards defines the initial technical architecture during the first meetings in New Jersey and sets the commercial and technical scene. The high level requirements, including network provisioning, POS stack, smart configuration and look/feel form this initial brief.
Within 2 months of the initial meetings, Richards becomes Product Manager and Allan Clark Chief Architect, all development moves to the US and is formally adopted into the Engineering Group.
The responsibilities in the department were:
Andy Nagle - Manager.
Jack Richards - Product Manager.
Allan Clark - overall architecture and integration, kernel configuration.
Alex Sack - X11, shell tools configuration.
Sergey Babkin - boot loader configuration and deployment of images.
Walt Croom - network configuration.
Sujit Kuma - auxiliary development.
Sujit Kuma, working on a GUI was seconded to the team, while organizationally still part of the Professional Services department.
Jack Richards continued as Product Manager and began work on the marketing and sales of Smallfoot. Janet Sulivan took overall respopnsibility for Product Marketing.
The Linux version of the Smallfoot Toolkit was never completed. The GUI was done only to the mock-up quality. The GUI part was never mated to the OS image generation part. Parts of the OS image generation functionality were completed and working but it never got integrated. The milestones were repeatedly missed, and by the time of expected beta release there was no deliverable.
Whilst many SCO products within the Linux range were facing increased scrutiny, Smallfoot as a concept was in constant demand by potential customers and favoured by both marketing and sales departments. In direct response to SCOs stance towards Linux, the Smallfoot Toolkit development switched to a Unix-based OS in May 2003.
Version three - UnixWare
In 2003 the former Caldera International and Caldera Systems had renamed to The SCO Group and decided to drop its Linux product line. The Smallfoot Toolkit was to be redesigned based on a Unix OS.The base OS choice was between UnixWare and OpenServer. The NJ office was the location of the UnixWare development, so the engineers were familiar with it, while OpenServer was developed in California. UnixWare was also the more modern OS. However a major required feature was the network boot loader support. It was never supported in UnixWare while a previous version of OpenServer had an one-off implementation. However a quick prototype based on GRUB (later rewritten into a proper independent PXEBOOT loader) has sealed the decision towards UnixWare.
It is of note that Smallfoot for Linux continued to be sold during this time to a number of customers in the UK. Engineering on it continued on a custom basis with customers such as Barcrest - part of the IGT group for OpenGL based fruit machines. The work was undertaken by Mike Moore, also famous for his Barleywood Z80 simulator many years previously.
Since UnixWare was missing a large amount of functionality needed for Smallfoot, the team responsibilities were changed. The 3 people originally from OS engineering were tasked with adding the missing features to UnixWare, Allan Clark was single-handedly responsible for adapting the Toolkit from Linux to UnixWare, and the GUI was placed on hold. Sujit Kuma returned full-time to the Professional Services work. Jack Richards continued with marketing support until resignation at the end of April 2003 to form GNU Solutions Limited http://www.gnu-solutions.com.
The OS features were successfully added to UnixWare. The Smallfoot Toolkit had missed the alpha milestone, and with nothing to show 6 weeks before the beta milestone, the engineering management has canceled the project. The Smallfoot Engineering department was disbanded, with employees returning to their original departments. To salvage the remains, Sergey Babkin was offered the position of Smallfoot Toolkit architect, as an one-man team in the OS Engineering department (with testers added later). Andy Nagle continued providing the project management and marketing guidance.
During the work on the Linux version of the toolkit, Sergey Babkin was convinced that the task was better suited to a scripting language, as opposed to C++. As a proof of concept, he spent a day writing a basic version of the toolkit in a shell script that implemented the full cycle from configuration file to a bootable image, with very minimal configuration options. The idea never flew but the script found its use in creation of the images for testing the boot loaders, as the proper kernel build portion of the Linux toolkit was never delivered.
After cancellation and rebirth of the project, C++ and XML were ditched with all the existing code base. The scripting version became the foundation of the redesigned toolkit. The scope of the deliverable was scaled back to alpha. The development of alpha was completed in the remaining six weeks and demonstrated to the SCO executive team in November 2003.
The general configuration language was added in the beta version. The formatting of the language drew heavily on Tcl. The toolkit was expanded to include extensive configuration of many parts of the system, JavaPOS library, newly developed drivers for Point-of-Sale (POS) devices and a POS application. A complete POS terminal developed with the Smallfoot Toolkit release 1.0 was demonstrated at SCO Forum 2004 in Las Vegas. The further development, including GUI, was shelved until the sales of the command-line version of the toolkit pick up and provide a revenue stream.
The Smallfoot Toolkit product went onto the SCO price list in July 2004. The minimal bundle was priced at approximately $35K and included the Toolkit, UnixWare license for the development machine running the toolkit, 500 deployment UnixWare licenses for the generated images, 10 hours of support. Larger volumes of the deployment licenses provided extra per-license discounts. None were ever sold and eventually the product was discontinued.
In early 2006 an opportunity to sell Smallfoot Toolkit had resurfaced. Sergey Babkin (who left SCO in late 2004 to pursue consulting opportunities) was contracted to continue with the GUI development. However the sales opportunity went away quickly and the product was cancelled again.
At mid-2009 the general configuration language used in the toolkit still appears to be state of the art, compared to the other toolkits for generation of the small-footprint OS images.
It should be noted that the initial Richards/Clark versions of the Linux OS Cutter were actually BASH/XML based, however due to the nature of shell scripts easy inspection and respective copyright issues it was felt that C++ would be a better vehicle on which to provide - what were at the time - cutting edge concepts and technologies.
The first customer
The first Smallfoot customer was BudgensBudgens
Budgens Stores Ltd is a chain of foodstores in the United Kingdom. It was founded in 1872 by John Budgen, who opened the first store at Maidenhead, Berkshire. Budgens supermarket chain operates over 227 stores and employs over 6,000 staff...
Supermarkets. Budgens, a part of the Musgrave Group
Musgrave Group
The Musgrave Group is a major Irish food wholesaler, founded in Cork by the Musgrave brothers, Thomas and Stuart in 1876. Musgrave Group has become Ireland's largest grocery distributor. Today, the Group has operations in Ireland, United Kingdom and Spain. Musgrave is the largest private company in...
, were looking to implement Linux at their point of sale systems and UK VSP PCMS group wanted a Linux platform on which to integrate Beanstore http://ir.sco.com/ReleaseDetail.cfm?ReleaseID=99268.
Andrew Bourke was in charge of the Beanstore initiative at PCMS and provided input to SCO regarding PCMSs' specific needs. Smallfoot grew through this input, incorporating JPOS driver stack and JVM 1.3 (Sun) support.
Luke Trevorrow - IT operations Manager at Budgens, under Garry Barr then IT Director, was a key proponent of Open Source technology and acted as a key advisor to SCO on the Smallfoot project.
" As a supermarket, we [Budgens] were keen to reduce cost structures associated with our retail estate, then Microsoft based. We evaluated the alternatives and with the help of SCO,later GNU [Solutions Ltd] we found a solution that could potentially meet our needs.
In all, we invested heavily in the development cycle of retail hardened Linux and saw some significant benefits. Over the life cycle of the retail systems running Linux we had less than 5 field failures in 5 years, that with an estate of 800+ POS systems.
At the time, we took a big leap forward in the [retail] industry, no other retailer of a size anything like ours were using Linux, let alone in the store Estate. But having been involved in other Open Source initiatives beforeWarfare JWebChart , I had faith that Linux was going to be the right choice.
From this early, controversial start Budgens Spurn Microsoft we eventually took the Open Source approach further saving thousands CA and OSS,enable Budgens to save 375,000 GBP " - Luke Trevorrow (Application Architect - IBM)
The first OEM to re-sell Smallfoot - almost...
In 2002, David Taylor, Larry Gasparro, Jack Richards and Avinash Verma lead a delegation from SCO to the IBM RSS group in North Carolina.IBM was represented by Jim Budd, Tammy Garneax, Beth-Anne Vaughn, Mike Paolini, Rick Puetzer and ultimately General Manager of IBM RSS Worldwide, Tom Petersen.
The aim of the meeting was to get IBM to resell Smallfoot as the core of its ROLO offering. After many meetings, including a visit to the Austin Texas HQ, IBM was all but set to go forward and sign, however at the last minute SCO had a change of direction and decided to take IBM to court over Linux instead (April 2003).
Smallfoot derivatives
Whilst not based on any of the codebase of Smallfoot, Gazelle from GNU Solutions was the next Retail Hardened OS developed by Richards and in many ways represents what SCO Smallfoot could have been.GNU Solutions was founded by Jack Richards, James Hall and Chinyanta Nkonkomalimba in 2003 to build the next generation Linux POS platform Gazelle (r), used in Budgens and Krispy Kreme in the EU, packaged with PCMS Vision Beanstore.
The Gazelle toolkit was a complete self-hosted environment that built a complete two-stage operating system from a TCL menu system. It was the first 2.6.0 commercially produced Linux operating system.
Gazelle is no longer sold or supported and GNU Solutions has been sold to a third party, its web site is still extant at http://www.gnu-solutions.com but no longer provides support or sales to the public.
Potential GPL violation of Smallfoot
Smallfoot was a complete Linux distribution developed from OpenLinux and other GPL code.Source code was originally distributed from the SCO server psint.sco.com and later psint.caldera.com.
Neither servers are available today and whilst there may still be active users of the original Linux code base, there is no visibility of source code, nor after requests for it from SCO any offering of code base.
Technical specifications - Linux version
Linux Kernel: 2.4.10 and 2.6.1 with Linux Progress PatchGlibc based
RAM Footprint: 32MB
Disk Footprint: 8MB through 128MB
Minimum Boot Media Footprint: 1.44MB basic functionality, 8MB with X11.
CPU Supported: Intel Pentium, Pentium II, Pentium III and Celeron, Winchip C6,AMD K5, K6, Athlon
Tested POS Platforms: Wincor Beetle i815, IBM SurePOS, Toshiba TEC
Base OS: Linux, based on OpenLinux from Caldera Systems
Notes: Many of the binaries used in Smallfoot came from OpenLinux 3.1, however these were object stripped using the object copy and strip program.
Technical specifications - UnixWare version
Base OS: UnixWare 7.1.3, upgradeableMinimum RAM Footprint: 32MB with disk-based root filesystem, 64MB with RAM-based root filesystem
Minimum Boot Media Footprint: 1.44MB basic functionality, 16MB with X11 graphics
Boot Media Supported: disk, CD-ROM, floppy, USB flash stick, network PXEBOOT
CPU Supported: i486 and later
Tested POS Platforms: Wincor Beetle i815, HP POS, Dell POS