News Archive (1999-2012) | 2013-current at LinuxGizmos | Current Tech News Portal |    About   

A developer’s review of MontaVista’s Hard Hat Linux SDK (Part 5)

Oct 11, 1997 — by Rick Lehrbaum — from the LinuxDevices Archive — 6 views

Other observations

The kernel currently provided with Hard Hat Linux is 2.4.2. Upgrading should not be a problem; simply replace the current kernel source tree with the new one. This is one area where Hard Hat's loose integration works to its advantage.

Hard Hat contains a Library Optimizer Tool (LOT) intended for minimizing the size of a target build by analyzing included shared libraries and removing those symbols that are not used in any target applications. This might be compared to Lineo's Lipo. But unlike Lipo, LOT requires for each supported library a package containing information about that library. This package, further, is specific to the target architecture and processor. Glibc 2.2.3, for example, requires a package called hhl-x86_pentium-glibc-libopt-2.2.3-hhl2.0.5 for a Pentium target. Currently, Hard Hat provides library optimization packages for glibc and ncurses. The dependence on library optimization packages severely limits the applicability of LOT, though MontaVista gets extra points for recently opening the source to LOT. Perhaps over time we can hope to see LOT's applicability expanded as MontaVista and others improve it.

Another sparsely documented area of Hard Hat concerns how to integrate one's application into the build process. No procedure for creating a package and integrating it with TCT is provided, and given TCT's minimal dependency checking, such an effort would probably provide little advantage in any case. Probably the most practical approach to take (without completely dismantling Hard Hat's workflow and reconstructing it in your own way) is to build the target in TCT as documented, untar the resulting image file in a temporary directory, add your application to that directory, and retar the image. Again, one searches the documentation in vain for guidance on application deployment.

Unique embedded application support

Hard Hat's strength lies not in its user friendliness, which, as we have seen, provides little improvement over standard Linux tools for configuration, building, and use. Instead, MontaVista has emphasized the addition of features useful to embedded systems, especially high-end systems. Much of this work demonstrates MontaVista's expertise with the Linux kernel.

Some of the more interesting new features are . . .

  • Hard Hat Net — a PCI backplane communication protocol, implemented as a complete TCP/IP protocol stack. This is intended for optimizing communication among multiple processors on a backplane.

  • Real-Time Scheduler — implements a separate ready list for each task priority level. MontaVista contends that this modification allows for faster insertion and scheduling of tasks.

  • Preemptible Kernel Patch — this Linux kernel enhancement leverages SMP support within the Linux kernel to make the kernel preemptible. This is one of the more interesting and controversial efforts underway to add real-time support to Linux. If it works (and MontaVista has reported considerable success with it), this approach may prove quite popular, as it relaxes some of the confusing API and userspace/kernel restrictions that characterize RTLinux and RTAI and lends itself to use on a wide range of Linux systems deployed in embedded, server, and desktop environments.
Continued



Story navigation . . .

 
This article was originally published on LinuxDevices.com and has been donated to the open source community by QuinStreet Inc. Please visit LinuxToday.com for up-to-date news and articles about Linux and open source.



Comments are closed.