3/28/2010

30 years of QNX: Chunnel train drivers gear up with QNX-based simulators

It was the early 1990s, and the folks who built the Channel Tunnel (aka the Chunnel) had a problem. To make the Chunnel commercially viable, they had to reach a goal of 1200 train crossings per day. But to do that, they needed lots of train drivers. Which meant they had to train lots of train drivers.

Being a Chunnel-train driver isn’t easy. You have to work equally well in English and French. You have to be ready at a moment’s notice to execute a variety of emergency procedures in case of fire, breakdown, or accident in midtunnel. And you have to embrace the notion of driving 100 miles per hour through a 31-mile tunnel that lies 330 feet below the sea bed. Claustrophobics need not apply.

So how were the folks running the Chunnel going to train enough drivers to handle all that? Not by using the tunnel itself, since it would be open for business 24 hours a day.

The solution was simple: use simulators. After holding international competitions in 1991, the chunnel folks chose a French firm, EBIM, to provide QNX-based simulators for the Eurostar, C92, and Le Shuttle trains.

Here's a photo of a reporter taking the EBIM simulator for a virtual drive, circa 1993. I know it's hard to believe, but photojournalists were still shooting in B&W back then:



What led EBIM to choose QNX? Allow me to quote Philippe Rose, who worked for EBIM at the time:

"We chose QNX because it was the only PC-based realtime OS that came ready with all the facilities — windowing tools, realtime functions, networking — that would allow us to achieve our design goals.

"Our first major goal was to make the simulator easy to operate. Because most instructors aren't familiar with computers, we wanted to provide an intuitive GUI interface, preferably one that used a touchscreen.

"We also wanted to develop software that could evolve easily as specifications are updated. When we first started working on the simulators, none of the trains existed. What's more, safety procedures and characteristics of rail lines were still changing.

"Finally, we wanted to achieve the fastest response times possible so that simulations would be realistic. When a trainee pulls the horn, it must sound without delay. Pressure indications and cabin movements must change immediately when he brakes. The synthetic images used by the visual system also require a high refresh rate--a new train position must be provided every 40 milliseconds (i.e. 25 images per second).

"QNX let us achieve these goals easily. First of all, creating interface prototypes with the Interface Editor took very little time, even though we had no previous experience with windowing systems.

"And the software architecture we created not only adapts easily to evolving specifications but even helps us make the most of QNX's fast response times. For example, during the integration phase of a simulator we sometimes boost performance by adjusting the initial distribution of processes. Doing this is easy since QNX processes are inherently network distributed — whether two processes exchange messages on the same node or across the network, the code is exactly the same."

3/23/2010

30 years of QNX: A true windowing system in 2MB of RAM

QNX Windows made its debut in 1990, back when most desktop PCs still used DOS. Amazingly, it could run on 16-bit 286 machines in just 2MB of RAM — and we're talking a true windowing system, not a simple graphics library.

Developers used QNX Windows for a variety of mission-critical applications, including mail-sorting machines for the US Postal Service and a statistical process control system for a Motorola semiconductor fab. In fact, a few of these systems, first deployed in the early 90s, are still running.

The look-and-feel for QNX Windows was based on the OPEN LOOK standard, which embraced the notion that the application, not the windowing system, should be the focus of the user's attention. As a result, the overall look was clean and unfussy —even the color palette was self-effacing.

Here, for example, is a dialog window from the QNX Windows file manager (sorry, I don't have a color version available):


Click to enlarge

Several years after its introduction, QNX Windows was replaced by the QNX Photon microGUI — more on that in a subsequent post. In more recent years, QNX expanded its GUI offerings yet again, with support for Adobe Flash Lite and hardware-accelerated 3D graphics based on OpenGL ES. The company has even won an Adobe MAX award for bringing Flash-based GUIs to the automobile.

What, you want me to draw the screen captures!?
I wrote the user guide for QNX Windows. Unfortunately for me, no one had yet developed a screen-capture utility for QNX Windows, for the simple reason that the windowing system was still under construction. So I had to create all the screen illustrations in Corel Draw instead.

Using Rundos, a DOS emulator, I drew the images on my QNX-based 386SX desktop machine, which then saved the files to a hard drive installed on a remote 286 machine. QNX distributed processing allowed the machines to share resources in peer-to-peer fashion. It was kind of like cloud computing, but without the cloud. :-)

3/21/2010

30 years of QNX: "You sure this will be big enough?"

In June 1987, QNX Software Systems stopped being a tenant and moved into its own bought-and-paid-for headquarters.

Here are the company’s co-founders, Dan Dodge and Gord Bell, cutting the ceremonial ribbon:



