MQX (Message Queue eXecutive) is a
real-time operating system
An operating system (OS) is system software that manages computer hardware and software resources, and provides common daemon (computing), services for computer programs.
Time-sharing operating systems scheduler (computing), schedule tasks for ...
(RTOS) developed by Precise Software Technologies, Inc., and currently sold by
Synopsys
Synopsys, Inc. is an American electronic design automation (EDA) company headquartered in Sunnyvale, California, that focuses on silicon design and verification, silicon intellectual property and software security and quality. Synopsys sup ...
, Embedded Access, Inc., and
NXP Semiconductors
NXP Semiconductors N.V. is a Dutch semiconductor manufacturing and design company with headquarters in Eindhoven, Netherlands. It is the third largest European semiconductor company by market capitalization as of 2024. The company employs approx ...
.
Like most RTOSs, MQX includes a
multitasking kernel with pre-emptive
scheduling and fast
interrupt
In digital computers, an interrupt (sometimes referred to as a trap) is a request for the processor to ''interrupt'' currently executing code (when permitted), so that the event can be processed in a timely manner. If the request is accepted ...
response, extensive
inter-process communication
In computer science, interprocess communication (IPC) is the sharing of data between running Process (computing), processes in a computer system. Mechanisms for IPC may be provided by an operating system. Applications which use IPC are often cat ...
and
synchronization
Synchronization is the coordination of events to operate a system in unison. For example, the Conductor (music), conductor of an orchestra keeps the orchestra synchronized or ''in time''. Systems that operate with all parts in synchrony are sa ...
facilities, and a
file system.
Its configurable size conserves
computer memory
Computer memory stores information, such as data and programs, for immediate use in the computer. The term ''memory'' is often synonymous with the terms ''RAM,'' ''main memory,'' or ''primary storage.'' Archaic synonyms for main memory include ...
space using a minimum of 6 KB of
read-only memory
Read-only memory (ROM) is a type of non-volatile memory used in computers and other electronic devices. Data stored in ROM cannot be electronically modified after the manufacture of the memory device. Read-only memory is useful for storing sof ...
(ROM), including its kernel, interrupts, semaphores, queues, and a memory manager.
MQX includes an
Internet protocol suite
The Internet protocol suite, commonly known as TCP/IP, is a framework for organizing the communication protocols used in the Internet and similar computer networks according to functional criteria. The foundational protocols in the suite are ...
TCP/IP stack (RTCS), embedded
File Allocation Table
File Allocation Table (FAT) is a file system developed for personal computers and was the default file system for the MS-DOS and Windows 9x operating systems. Originally developed in 1977 for use on floppy disks, it was adapted for use on Ha ...
based
DOS file system (MFS), Universal Serial Bus (
USB
Universal Serial Bus (USB) is an industry standard, developed by USB Implementers Forum (USB-IF), for digital data transmission and power delivery between many types of electronics. It specifies the architecture, in particular the physical ...
) host/device stack, and design,
debugging
In engineering, debugging is the process of finding the Root cause analysis, root cause, workarounds, and possible fixes for bug (engineering), bugs.
For software, debugging tactics can involve interactive debugging, control flow analysis, Logf ...
(task-aware (TAD), and remote), and performance analysis tools.
It is supported by popular
libraries
A library is a collection of Book, books, and possibly other Document, materials and Media (communication), media, that is accessible for use by its members and members of allied institutions. Libraries provide physical (hard copies) or electron ...
for
Secure Sockets Layer
Transport Layer Security (TLS) is a cryptographic protocol designed to provide communications security over a computer network, such as the Internet. The protocol is widely used in applications such as email, instant messaging, and voice over IP, ...
(SSL) and
Transport Layer Security
Transport Layer Security (TLS) is a cryptographic protocol designed to provide communications security over a computer network, such as the Internet. The protocol is widely used in applications such as email, instant messaging, and voice over ...
(TLS) such as
wolfSSL for increased security measures.
MQX is generally used in
embedded system
An embedded system is a specialized computer system—a combination of a computer processor, computer memory, and input/output peripheral devices—that has a dedicated function within a larger mechanical or electronic system. It is e ...
s. MQX development occurs on a ''host'' machine running
Unix
Unix (, ; trademarked as UNIX) is a family of multitasking, multi-user computer operating systems that derive from the original AT&T Unix, whose development started in 1969 at the Bell Labs research center by Ken Thompson, Dennis Ritchie, a ...
or
Windows
Windows is a Product lining, product line of Proprietary software, proprietary graphical user interface, graphical operating systems developed and marketed by Microsoft. It is grouped into families and subfamilies that cater to particular sec ...
, and
cross-compiles target software to run on various target
central processing unit
A central processing unit (CPU), also called a central processor, main processor, or just processor, is the primary Processor (computing), processor in a given computer. Its electronic circuitry executes Instruction (computing), instructions ...
(CPU) architectures.
MQX has been ported to many platforms and now runs on most modern CPUs used in the embedded market, including
Kinetis,
ColdFire,
PowerPC
PowerPC (with the backronym Performance Optimization With Enhanced RISC – Performance Computing, sometimes abbreviated as PPC) is a reduced instruction set computer (RISC) instruction set architecture (ISA) created by the 1991 Apple Inc., App ...
,
ARC,
ARM,
StrongARM,
xScale
XScale is a microarchitecture for central processing units initially designed by Intel implementing the ARM architecture (version 5) instruction set. XScale comprises several distinct families: IXP, IXC, IOP, PXA and CE (see more below), with some ...
.
All new Kinetis (
ARM Cortex-M4), i.MX RT (
ARM Cortex-M7), and ColdFire devices will be enabled with complementary Freescale MQX RTOS. Freescale plans to expand the availability of this complementary integrated enablement software to include many embedded processors in its broad portfolio.
History
MQX had its origins at , a company based in Ottawa, Canada. In 1984, a small team of software engineers there, consisting of Jeremy James, Mati Sauks, and Craig Honegger started researching novel applications for embedded
multiprocessors. This work led to the use of a real-time operating system in writing firmware for Dy4 single board computers. In 1989, James and Sauks commercialized the
Harmony
In music, harmony is the concept of combining different sounds in order to create new, distinct musical ideas. Theories of harmony seek to describe or explain the effects created by distinct pitches or tones coinciding with one another; harm ...
RTOS, with the name MPX, which was developed for portable multiprocessor
real-time computing
Real-time computing (RTC) is the computer science term for Computer hardware, hardware and software systems subject to a "real-time constraint", for example from Event (synchronization primitive), event to Event (computing), system response. Rea ...
systems by the
National Research Council Canada, and created a company named Precise Software Technologies, Inc.
This effort led to developing the Precise Real-Time Executive technology that was the basis of a product named MQX and MQX+m, which were real-time executives for single processor and multiprocessor applications. The unique asynchronous message passing paradigm delivered by MQX when it was introduced in 1991 and the royalty-free licensing model were accepted immediately in the embedded real-time market. Since the introduction of MQX, Precise continually added functions to the MQX RTOS69 through its various iterations and versions.
Precise Software Technologies was acquired by ARC International in March, 2000
and continued to develop, license and sell MQX on many new processor architectures including Freescale
ColdFire,
IBM
International Business Machines Corporation (using the trademark IBM), nicknamed Big Blue, is an American Multinational corporation, multinational technology company headquartered in Armonk, New York, and present in over 175 countries. It is ...
/Freescale
PowerPC
PowerPC (with the backronym Performance Optimization With Enhanced RISC – Performance Computing, sometimes abbreviated as PPC) is a reduced instruction set computer (RISC) instruction set architecture (ISA) created by the 1991 Apple Inc., App ...
and
ARM. In 2004, Embedded Access assumed distribution and support of the MQX RTOS on non-ARC processor architectures. In 2009, Freescale began shipping the MQX RTOS complimentary with selected ColdFire MCUs.
MQX has been used in thousands of embedded projects by over 1,000 companies, who have shipped millions of products running it. Today, firms such as ABB, Agilent, ATI Technologies, Baoruh Electronic, Bausch and Lomb, General Dynamics, Daewoo, Exabyte, General Electric, B.F. Goodrich, Liebert, Matrox, Mitel Networks, Philips, Porsche, QLogic, SICK, Sony, Tyco, and Xerox use MQX in applications such as industrial control, networking, storage, and consumer electronics.
References
External links
*, NXP Semiconductors
Embedded Access
{{Operating systems
Real-time operating systems
Embedded operating systems
ARM operating systems
Microkernel-based operating systems
Microkernels