Totally random

  • Wanna code faster? Demand that second monitor. And make it a big one.
  • Why Bessie produces more milk than bovine unit #38.
  • Jiminy, that's one big turtle-chompin', gator-eatin' snake.

Fujitsu Jade, virtual gauges, and the Artega GT

I've been blogging about digital instrument clusters as if they're strictly next-gen technology. But the truth is, they've already gained a foothold in some high-end vehicles.

Case in point: The very sleek and very desirable Artega GT. It uses digital gauges powered by the Fujitsu Jade SoC, a processor that supports QNX's digital cluster software. (I don't know what software the Artega uses, btw.)

According to Fujitsu, the Artega GT cluster has "one large central mechanical gauge with all the other instruments rendered graphically by Jade and projected onto the LCD. This requires a [graphics] controller able to produce sophisticated 3D graphics -– right down to the shading around instruments -– to make them look like a mechanical gauge."

The following image gives you an idea of what Fujitsu is talking about:

It's hard to tell from such a small photo, but the gauges do indeed look more mechanical than virtual. To enable this trompe-l'œil, the Jade integrates several features, including a rendering engine for 2D/3D graphics acceleration, a geometry processor for smooth graphics animation, and support for 6 independent graphics layers.

The multi-layer support is key. For instance, it allows the system to render speedometer needles on one graphics layer while rendering the speedometer background on another layer. As a result, the graphics controller can redraw the quickly moving needles without having to continually redraw the entire speedometer. The result is a flicker-free display.

Having a modular, memory-protected operating system like QNX Neutrino also helps. For instance, it allows a user-space process to render the needles in OpenGL ES (a 3D API) while a separate process implements the background graphics in Adobe Flash. This approach ensures that the needles will continue to operate even if a failure occurs in a Flash-based component.


QNX digital instrument cluster adds dash to Freescale Mad Mac vehicle

A couple of months ago, I introduced you to the QNX digital instrument cluster, which demonstrates how automakers can migrate from mechanical gauges driven by stepper motors to virtual gauges driven by microprocessors and graphics chips.

Well, I just discovered that the QNX digital cluster forms part of Freescale’s "Mad Mac," a concept car designed to showcase Freescale automotive silicon. The Mad Mac includes, among other things, an external combustion engine with a clear acrylic block -- reminds me of the Visible V8 that I always wanted as a kid.

Check out this video on the Mad Mac; the QNX digital cluster makes its appearance at the 3:25 remaining mark and in the closing frames of the video:


Totally random


Multi-core performance boost: Does it stop at four cores?

Several years ago, I asked a colleague whether the QNX Neutrino SMP kernel could scale beyond 8 processors. Can't remember the answer (I think it's 32), but I do remember my colleague commenting, "But it doesn't really matter, since, practically speaking, 4 processors is the upper limit for SMP." (This was back in the day when SMP systems typically consisted of multiple discrete processors on a board, rather than multiple processing cores on a chip.)

Fast forward to last Tuesday, when the Sandia National Laboratories (SNL) published the results of a study on multi-core scalability. According to SNL's announcement, multi-core systems show a significant increase in speed when scaling from 2 to 4 cores, an insignificant increase in speed when scaling from 4 to 8 cores, and a decrease in speed when scaling beyond 8 cores.

Why such poor results beyond 4 cores? The culprit, according to SNL, is insufficient memory bandwidth: too many cores "asking for memory through the same pipe."

In a blog entry posted earlier today, Clay Breshears of Intel says he isn't surprised, since the problem of having multiple cores share a single memory pipe is well known. He questions, however, whether the poor results could also be the outcome of how SNL's software algorithm was implemented.

SNL doesn't get into details about their methodology, so indeed, it would be interesting to see if different implementations of the same algorithm yield different results.

How about it, SNL?


Do you support a complete ban on cell phones in cars?

I'll admit it, I'm biased. I work for a company (QNX) whose software is used in millions of automotive handsfree systems. So I have a personal stake in the handsfree market. Having said that, I have a hard time with laws that would ban all cellphone use in the car, including handsfree calls. Yet that's exactly what the US National Safety Council (NSC) is asking for.

Don't get me wrong. I think you should eliminate every possible distraction when driving. If you don't need to talk on the phone, be it handheld or handsfree, then don't. Keep your mind focused on the road instead. Because, hey, my wife and son are on the road, too.

Still, a handsfree system has some definite advantages over a handheld phone. For one thing, it lets you drive with both hands. And it doesn't force you to take your eyes off the road. So I don't see how legislating handsfree systems out of existence is the best possible solution.

Are government agencies justified in worrying about cell phone use, both handheld and handsfree? You bet. The freedom to call your girlfriend while driving along a busy street must take second place to ensuring that you don't kill someone in the process.

I'm questioning, though, whether a complete ban is the right way to go. Zero-tolerance solutions tend to ignore the fact that a healthy society must achieve an optimal balance between freedom, responsibility, and risk.

What do you think? A total ban? A ban for certain devices, situations, or drivers? For instance, should laws allow adults to use handsfree systems only, while forbidding teenagers from making any kind of phone call? Would it help if drivers had to take a course on responsible use of handsfree systems?


Totally random

  • Hard drive too slow? Then stop screaming at it (thanks JM)
  • Who needs Bluetooth when you've got Cell-Mate?
  • Holy rubber duckies, it’s the Superior Bathomatic!


