Jump to content

ITRON project

From Wikipedia, the free encyclopedia
(Redirected from ITRON)

The ITRON project was the first sub-project of the TRON project. It has formulated and defined Industrial TRON (ITRON) specification for an embedded real-time OS (RTOS) kernel.

Originally undertaken in 1984, ITRON is a Japanese open standard for a real-time operating system initiated under the guidance of Ken Sakamura. This project aims to standardize the RTOS and related specifications for embedded systems, particularly small-scale embedded systems. The ITRON RTOS specification is targeted for consumer electronic devices, such as mobile phones and fax machines. Various vendors sell their own implementations of the RTOS.

Details

[edit]

ITRON, and μITRON (sometimes also spelled uITRON or microITRON) are the names of RTOS specifications derived from ITRON projects. The 'μ' character indicates that the particular specification is meant for the smaller 8-bit or 16-bit CPU targets. Specifications are available for free. Commercial implementations are available, and offered under many different licenses.

A few sample source implementations of ITRON specification exist, as do many commercial source offerings.

Examples of open source RTOSes incorporating an API based on μITRON specification are eCos and RTEMS.

ITRON specification is meant for hard real-time embedded RTOS.

It is very popular in the embedded market, as there are many applications for it, i.e., devices with the OS embedded inside.

For example, there is an ACM Queue interview with Jim Ready, founder of MontaVista (realtime linux company), "Interview with Jim Reddy", April 2003, ACM Queue.[1] He says in the interview, "The single, most successful RTOS in Japan historically is μITRON. This is an indigenous open specification led by Dr. Ken Sakamura of the University of Tokyo. It is an industry standard there." Many Japanese digital cameras, for example, have use ITRON specification OS. Toyota automobile has used ITRON specification OS for engine control.

According to the “Survey Report on Embedded Real-time OS Usage Trends” conducted every year by TRON Forum at the Embedded Technology (ET, organized by Japan Embedded Systems Technology Association: JASA), ITRON specification OS has long held the top share in the embedded OS market in Japan and is adopted as the industry standard OS. For example, in the FY 2016 survey[2], TRON OSs (including ITRON specification OS and T-Kernel) accounted for around 60% of the embedded systems market. ITRON specification OSs (including μITRON) alone accounted for 43% of the market, and had a 20% lead over UNIX-based OSs (including POSIX), which are in second place behind TRON.

Although ITRON specification may not be very well known overseas, it is installed in Japanese-made home appliances and exported around the world, so ITRON specification OS has a high market share. As of 2003, it was ranked number one in the world in terms of OS market share[3]. Because its license could be easily obtained and it was free, it was used quite a bit in Asia.

μITRON (read as micro ITRON, not "mu" ITRON) specification started out as a subset of the original ITRON specification. However, after the version 3 of the µITRON specification appeared, since it covers both the low-end CPU market as well as large-scale systems, the term ITRON often refers to µITRON.

Supported CPUs are numerous. ARM, MIPS, x86, SH FR-V and many others including CPUs supported by open source RTOS eCos and RTEMS, both of which include the support for μITRON compatible APIs.

History

[edit]

TRON Project began designing the computer architecture as an infrastructure of the future computer applications, and presented an overview of the basic design at the 29th National Convention of the Information Processing Society of Japan in 1984.

  • Around 1984: Development of μITRON began as a sub-project of TRON Project.
  • 1987: A first comprehensive introduction of TRON Project in English was published in IEEE Micro ( Volume: 7, Issue: 2, April 1987) [4].
    • ITRON1 specification was released.
  • 1989: The specifications of ITRON2, the version 2 of ITRON, and of µITRON2, a subset of ITRON2, were released.
    • ITRON2 was released in two versions: ITRON, which was designed for large-scale 32-bit systems, and µITRON, a subset specification for small-scale 8-16-bit single-chip microprocessors. There is no version 1 of μITRON, and the first version is μITRON2. Of these, μITRON2 was used in a wide range of applications, including almost all major MCUs for embedded systems, because it could be used with MCUs with very low performance, and μITRON was adopted for large-scale 32-bit systems, and μITRON3 specification was developed so that it could handle 8-32 bit systems.
  • 1993: μITRON3.0 specification was released.
    • μITRON3 covers from small to large systems with a single specification by dividing system calls into different levels. It defines functions that are almost equivalent to the full set of ITRON2.
  • Around 1996: The second phase of the ITRON subproject began.
    • As embedded systems rapidly became larger and more complex around this time, there was a growing demand for greater application portability. As the performance of embedded systems improved, the functions that were not included in the ITRON specifications at the time because of their high overhead were added. According to the TRON Assocationsurvey described in the µITRON4 specification, at the time, the main concerns were not so much that "the OS used too many resources," but rather that "engineers could not use it properly" and "the differences in the specifications were too great, making it a burden to switch."
  • 1999: μITRON4 specification was released.
    • The original ITRON specification OS was based on the idea of “weak standardization” so that it could be used with CPUs with low performance. However, as the use of middleware on ITRON increased, there was a demand for “strong standardization” to improve software portability, so the compatibility and strictness of the specifications were improved.
  • 2000: T-Engine project started.
    • T-Kernel project started to promote ITRON standardization and create a next-generation RTOS, T-Kernel, with "stronger standardization" by creating a single source implementation and publishing it.
  • 2010: TRON Association,which promoted TRON Project by publishing specification documents, holding technical seminars, etc. became part of T-Engine Forum.
  • 2015: T-Engine Forum changed its name into TRON Forum.
  • 2017: On 10 November 2017, the Institute of Electrical and Electronics Engineers acquired co-ownership of the copyright of the specification of µT-Kernel (read as micro T-Kernel) from TRON Forum.[5] uT-Kernel is a logical successor of ITRON specification OS. The copyright of the μT-Kernel specification is now co-owned by the two parties. This was to facilitate the creation of IEEE Standard 2050-2018, IEEE Standard for a Real-Time Operating System (RTOS) for Small-Scale Embedded Systems based on µT-Kernel specification.
  • 2023: IEEE recognized the RTOSs proposed, created, and released by TRON Project as an IEEE Milestone by referring to them as “TRON Real-time Operating System Family, 1984", and a certified plaque was installed on the campus of the University of Tokyo, where TRON Project leader Ken Sakamura worked as a research assistant in 1984[6].