The building worked out fine — for a while. Problem was, the company kept growing. So Dan and Gord hired a contractor to extend the original one-story structure. Pretty soon, that wasn’t enough, so they built a two-story extension. That still wasn’t enough, so they built another two-story extension. Even that wasn’t enough, so they added a whole new building to the mix.

Eventually, the company had enough buildings and everyone was able to get back to work.

Here is the second two-story extension, aka Phase 3, under construction:



And here’s the new building, aka Phase 4 — did I mention it snows about 6 months a year in Ottawa?

3/17/2010

QNX extends automotive lead with 17+ million software licenses

This just in: QNX announced this morning that its technology has been licensed for more than 17 million in-vehicle systems — an increase of 130 percent since 2008.

More than 200 vehicle models now ship with QNX-based infotainment and telematics systems. Moreover, the QNX CAR application platform now has 60+ participants, including 17 automotive OEMs and 26 automotive suppliers.

For details, check out the press release.

3/16/2010

LTE Connected Car shortlisted for CTIA emerging technology award

“So you want to submit your wireless device to our awards program. Can we see it?”

“Well, actually, I don’t have it on me.”

“Oh, that’s too bad.”

“Not really.”

“What do you mean, not really?"

“Because I drove here in it.”

The LTE Connected Car demonstrates how a combination of QNX technology and 4G mobile networks is poised to transform the driving experience — a combination that will, in effect, redefine the “mobile” in automobile.

