English | Other languages

Windows Operating Systems for Imaging Applications
The recent introduction of Windows 95, the long awaited PC-based 32-bit operating system, has prompted developers to reconsider their inspection system platforms. When properly configured, today's PCs can be used for machine vision, image analysis and medical imaging applications. Developers are realizing that today's PCs coupled with 32-bit operating systems can offer similar or better performance than dedicated hardware or VME-based solutions; and at a substantially lower cost. Since Microsoft is the popular choice for developing on PC platforms, developers are choosing between Windows NT and Windows 95.
Maximizing Speed Using Low Cost Hardware
32-bit operating systems are not new. The reason for the interest now, Microsoft's promotional efforts aside, is the fact that PC hardware capable of driving 32-bit operating systems at maximum speeds is both cheaper and better than it has ever been. Pentium-based machines with PCI buses and core logic chipsets such as Intel's Triton, give a developer the performance and bandwidth needed for an ever increasing number of imaging applications. The necessary PCI peripherals such as frame grabbers are plentiful, inexpensive, and offer real-time transfer capabilities. For example, Matrox offers two PCI frame grabbers with real-time transfer capabilities, Matrox Meteor and Matrox Pulsar. For those demanding applications where the processing power of the CPU is still not fast enough, there are dedicated image processing boards which can be added to these inexpensive PCs to create systems to handle almost any imaging task.
The PCI bus, which has rapidly been adopted as the bus standard of choice, provides fast transfers for the large amounts of data associated with imaging. But in order to keep the data moving, optimized chipsets such as the Intel Triton core are needed to tie the CPU and memory to the PCI bus. Faster RAM and better cache designs also assure that a system is running at optimum speeds.
For the computer-intensive demands of an inspection system, a 32-bit application provides a substantial performance gain over a 16-bit application. A Windows 95 or Windows NT operating system provides a good environment for realizing the 32-bit performance gains.
Why Microsoft?
Developers of imaging systems are choosing Microsoft as their 32-bit operating system provider for several reasons. Other 32-bit operating systems are available, but none offers the mass appeal of Windows NT or Windows 95. IBM OS/2 has received relatively little third party support when compared to Windows. The UNIX platform has so many flavors that no clear standard emerged.
16-bit Windows and its widespread acceptance established Microsoft as the mainstream operating system provider of choice. Microsoft also provides the most popular software development environments for Windows, namely Microsoft Visual C/C++ and Microsoft Visual Basic, with millions of copies sold. Imaging libraries, such as the Matrox Imaging Library, are also available to help speed up development of 32-bit applications for 32-bit Windows environments. All of these reasons, combined with the features that 32-bit Windows operating systems have to offer, are leading developers to a decision between either Windows NT or Windows 95.
Considerations For Developers
When comparing Microsoft's 32-bit Windows operating systems, developers will consider cost, architecture, performance, stability, as well as issues such as symmetrical multiprocessing and platform independence.
A computer to be used for an imaging application under Windows NT should have a fast Pentium processor, at least 24 MB of RAM, and roughly 100 MB of hard disk space. In comparison, a Windows 95 system should have a fast Pentium processor, at least 16 MB of RAM, and about 50 MB of hard disk space. Since Windows 95 requires less RAM, hard disk space, and sells for less, it costs less to configure a PC under Windows 95 than Windows NT.
Besides cost considerations, a developer will look at operating system architecture. Windows NT was designed from the ground up as a true preemptive multitasking/multithreading 32-bit operating system. It offers a fully reentrant design which guarantees that multiple tasks or threads are assured access to the operating system resources during their time share of the CPU.
Windows 95 can be described as a hybrid 32/16-bit operating system. In order to retain backward compatibility with 16-bit applications, some of the components of Windows 95 are still 16-bit. As such, some of its components are non-reentrant. The result is that some tasks or threads may be denied access to the operating system resources during their time share of the CPU. The potential for this undeterministic behavior may jeopardize the efficiency of applications running under Windows 95.
Since Windows 95 has some 16-bit components, one would expect Windows NT to have better performance. Actually, both operating systems exhibit similar overall execution speeds depending on the application. Under Windows 95, some 32-bit calls must be translated to 16-bit calls to interact with the 16-bit modules, thus affecting performance. Windows NT has more layers of software in its architecture, and this will affect the performance of 32-bit applications running under Windows NT. The execution speed of the imaging operations using the 32-bit Matrox Imaging Library are roughly the same under Windows NT and Windows 95.
Figure 1

  120 MHz Pentium
Operations executed on a
512 x 512 x 8 image
Speed underWindows 3.1™ (16-bit) Speed under Windows 95™
(32-bit)
Speed under Windows NT™
(32-bit)
Convolution (3 x 3) 362.5 ms 248.1 ms 254.6 ms
8-bit Histogram 42.8 ms 14.8 ms 18.9 ms
Find 128 x 128 pattern 59.5 ms 32.7 ms 39.5 ms
Calculate area and center of gravity of 100 blobs (binary image) 41.7 ms 32.5 ms 23.0 ms
Find an edge 789.9 µs 232.8 µs 253.5 µs

Note: Pentium benchmarks performed on a 120 MHz Pentium (Dell Dimension XPS P120C)
Windows NT has been around for some time now and offers a more stable and secure operating environment with superior crash protection. Windows 95 is less robust, relatively new, and as with any new software, bugs may be lurking, waiting to surface.
The stability and robustness of Windows NT is desirable for a development platform as well as for a reliable run-time system. Since Windows NT is a more robust environment to work in, it may save money in the long run because development stations and completed inspection stations running Windows NT may not crash as often as systems running Windows 95. Down time during the development process or on the factory floor can be costly for both the developer and end-user alike.
Other differences between these operating systems are multiprocessor support and platform independence, which are provided with Windows NT, but not Windows 95. Multiprocessor support provides the opportunity for increased performance, and platform independence does not lock a developer to an Intel based solution. Windows NT supports Intel x86, MIPS, Alpha, and PowerPC based computers.
The Final Word
Since Windows NT and Windows 95 can run imaging applications at basically the same speed, the decision to choose one over the other comes down to one of cost versus stability. For developers with a tight budget, Windows 95 is the less expensive solution. For developers of mission critical systems, Windows NT is the right solution because of its robustness.
Update - May 96
For many imaging applications, developers will likely find Windows NT a more appropriate choice for development and run-time applications over Windows 95. Although Windows NT and Windows 95 can run imaging applications at basically the same speed, Windows 95 may not be suitable for certain imaging applications.
Windows 95 does not provide the same level of performance delivered by Windows NT for real-time video acquisition and graphics. This is attributed to the way Windows 95 services hardware interrupts and may cause problems for applications that require very fast response time.
A typical application that might suffer under Windows 95 is one that acquires a sequence of images and cannot miss a single frame. Microsoft recommends using Windows NT for this type of application.
Final words
While MMX is good news for scientific/industrial imaging, you have to make sure the software you use is carefully designed or optimized to take advantage of it. If you are not prepared to make the investment in developing this software yourself, you can now rely on vision vendors like Matrox to do it for you. Support and upgrades are left to the supplier, while you benefit from the speed improvements of present MMX-enabled processors, and the faster ones to come (300 MHz Pentium IIs and beyond).
By early '98 Intel plans to build only MMX processors, so if you don't take advantage of it, you might be losing out on a new enabling technology. And even if MMX doesn't solve all your applications, it will certainly allow you to do a lot more using the host.
For more information, contact our Media Relations Team.
Top of page
Site Map Contact Us Legal E-mail Matrox