Current Status

[edit]

The latest version of the µITRON specification, as of 2016, is µITRON4, released in 1999, and the latest version of µITRON4 is 4.03.03, released in December 2006. The specification states that the plan is to design specifications that will allow for a smooth transition from μITRON to T-Kernel in the future.

Sakamura says that µITRON was already a “mature technology” in 2000. From the standpoint that more effort should be focused on the T-Kernel project than the ITRON project in the age of ubiquitous computing, μT-Kernel has been provided for small-scale systems, for which μITRON was traditionally used, and μT-Kernel 2.0 has also been provided for the IoT era.

T-Kernel is mainly used in embedded systems that require advanced information processing, but µITRON is still used in systems that do not require such advanced processing.

ITRON's popularity comes from many factors, but one factor is the notion of "loose standardization": the API specification is at the source level, and does not specify binary API compatibility. This makes it possible for implementers to make use of features of the particular CPU model to which the implementation is targeted. The developer even has the freedom of choosing to pass the parameters using a consolidated packet, or separate parameters to API (system call, library call, etc.). Such freedom is important to make the best use of not so powerful 8-bit or 16-bit CPUs. This makes keeping the binary compatibility among different implementations impossible. This led to the development of T-Kernel in the 2000s in order to promote binary compatibility for middleware distribution.

ITRON specification was promoted by the various companies which sell the commercial implementations. There was also an NPO,TRON Association[7] that promoted the specification by publishing it as well as other TRON specification OSes. But since the first quarter of 2010, TRON Association became part of T-Engine Forum,[8] another non-profit organization that promotes other operating system such as the next generation RTOS, T-Kernel. T-Engine Forum, in turn, changed its name into TRON Forum in 2015.

T-Kernel is the name of the specification and at the same time refers to the single implementation based on the authorized source code available from TRON Forum (formerly T-Engine Forum) for free under T-License. So T-Kernel doesn't suffer from the binary API incompatibility.

JTRON (Java TRON) is a sub-project of ITRON to allow it to use the Java platform.

See also

[edit]

References

[edit]
  1. ^ "Interview - ACM Queue". queue.acm.org.
  2. ^ "Sixty percent or more of the share is held by TRON RTOS API for the API of embedded OS in use. This means TRON specification OS has been the most popular OS for the 21 consecutive years". www.tron.org. 2017-07-31. Retrieved 2024-11-08.
  3. ^ admin-ectnews (2003-10-15). "The Most Popular Operating System in the World". LinuxInsider. Retrieved 2024-11-08.
  4. ^ K. Sakamura, "The Tron Project," in IEEE Micro, vol. 7, no. 2, pp. 8-14, April 1987, doi: 10.1109/MM.1987.304835. keywords: {Computer architecture;Central Processing Unit;Open
  5. ^ "IEEE Standards Association (IEEE-SA) and TRON Forum Sign Agreement to Advance IoT Development and Interoperability". www.tron.org. 8 December 2017. Retrieved 2019-10-02.
  6. ^ "IEEE MILESTONE". www.tron.org. Retrieved 2024-11-08.
  7. ^ "TRON Forum". www.tron.org.
  8. ^ "The name of T-Engine Forum was changed to TRON Forum". www.t-engine.org.
[edit]