「ThreadX/Azure RTOS」の悔恨から生まれた「PX5 RTOS」はできたてほやほやリアルタイムOS列伝(32)(1/3 ページ)

IoT(モノのインターネット)市場が拡大する中で、エッジ側の機器制御で重要な役割を果たすことが期待されているリアルタイムOS(RTOS)について解説する本連載。第32回は、2023年1月にリリースされたばかりのRTOS「PX5 RTOS」を紹介する。

» 2023年03月07日 07時00分 公開
[大原雄介MONOist]

 今回取り上げる「PX5 RTOS」は、2023年1月25日にその存在が明らかにされたばかりのリアルタイムOS(RTOS)である(図1)。もっと言うならば、これを開発したPX5という企業そのものの創業が同年1月である。このあたりから既に不穏(?)な雰囲気が漂っているのだが、そもそもこのPX5 RTOSの発表はPX5自身によるものではなく、4社のパートナー企業から以下に挙げるリリースが同時に出たことで明らかになった。

「PX5 RTOS」のWebサイト 図1 「PX5 RTOS」のWebサイト[クリックでWebサイトへ]

⇒連載記事「リアルタイムOS列伝」バックナンバー

「ThreadX/Azure RTOS」の開発者が新たに開発した5番目のRTOS

 PX5の創業者兼CEOであり、かつPX5 RTOSの開発を担当するのはBill Lamie(ビル・ラミー)氏である。実は、Lamie氏の話は筆者の記事でこれまで2回紹介している。本連載第4回と、Tech Factoryの連載記事である。

 Lamie氏の経歴はTech Factoryの方の記事に詳しいが、簡単にまとめれば「Nucleus RTX/Nucleus PLUS」と「ThreadX/Azure RTOS」の開発者である。ThreadXの販売のために立ち上げられたExpress Logicは2019年4月にMicrosoftに買収されており、これに伴いLamie氏もMicrosoftに移籍、Azure RTOSのPrincipal PMとして2022年7月まで勤務している。

 Azure RTOSそのものは、2019年の段階ではまだ中身はThreadXそのもので、看板だけAzure RTOSに付け替えたような状態だったわけだが、その後クラウドであるAzureへの接続性も担保され、セキュリティ機能の向上や認定プログラムの開始など、順調にAzureのためのRTOSとしての中身が整ってきた。恐らくはこの移植というか移行作業が終わるのを待って、Lamie氏はMicrosoftを退社したようだ。

 その後、7カ月ほど「自営業」(=フリーランスのエンジニア)として活動した後にPX5を立ち上げたわけだが、この自営業期間にPX5 RTOSを開発して、さまざまなパートナーにそれを持ち込んだものと思われる。ちなみにPX5のメンバーとして公開されているのはLamie氏以外にVP EngineeringとしてYuxin Zhou(ユーシン・チョウ)氏の名前が挙がっている。Zhou氏は、2012年にVP, EngineeringとしてExpress Logicに参加。その後Microsoftの買収に伴ってそのままMicrosoftでPrincipal Software Engineering Managerを務めていたが2022年10月に退職。3カ月ほど休養の後でPX5に参加した格好だ。もっともこの「休養」の間に何をやっていたか? は不明だが。

 ちなみにPX5の名前の由来は、POSIXベースのRTOS(“P”)で、Thread Switchingをベース(“X”)とし、Lamie氏が手掛ける5番目のRTOS(“5”)だから、ということらしい。そんなわけでPX5 RTOSの特徴は、POSIX準拠を前面に押し出している。

 本連載でも以前紹介しているが、前作であるThreadX/Azure RTOSの場合、カーネルはpicokernel architecture(ピコカーネルアーキテクチャ)と呼ばれるもので、ネイティブI/Fは独自のものが用意され、その上に互換レイヤーとしてPOSIXやOSEK、μITRONなどのAPIが提供される形になっていた。PX5では、もうそうした複数のAPIへの対応を止め、IEEEで定義されるPOSIX pthreads APIにターゲットを絞っている(図2)。

図2 図2 内部的にどうか(?)は不明だが、独自API+互換レイヤーだと当然オーバーヘッドが増えるわけで、恐らくはpthread APIはネイティブ実装と思われる[クリックで拡大]
       1|2|3 次のページへ

Copyright © ITmedia, Inc. All Rights Reserved.