I’ve discussed the LTE Connected Car many times in this blog, so I won’t blabber about it today. I will say, however, that the CTIA emerging technology awards program has just shortlisted the LTE Connected Car in two award categories. In fact, you can even vote for the car should the fancy take you. (That's a hint.)

To vote for the car in the “Mobile CE - Fashion & Lifestyle Product” category, click here. To vote for it in the “Mobile Applications - Health/Public Safety/Transportation” category, click here.

In either case, simply log in with your e-mail address and click "Mark as Favorite".

3/12/2010

30 years of QNX: Holy terabits, Batman!

If you’ve been following this blog series on the history of QNX, you’ll know that I’m still making my way through the 1980s. So I hope you don’t mind if I temporarily leap ahead 20 years — I was going to post this story when we got to 2004, but something happened last week that made me change my mind.

Confused yet? Well, brace yourself. Because this story really begins in 1998.

In 1998 QNX Software Systems released a self-booting demo that squeezed the QNX operating system, a windowing system, a web browser, a web server, some games, and lots of other goodies onto a single 1.44M floppy. Millions of people took this demo for a test drive, including a developer from Cisco who was impressed by the operating system’s elegance and efficiency.

So did he immediately tell his colleagues at Cisco to look into this cool OS from QNX? Nope, not a chance. Because at the time, the QNX OS worked only on x86 systems.

Little did he know that QNX engineers were working on a spanking new version of the QNX OS — a version that could run on multiple processor architectures, including those used in Cisco’s networking equipment.

Fortunately, he expressed his frustration to an acquaintance at QNX Software Systems, who immediately told him about the new OS. One thing led to another, and on May 18, 1999, QNX Software Systems announced it had been chosen as Cisco’s preferred realtime operating system vendor.

After that, things went quiet — until 2004. That’s when Cisco unveiled the CRS-1, the highest-capacity Internet router ever developed. How high? Enough to handle up to 92 trillion bits per second, which is equivalent to all the Internet traffic of a single mid-sized country. Or, as my colleague Andy Gryc likes to put it, enough to squirt out 18,000 CDs per second.

As you no doubt suspect, the CRS-1 is controlled by the QNX operating system. More specifically, the router’s IOS XR software, which manages hundreds of parallel processors, is based on a straight, unmodified QNX Neutrino microkernel and QNX transparent distributed processing.

So why am I talking about this now? Because Cisco has just unveiled the new CRS-3, which has triple the capacity of the CRS-1 — 322 trillion bits per second.

How much is that? Enough, according to Cisco, to download the printed collection of the Library of Congress in just over one second. (One assumes that the collection would have to be digitized first.)

Considering that my web browser has a hard time downloading a single web page in one second, I’m impressed. Holy terabits, indeed.

Automotive electronics are (not) the problem

Is it just me, or do people need to feel terrified of something? A couple of years ago, it was BPA in plastic bottles. Today, it's software and microelectronics in cars.

If recent headlines are anything to go by, in-car microelectronics are wreaking havoc on our highways. Toyota is bearing the brunt of this media frenzy, even though a Carnegie Mellon professor has calculated that walking a mile is 1,900% more dangerous than driving a mile in a recalled Prius.

I'm not trying to whitewash anything here. If any auto manufacturer has quality control problems, they need to address them, period. I'm just saying that folks need to focus their fears on something else. Because research suggests that automotive microelectronics are saving lives, not taking them.

According to the National Highway Traffic Safety Administration, less than 34,000 people died on U.S. roads in 2009 — a record low. In fact, automotive-related fatalities and serious injuries are at their lowest in 49 years.

This improvement can be traced to many factors, including increased seat-belt use and a crackdown on drunk driving. But microelectronics-based systems also play a role. For instance, electronic stability control systems (ECS) — which can be found on many cars, including Toyotas — save an estimated 5300 to 9600 lives annually, according to the NHTSA and IIHS.

Check out Rick DeMeis on TechBites, who provides a table showing the contribution of ECS and other microelectronics systems to vehicle safety. And while you're at it, check out Andy Gryc's post, "Toyota's woes: why simplistic solutions are dangerous".

Thanks to Jason Clarke at Crank Software for pointing me to the NHTSA report.

3/10/2010

30 years of QNX: Life before PhotoShop

Behold the cover of the first QNX product brochure, published back in 1982:


Click to enlarge.

Now I know what you’re thinking: What’s with the product name? Where did those vowels come from?

The name stood for “Quick Unix,” even though QNX (um, QUNIX) was not a UNIX derivative. The name was coined to suggest that the operating system offered the reliability and programming interfaces of UNIX, but with decidedly better performance.

It sounded like a good idea until AT&T, who owned the UNIX trademark, got wind of it. Their legal folks immediately fired off a letter, asking QNX Software Systems (then called Quantum Software Systems) to cease and desist.

The solution was elegant: remove the vowels. And ever since then, QNX has had two accepted pronunciations: cue-nix, or cue-en-ex. Your choice.

What’s with the bar chart?

Now that we've cleared that up, look again at the photo and direct your gaze to the monitor on the left. If you look closely, you’ll see that the bar chart is distinctly askew.

Back then, PhotoShop didn’t exist, so someone had to physically glue the bar chart directly onto the monitor. And for the same reason, nobody could correct the image once the error was noticed, without redoing the photoshoot. And so the image went to press as is.

It was the WYSIWYG era of photography: What You Shot Is What You Got.

3/08/2010

30 years of QNX: The first networked classroom computer

Originally developed in 1983 for the Ontario Ministry of Education, the Unisys ICON educational microcomputer was the first large-scale project based on the QNX operating system. Because networking was an essential requirement, the project provided the incentive for QNX Software Systems to develop its transparent distributed processing, which, 27 years later, remains a distinctive feature of the QNX Neutrino operating system.



These systems had a surprisingly long shelf life. Back in the mid-90s, I visited my son’s school and saw several them in use — more than a decade after they had been deployed.

As to the title of this post, I must admit that I have no evidence to back up the claim. But chances are, this was indeed the first networked classroom computer. And if not the first, then the first to be deployed on a large scale.

After all, how many grammar schools in those days had computer networks? For that matter, how many had computers?

ICON fact file:
  • Processor: Intel 80186
  • LAN protocol: ARCNET
  • Input: Keyboard and trackball
  • Display resolution: EGA
  • Speech chip: TI TMS 5220
  • File server hard drive: 10MB
  • OS for client and server machines: QNX

3/07/2010

30 years of QNX: Breaking the 6 MHz barrier

In the Fall of 1984, QNX Software Systems published its first newsletter. By today’s standards, the headlines, which announce support for local area networks and IBM ATs, sound ho-hum. But in 1984, these announcements fell into the wow category. The AT, in particular, had just arrived on the market, boasting a "supercharged" 6MHz processor.

To younger readers, a 6MHz clock speed may sound painfully slow. It seems IBM thought so too, because they eventually introduced a model that clocked in at a blistering 8 MHz. :-)

Despite the antediluvian processor, the AT version of the QNX operating system was still capable of supporting 11 simultaneous users via modems and terminals. Cool, that.

Click to enlarge.


BTW, QNX still publishes a newsletter, written by yours truly. To subscribe, click here.

3/04/2010

30 years of QNX: Are your ears still ringing?

In researching this blog series, which celebrates QNX’s 30th anniversary in the embedded business, it occurred to me that I should find out what else happened the year QNX was founded.

One clear pattern emerged: 1980 was loud. For example:
  • Mount St. Helens erupted
  • AC/DC released Back In Black
  • Iron Maiden released its debut album
  • The Soviet Union held its first rock festival
What about you? Remember anything in particular from that year? Or are your ears still ringing? :-)

3/03/2010

Smart energy design; not-so-smart newsfeed algorithm

You gotta love automated newsfeeds. Case in point: Yesterday, QNX Software Systems unveiled a new reference design for smart-home energy management systems, and the news was picked up by renew grid (makes sense), ITSforhome (makes sense), and Pharmacy Choice News (what the... ?):


