General Development Archive

An Approach to Solving the “Device Driver Crisis”

This whitepaper published at LinuxDevices describes an approach to solving the "device driver crisis" that plagues both the embedded and non-embedded computer system markets. SciTech, the developer of the "System Neutral Access Protocol" device driver architecture ("SNAP"), says the SNAP approach to device driver development is radically different from traditional methods, and can drastically reduce the complexity of OS- and processor architecture-related device driver support.

Igor Searches for Programming Errors

Prof. Andreas Zeller from the Saarland University, Germany, announced his Tool Igor: "Your program does not work? The 'AskIgor' Web service automatically finds out why. Researchers of Saarland University, Germany, have started a Web service that automatically finds out the causes for program failures – automatically, quickly, and for free. At www.AskIgor.org, programmers may submit buggy Linux programs; Diagnosis tools for Java and Windows programs are underway." Read more here.

Build a grid application with Python, Part 2: Communication

Grid components need to talk to each other. The distributor needs to talk to the grid providers, the providers need to talk back, and clients and management tools need to talk to the distributor and providers. Providers may need to talk to each other, or they may need to look up information from another machine to determine information or status information from the grid. In this tutorial the author looks at ways to handle communication in a Python grid framework, from the basics of the TCP/IP system to the simplified, externally managed e-mail solution.

XAML: Create Real Apps Using New Code and Markup Model

The new presentation subsystem in the next version of Windows, code-named "Longhorn," offers powerful new capabilities to developers. This new subsystem, code-named "Avalon," allows developers to take advantage of its capabilities through a language—Extensible Application Markup Language (code-named "XAML"), as well as through modern object-oriented programming languages such as C#. Because most applications written to Avalon will probably be a mix of XAML and programming code, this article discusses XAML tags used to control page layout along with the procedural code written to respond to events.

From Monolithic to Grid: a Brief History of Computing

How did we get from there to here? The history of computing is marked by ages. In each age, the basic design of how we work with computers changes. Many people probably think we're in the brave new Internet age at this time, but considering the nature of computing, we're likely just at an intermediary stage. We're just now peeking into the next age -- the age of the truly distributed computing system --the coming of the grid.

Debugging with Strace

"In an ideal world, whenever a program cannot perform a function it exits with a useful error message, giving you enough clues to fix the problem. Unfortunately, we do not live in an ideal world -- at least, not all the time. Sometimes when an application encounters an error, you are none the wiser." Read the article at DevChannel.org by Gerard Beekmans.

ActiveState announces Visual XSLT 2.0

ActiveState today announced the release of Visual XSLT 2.0 at the Microsoft PDC. Visual XSLT 2.0 addresses customer's demands for a flexible debugger and a Visual Schema Mapper. The Just-In-Time de-bugger doesn't need source code and automatically senses and debugs code; it is the first of its kind for XSLT. The solution also includes a Visual Schema Mapper that has "drag and drop" functionality.

Linux: Journaling Filesystem Shootout

"Mike Benoit recently posted a link to results from his new and improved file system shootout, using better hardware and running more tests. Using two benchmarks that are designed to measure hard drive and file system performance, Bonnie++ and IOZone, he's compared a number journaling filesystems found in the 2.6 kernel." Read the report at KernelTrap and the actual benchmarks here.

LLVM 1.0 Release Available

LLVM is a new infrastructure designed for compile-time, link-time, runtime, and "idle-time" optimization of programs from arbitrary programming languages. LLVM is written in C++ and has been developed over the past 3 years at the University of Illinois. It currently supports compilation of C and C++ programs, using front-ends derived from GCC 3.4. New front-ends are being written for Java bytecode and CAML.