Top 25 programming errors - and how to avoid 'em

Earlier today, the SANS institute published a list of the 25 "most dangerous" programming errors. The language in the press release is a little overblown (for example, "Shockingly, most of these errors are not well understood by programmers"), no doubt to attract the attention of reporters looking for a juicing story. The good news is, the announcement isn't all marketing fluff. It also provides detailed information on how to identify and avoid all the errors listed.

For instance:

1. Click here to open the announcement, then scroll down to "CWE-20: Improper Input Validation."

2. Click on "MORE" to view a summary of the error, including consequences, ease of detection, remediation cost, etc.

3. Click on "CWE-20" at the top of the summary to see examples of the error in Java, C, PHP, etc.

To compile the list, SANS enlisted the help of experts from Symmantec, RedHat, the Department of Homeland Security (DHS), the National Security Agency (NSA), the University of California, and other organizations.

What about you? Do you think the list is on the money? Or do you think the experts missed some key vulnerabilities -- or perhaps overestimated others?


Have headlight, will incubate

Hey, have you ever heard of the Red Green show? If you haven't, it was a Canadian television comedy that aired from 1991 to 2006. The title character, a plaid-shirted handyman who believed duct tape could fix just about anything, had a hilarious talent for creating low-tech solutions out of old junk. Want electric windows for your truck? Just use the motor from a kitchen blender. Want to motorize your bicycle? Just attach an old chainsaw, and you're ready to roll.

In one of his zaniest episodes, Red Green built a heart-lung machine out of an old windshield washer pump. Crazy, right?

Well, maybe not. Cimit, a nonprofit consortium of Boston teaching hospitals and engineering schools, is promoting a project that builds baby incubators out of -- you guessed it -- old car parts. Used headlights, for instance, offer a cheap and readily available heat source.

Why would anyone do this? Because in many poor countries, conventional incubators are simply too fragile and too expensive to maintain. A car-part incubator, on the other hand, can be repaired with parts from the local junkyard. And it's a lot cheaper to make: $1000 compared to the $40,000 for conventional incubators.

How important is this project? Cimit claims it could prevent millions of newborn deaths in the developing world.

Red Green would be proud.

For more information and discussion on this project, read the articles here, here, and here. Also, check out the website of Design That Matters, the nonprofit firm that designed the machine.


Get your QNX news directly from the source

If you haven't yet subscribed to the "QNX Source" newsletter, I suggest you give it a try. The newsletter comes out only once a month (so it won't plug up your inbox) and provides the skinny on new source-code releases, software patches, BSPs, webinars, etc. -- stuff that, as a QNX user, you might actually find useful.

To subscribe, click here.

What I like about the newsletter is that it focuses mostly on the facts, without a lot of marketing blather. For instance, the first few lines of the December issue look like this:

New BSPs for the QNX Development Platform 6.4.0:
> Freescale i.MX31 PDK

> Freescale Lite5200B and Media5200
> Freescale MPC8548 CDS
> Freescale MPC8360E MDS
> Fujitsu Jade EVB
> Texas Instruments DM644x EVM
> Texas Instruments DM355 EVM
> Texas Instruments OMAP 5912 OSK

Like I said, more facts than hype. So it's pretty easy to pick out what's useful.

Disclosure: I've worked on the last few issues of the newsletter. So if you have any feedback, let me know, and I'll pass them on to the newsletter team.

QNX raises the heat in Alcator C-Mod fusion reactor

In late 2008, researchers at MIT demonstrated for the first time that radio waves can help control the flow of plasma in a fusion reactor. Using a dipole antenna, the researchers emitted several million watts of radio waves to break up the plasma turbulence that, until now, has plagued fusion research.

Why is this a big deal? Well, to produce fusion reactions, you have to make plasma very hot and very dense. To help achieve the necessary level of heat in their Alcator C-Mod reactor, the MIT researchers use high-power microwave systems controlled by the QNX RTOS. Just one problem: as you increase heat and pressure in a fusion reactor, you also create plasma turbulence. The plasma cloud becomes unstable and loses the heat needed to maintain a fusion reaction.

According to Popular Mechanics, “plasma turbulence… is the biggest obstacle to fusion... preventing the kind of long-term reaction necessary for true power production.” Thus, the fact that MIT researchers have successfully used radio waves to propel plasma represents a milestone in the long road towards building commercially viable fusion reactors. (I say “long” because most experts believe it will be another 30 or 40 years before such reactors come online.)

Fascinatingly, Yijun Lin, the MIT physicist who co-developed the radio-wave method, states that there still isn’t a satisfying theoretical explanation for why the method works. But the fact that it does work suggests that, after decades of research, a controllable method for propelling plasma has finally been found.

The Alcator C-Mod reactor isn’t the only MIT fusion project that uses QNX technology. In November, I described the LDX project, which uses a QNX-controlled system to magnetically levitate a superconducting torus in a fusion reactor chamber. The torus generates lines of magnetic force similar to those that surround the Earth, Jupiter, and other magnetized planets. The reactor then uses pulses of microwave heating to create plasma discharges, which the torus holds in place.

The C-Mod and LDX projects represent two different approaches to fusion reactor technology. The C-Mod is a tokamak; the LDX, a levitated dipole. To find out more about these technologies, check out the MIT's Plasma Science and Fusion Center (PSFC).