General Development Archive

Memory Hierarchy in Cache-Based Systems

This article at InformIT (free reg. req.) will help the reader understand the architecture of modern microprocessors by introducing and explaining the most common terminology and addressing some of the performance related aspects. Written for programmers and people who have a general interest in microprocessors, this article presents introductory information on caches and is designed to provide understanding on how modern microprocessors work and how a cache design impacts performance.

GCC Myths and Facts

"Since my good old Pentium 166 days, I've liked to search for the best optimizations possible so programs can take the maximum advantage of hardware/CPU cycles. If I have a nice piece of hardware, why not run it at its full power, using every little feature? Shouldn't we all try to get the best results from the money invested in our machines?" Read the article at FreshMeat.

Fair Queuing Disk Schedulers

Following the recent release of an anticipatory IO scheduler, Andrea Arcangeli started a lengthy thread in which he proposed an SFQ (Stochastic Fair Queuing) disk scheduler. The idea was picked up by Jens Axboe who had evidently worked on a similar idea earlier. Jens quickly posted two different disk schedulers utilizing "fair queuing" algorithms, more commonly used in handling network traffic. Read the full story at KernelTrap.

The New BFS (Brendan File System)

File systems need to change. Current file systems are horribly out-of-touch with the realities of what users need to effectively find, organize, and modify their vast quantities of files. Unfortunately, no major consumer OS vendor (Microsoft, Apple, various Linux distos, etc.) has had the foresight, the will, and most of all, the cajones to implement anything more elaborate than a small departure from the standard hierarchical name-space which we all grew up on and should rightfully deplore. Worst of all, the best suggestions for changing the current entrenched standard are incredibly toothless, incredibly feeble.

Introduction to PyObjC

Some programmers see the advantage of combining Python and Objective-C in the same environment, believing that a bridge between the two languages provides tremendous power and advantages to either language. For the Objective-C developer, access to Python provides a rapid application-development solution that's far more efficient than one requiring a compiler. For the Python developer, transparent access to Objective-C would allow the developer's scripts to leverage the full power and elegance of the MacOSX environment. In this article, Bill Bumgarner shows you how to bring these worlds together.

Rebol to be Released for MacOSX

REBOL Technologies today announced its plan to expand development and support for the Apple Macintosh OS X operating system. Beginning with OS X Jaguar (version 10.2), REBOL will port its entire line of products, including View and Pro products as well as Command, SDK (Software Developers Toolkit) and IOS (X Internet Operating System).

Software Strategies for Emerging Developers

"Software is big business. Every year, consumers spend over a hundred billion dollars purchasing shrink-wrap software. For you as a developer, shareware is a cheap, effective means of marketing and distributing your software. Shareware lets the public redistribute your software for free, then pay a registration fee if they like it. Today, nearly all software companies provide some form of free trial version of their software." Read the article at MacDevCenter.

Cross-Platform Packaging Facility OpenPKG 1.2 Released

The OpenPKG project released version 1.2 of their unique RPM-based cross-platform Unix software packaging facility. OpenPKG 1.2 provides 361 selected packages which include proven versions of popular Unix software -- all carefully packaged for easy deployment on the six officially supported Unix platforms FreeBSD 4.7 and 5.0, Debian GNU/Linux 2.2 and 3.0, and Sun Solaris 8 and 9.

Excuse Me While I Reboot My Dishwasher

An article in Baseline covers the increasing reliance that everyday appliances have on complex software, and the potentially disastrous results when that software fails. One prominent example of this is the BMW 745i, which has a sort of uber-control joystick that controls a WindowsCE-based system. This system was so buggy that BMW has done two recalls. The software was too ambitious and too poorly tested, so things like the brake lights not working and the units suddenly changing to metric are the result.

Why Automatic Information Management is Doomed to Fail

There has been a growing movement in the computer industry as of late towards exploration of more database-like filesystem paradigms - the reason being that today's filesystems are primitive, scattered, and cannot efficiently manage the immense amount of information that computer users have to work with on a regular basis every day.