Click to enlarge.

Either the newsfeed algorithm needs tuning, or someone got into the Hydromorphone. Either way, you can get the full story here.

In fact, you can go one better and download the software for the QNX smart energy reference here.

And while you're waiting for the download to, well, download, here's an image of the reference design's main screen:


Click to enlarge.

What my colleagues are up to...

3/02/2010

30 years of QNX: The first OS to support a PC hard drive

Back in the early 1980s, I came across an IBM XT equipped with a "whopping" 10MB hard drive. The drive alone cost $3000, which at the time amounted to one-tenth the average salary of an electrical engineer. I remember thinking, “Who the hell would need a hard drive that big?” Some people are born futurologists; I'm not one of them.

The XT in question used MS-DOS, but DOS wasn't the first OS to support a hard drive on a PC. That honor belongs to QNX, which in 1982 introduced support for a 5MB Davong. If that sounds small, you're right: it's just enough to store a single photo from one of today’s low-end digital cameras.

Supporting a hard drive wasn’t the only first for QNX. It also became the first realtime OS to support 286 protected mode, to offer distributed processing, and to run on a Compaq 386 machine.

The very first commercial version of QNX required 64K of RAM. That's only six one-hundred thousandths of a gigabyte, a gigabyte being the bare-bones configuration of a modern PC. Still, that was "enough memory to run the OS, a shell, and actually compile programs... it was even possible to do a few background chores at the same time, like printing a file.” I'm quoting from a FAQ written by veteran QNX user Mitchell Schoenbrun.

Speaking of Mr. Schoenbrun, here’s a closeup of him holding a pre-release copy of QNX — version 0.433, to be exact. If you attended the QNX 2000 users’s conference, you would have had the rare pleasure of seeing this ultra-early release running in the QNX booth:

3/01/2010

30 years of QNX: The first QNX-based computer

March 2010 marks QNX Software Systems’ 30th anniversary in the embedded business. To celebrate the occasion, I’ve decided to launch an anniversary countdown: 30 blog posts that trace the history of QNX and the computing industry, from 1980 to the present.

After rummaging around the QNX corporate attic, I found just the thing for kicking off this series: photos of the first QNX-based computer.

I don’t have any data on the processor — an 8-bitter, no doubt — but check out the handwired circuit boards and the converted keypunch keyboard. Note especially the hand-drawn labels on the keys.


Click to enlarge.



From the desktop to the factory floor

This hand-assembled computer first came to life circa 1980. At the time, the IBM PC was still an idea brewing in IBM's labs. Development of MS-DOS hadn't even started.

A year later, the landscape had changed. The PC had made its debut, spawning a software industry focused mainly on business and productivity applications. Dan Dodge and Gord Bell, the co-founders of QNX Software Systems, also saw great potential in the PC, but with a twist. Rather than use the PC as a platform for word processing, they had a more mission-critical vision: enabling PCs to control robots, oil rigs, power plants, medical devices, and just about any other system that demanded performance, predictability, and absolute reliability.

At the core of their strategy was the QNX operating system — a multitasking, multiuser, multiprocessing realtime OS based on a message-passing microkernel architecture.

It was a unique approach. And a successful one. Little more than a decade later, over 100 of the Fortune 500 companies — including Du Pont, Kodak, General Mills, General Motors, and Motorola — had come to rely on QNX for their mission-critical applications.

Eventually, QNX Software Systems took the experience it had gleaned from the x86/PC platform and brought it to bear on multiple architectures, including ARM, MIPS, PowerPC, SH-4, and others. As a result, QNX technology now runs in everything from minivans to TV remotes to the highest-capacity Internet routers on the planet. But more on that in upcoming posts…

QNX: A huge part of my life, your life, everyone's life

For almost 30 years, QNX Software Systems has been creating ultra-reliable software for the automotive, industrial, networking, medical, and defense markets. QNX software controls some of the most mission-critical systems in the world (e.g. nuclear plants and laser eye surgery machines) and it also controls systems that are literally out of this world — such as the laser camera system (LCS) on the Space Shuttle.

Chances are, you used QNX software today without even knowing it. It controls automotive handsfree kits, Internet routers, wind turbines, television stations, credit-card transaction services, and millions of other systems that keep the world humming. Whether you drive to work, flip a light switch, watch TV, or download your favorite tunes, you are taking advantage of systems powered by QNX software.

The fact is, QNX technology plays a huge role in everyday life. And this month marks 30 years since it first appeared on the computing scene. To celebrate, I'm about to launch a series of blog posts that trace the history of QNX and embedded market from 1980 to the present.

So stay tuned — it should be a fun ride. And ask some of your friends to come along. Because it all starts tomorrow.