moao blog

生活記録

リアルタイムOSの調査と動かすこと試行し失敗

リアルタイムOS(RTOS)、エンジニアにとっていつか理解したい憧れの存在。 動作を見てみたいと思い試してみることにしました。 その記録を残します。

OSEK/VDXとPOSIXについて

まずはOSEK/VDXとPOSIXについて調べてみました。どちらもオペレーティングシステムのための標準ですが、役割と目的は異なります。

  1. OSEK/VDX:

OSEK/VDXは自動車用組み込みシステムのためのオープン標準です。OSEK/VDX OSはリアルタイムオペレーティングシステムRTOS)の仕様を定めており、自動車のECU(Electronic Control Unit)などの組み込みシステムでよく使われます。OSEK/VDXの設計の主な目的は、異なるハードウェアプラットフォームに対するポータビリティとスケーラビリティを提供することです。

  1. POSIX:

POSIX(Portable Operating System Interface)は、UNIX系のオペレーティングシステムに対するAPIApplication Programming Interface)の一連の標準です。POSIX標準は、ソフトウェアのポータビリティを向上させることを目指しています。つまり、あるUNIX系OSで書かれたプログラムが、他のUNIX系OSでも動作することを保証します。

大きな違いはその目的と適用範囲にあります。OSEK/VDXは、特に自動車産業の組み込みシステムのリアルタイム要件を満たすように設計されています。一方、POSIXは、一般的なオペレーティングシステム(特にUNIX系)におけるアプリケーションの互換性とポータビリティを目指しています。

したがって、OSEK/VDXとPOSIXは、それぞれ異なる環境と要件に対応するように設計されており、特定の状況やニーズによって選択されます。

OSEK/VDXに挑戦⇒失敗

OSEK/VDXのオープンソースはないか調べていたところTOPPERSが出しているATK2というOSがあることが判明。OSEK/VDXがベースのAUTOSAR準拠ということでこれをPC上で動かせないか挑戦。

(toppers-users 4100) Re: atk2-sc1がWindows8 64bitでmakeに失敗しました。

TOPPERSプロジェクト/ATK2 Skyeye(ISSシミュレータ)

以下すでに先人様がいらっしゃったので習って進めてみました。 神。 Windows(Cygwin)でATK2+Skyeyeを動かす - Qiita

  • 久しぶりのcygwinインストール perl/make/unzipをチェックしてインスト。

Cygwin Installation

DevEnvWin – EV3 Platform

  • arm gccインストール

Sourcery G++ Lite Edition for ARM Download Sourcery CodeBench Lite Edition for ARM

しかしarmのインストーラで詰まります。。Windows11だからかインストーラが立ち上がりません。。

しょうがないため、arm公式のものを使用してインストール。

Downloads | GNU Arm Embedded Toolchain Downloads – Arm Developer

↑で進めるとmake時にarm-nameがないなどエラー吐きます。。

調べるとコマンドラインで-i consoleをつければよいということで、試します。

arm-2012.03-42-arm-none-symbianelf.exe -i console

インストールできました。がnoneではなくsymian?に特化したコンパイラ。 makeのgcc名変更必要です。 それで以降がうまく進む見込みもあるかわかりません。

時間切れ。終了

あとがき

というわけで挑戦しましたが、断念しました。 次はもっと簡単に動かせるものないか調べてみようと思います。 また本当は以下も気になったのですが、 ソースコードが配置されてないため断念。

HEOsek - Operating System

学んだことはたくさんの人に使ってもらいたいなら、動かしやすくしないといけないかも、ということです。