SlideShare a Scribd company logo
1 of 22
ITRON仕様のOSで
組み込みにトライしてみた
ー組み込みの世界にHello Worldー
アジェンダ
• ITRONって何?
• 組み込み用のプログラムを作る
• 組み込み用のマイコンを入手する
• 動かす(間に合いませんでした。サーセン
ITRONって何?
• リアルタイムOS(RTOS)の仕様
• 日本の組み込みではITRON仕様のOSがよく使われているらしい
• ITRON仕様で実装したOSには、TOPPERSやHOSがある
ITRONの特徴
• 和製
• 省リソースで動作できる(メモリは1MB以下で余裕)
• リアルタイムOS (RTOS)
リアルタイムOSとは?
• ざっくり言うと(というか、ざっくりとしか言えない)
プログラムの実行順序(CPUの割り当て方)
が一般的なOSとは違う。
http://www.t-engine.org/ja/sympo/rtos/rtos01
ITRONの特徴
• 優先度が高い処理は、優先度が低い処理に邪魔されない
• 重要な処理を優先度の高いタスクに設定しておくことで、必ず決まっ
た時間内に終わらせることができる
概要の説明はこれくらいにして、
実際に組み込みプログラムを作ってみる
組み込み用のプログラムを作る
• 具体的にはITRON OSとアプリを作る(ビルドする)。
参考書のご紹介
• オーム社さんから出ているITRONプログラミング入門を参考にする
開発環境
• ルネサスさんのHEW( High-performance Embedded Workshop)を使用
• マイコン用のクロスコンパイラが含まれている
http://japan.renesas.com/products/tools/ide/hew/
使用するITRON仕様のOS
• HOS(Hyper Operating System)を使用
http://sourceforge.jp/projects/hos/
ビルドフロー
HOSソースコード アプリソースコード
HOSカーネルライブラリ
設定ファイル
system.cfg
ヘッダファイル
Cファイル
組み込み用のプログラム
クロスコンパイル クロスコンパイル
プリプロセッサ
コンフィギュレータ
リンクリンク
マイコンへのデータ転送
組み込み用のプログラム
PC マイコン
プログラム書き込み用の
プログラム
シリアルケーブル
ビルド生成物
• ちなみに、組み込み用プログラムは全部で14KBしかない。
組み込み用のマイコンを入手する
• 組み込み用のマイコン(≒CPU)は色々種類があるらしい。
PIC H8 ARM
低価格
低性能
高価格
高性能
組み込み用のマイコンを入手する
• 今回は参考書で紹介されているH8を使用
• PCとの通信はシリアルケーブルで行うので、シリアルの口も欲しい
• (はんだで後付けできるけど、極力楽をしたい)
組み込み用のマイコンを入手する
• H8のUSBキットをチョイス
マイコン本体
頑張って組み立てる
半田で熱しすぎて、マイコン壊したくさい…
というわけで、実際に動かせなかったが、動かす一歩手前までは行け
た。
次回があれば、実際に動かして、ITRONの機能を使ったことをお話し
たい。

More Related Content

Viewers also liked

Viewers also liked (20)

A security study on Raspberry pi version 0.2
A security study on Raspberry pi version 0.2A security study on Raspberry pi version 0.2
A security study on Raspberry pi version 0.2
 
オープンアーキテクチャ,オープンソースソフトウェア時代の標準化フレームワークを使用したプロジェクトマネジメント
オープンアーキテクチャ,オープンソースソフトウェア時代の標準化フレームワークを使用したプロジェクトマネジメントオープンアーキテクチャ,オープンソースソフトウェア時代の標準化フレームワークを使用したプロジェクトマネジメント
オープンアーキテクチャ,オープンソースソフトウェア時代の標準化フレームワークを使用したプロジェクトマネジメント
 
アウトソーシング嫌いのベンチャーが2ヶ月間でオフショア開発でサービスをローンチしてみた(pjマネジメント編)
アウトソーシング嫌いのベンチャーが2ヶ月間でオフショア開発でサービスをローンチしてみた(pjマネジメント編)アウトソーシング嫌いのベンチャーが2ヶ月間でオフショア開発でサービスをローンチしてみた(pjマネジメント編)
アウトソーシング嫌いのベンチャーが2ヶ月間でオフショア開発でサービスをローンチしてみた(pjマネジメント編)
 
組込みだからこそアジャイルやろうよ! (JASA中部セミナー20131004)
組込みだからこそアジャイルやろうよ! (JASA中部セミナー20131004)組込みだからこそアジャイルやろうよ! (JASA中部セミナー20131004)
組込みだからこそアジャイルやろうよ! (JASA中部セミナー20131004)
 
情報の『見える化』ってなぜ大事?どうやるの? ~グラフィック・レコーディングで考えてみよう~フェリス女学院大学『社会的起業』
情報の『見える化』ってなぜ大事?どうやるの?~グラフィック・レコーディングで考えてみよう~フェリス女学院大学『社会的起業』情報の『見える化』ってなぜ大事?どうやるの?~グラフィック・レコーディングで考えてみよう~フェリス女学院大学『社会的起業』
情報の『見える化』ってなぜ大事?どうやるの? ~グラフィック・レコーディングで考えてみよう~フェリス女学院大学『社会的起業』
 
LED-Camp2「組込みシステム開発の勘所と実践」
LED-Camp2「組込みシステム開発の勘所と実践」LED-Camp2「組込みシステム開発の勘所と実践」
LED-Camp2「組込みシステム開発の勘所と実践」
 
議論を楽しく見える化しよう!グラフィック・レコーディングワークショップ
議論を楽しく見える化しよう!グラフィック・レコーディングワークショップ議論を楽しく見える化しよう!グラフィック・レコーディングワークショップ
議論を楽しく見える化しよう!グラフィック・レコーディングワークショップ
 
Backlogを使ったオフショア開発 #nucon
Backlogを使ったオフショア開発 #nuconBacklogを使ったオフショア開発 #nucon
Backlogを使ったオフショア開発 #nucon
 
車載組込ブラウザの過去7年と今を40分でまとめてみる
車載組込ブラウザの過去7年と今を40分でまとめてみる車載組込ブラウザの過去7年と今を40分でまとめてみる
車載組込ブラウザの過去7年と今を40分でまとめてみる
 
現場の見える化で、チーム力を向上させる
現場の見える化で、チーム力を向上させる現場の見える化で、チーム力を向上させる
現場の見える化で、チーム力を向上させる
 
【学習メモ#1st】12ステップで作る組込みOS自作入門
【学習メモ#1st】12ステップで作る組込みOS自作入門【学習メモ#1st】12ステップで作る組込みOS自作入門
【学習メモ#1st】12ステップで作る組込みOS自作入門
 
SECCON2014 crypt200
SECCON2014 crypt200SECCON2014 crypt200
SECCON2014 crypt200
 
アセンブラ100 さきゅりてぃ発表用
アセンブラ100 さきゅりてぃ発表用アセンブラ100 さきゅりてぃ発表用
アセンブラ100 さきゅりてぃ発表用
 
Osc2016 tokyo-spring-geeklog
Osc2016 tokyo-spring-geeklogOsc2016 tokyo-spring-geeklog
Osc2016 tokyo-spring-geeklog
 
芸人を 目指すわけでは ないけれど…(n575)
芸人を 目指すわけでは ないけれど…(n575)芸人を 目指すわけでは ないけれど…(n575)
芸人を 目指すわけでは ないけれど…(n575)
 
小江戸らぐ9月のオフな集まり(第98回) -東京電機大学神田キャンパス-
小江戸らぐ9月のオフな集まり(第98回) -東京電機大学神田キャンパス-小江戸らぐ9月のオフな集まり(第98回) -東京電機大学神田キャンパス-
小江戸らぐ9月のオフな集まり(第98回) -東京電機大学神田キャンパス-
 
アドベントカレンダー「愉悦について」
アドベントカレンダー「愉悦について」アドベントカレンダー「愉悦について」
アドベントカレンダー「愉悦について」
 
LibreOfficeの品質向上活動について
LibreOfficeの品質向上活動についてLibreOfficeの品質向上活動について
LibreOfficeの品質向上活動について
 
ベジェ曲線を使ってみよう
ベジェ曲線を使ってみようベジェ曲線を使ってみよう
ベジェ曲線を使ってみよう
 
鹿児島らぐはじめました(オープンソースカンファレンス2015大分LT)
鹿児島らぐはじめました(オープンソースカンファレンス2015大分LT)鹿児島らぐはじめました(オープンソースカンファレンス2015大分LT)
鹿児島らぐはじめました(オープンソースカンファレンス2015大分LT)
 

Similar to ITRON仕様のOSで組み込みにトライしてみた

福井スマートフォンハッカソン Titanium Mobileの紹介
福井スマートフォンハッカソン Titanium Mobileの紹介福井スマートフォンハッカソン Titanium Mobileの紹介
福井スマートフォンハッカソン Titanium Mobileの紹介
Mori Shingo
 
hbstudy#6LTyuzorock
hbstudy#6LTyuzorockhbstudy#6LTyuzorock
hbstudy#6LTyuzorock
yuzorock
 
Titanium Mobile ~本当にあったこわい話~
Titanium Mobile ~本当にあったこわい話~Titanium Mobile ~本当にあったこわい話~
Titanium Mobile ~本当にあったこわい話~
Atsushi Harada
 

Similar to ITRON仕様のOSで組み込みにトライしてみた (20)

ソニーのディープラーニングツールで簡単エッジコンピューティング
ソニーのディープラーニングツールで簡単エッジコンピューティングソニーのディープラーニングツールで簡単エッジコンピューティング
ソニーのディープラーニングツールで簡単エッジコンピューティング
 
福井スマートフォンハッカソン Titanium Mobileの紹介
福井スマートフォンハッカソン Titanium Mobileの紹介福井スマートフォンハッカソン Titanium Mobileの紹介
福井スマートフォンハッカソン Titanium Mobileの紹介
 
C#/Java & Linux で始める ET ロボコン
C#/Java & Linux で始める ET ロボコンC#/Java & Linux で始める ET ロボコン
C#/Java & Linux で始める ET ロボコン
 
OSCFUKUOKA
OSCFUKUOKAOSCFUKUOKA
OSCFUKUOKA
 
Python & PyConJP 2014 Report
Python & PyConJP 2014 ReportPython & PyConJP 2014 Report
Python & PyConJP 2014 Report
 
Shaping up ATOK to fit to your iPhone / iPad
Shaping up ATOK to fit to your iPhone / iPadShaping up ATOK to fit to your iPhone / iPad
Shaping up ATOK to fit to your iPhone / iPad
 
ここが変わったTizen sdk2.0alpha
ここが変わったTizen sdk2.0alphaここが変わったTizen sdk2.0alpha
ここが変わったTizen sdk2.0alpha
 
最小セットOS Ssp fun
最小セットOS Ssp fun最小セットOS Ssp fun
最小セットOS Ssp fun
 
hbstudy#6LTyuzorock
hbstudy#6LTyuzorockhbstudy#6LTyuzorock
hbstudy#6LTyuzorock
 
DOO-015_Azure/Windows Server 2016 から学ぶ Windows 系インフラ エンジニアのための DevOps
DOO-015_Azure/Windows Server 2016 から学ぶ Windows 系インフラ エンジニアのための DevOpsDOO-015_Azure/Windows Server 2016 から学ぶ Windows 系インフラ エンジニアのための DevOps
DOO-015_Azure/Windows Server 2016 から学ぶ Windows 系インフラ エンジニアのための DevOps
 
Titanium Mobile ~本当にあったこわい話~
Titanium Mobile ~本当にあったこわい話~Titanium Mobile ~本当にあったこわい話~
Titanium Mobile ~本当にあったこわい話~
 
Robot Language and a Tail Recursive Interpreter
Robot Language and a Tail Recursive Interpreter Robot Language and a Tail Recursive Interpreter
Robot Language and a Tail Recursive Interpreter
 
Arithmer Robo Introduction
Arithmer Robo IntroductionArithmer Robo Introduction
Arithmer Robo Introduction
 
止まらないようにしたいのにそのせいで止まる悲しさ
止まらないようにしたいのにそのせいで止まる悲しさ止まらないようにしたいのにそのせいで止まる悲しさ
止まらないようにしたいのにそのせいで止まる悲しさ
 
201110 01 Polytech Center 1
201110 01 Polytech Center 1201110 01 Polytech Center 1
201110 01 Polytech Center 1
 
Python languageupdate (2004)
Python languageupdate (2004)Python languageupdate (2004)
Python languageupdate (2004)
 
最新UE4タイトルでのローカライズ事例 (UE4 Localization Deep Dive)
最新UE4タイトルでのローカライズ事例 (UE4 Localization Deep Dive)最新UE4タイトルでのローカライズ事例 (UE4 Localization Deep Dive)
最新UE4タイトルでのローカライズ事例 (UE4 Localization Deep Dive)
 
Fortniteを支える技術
Fortniteを支える技術Fortniteを支える技術
Fortniteを支える技術
 
Out systemsaichiusermeeting#5 lt2
Out systemsaichiusermeeting#5 lt2Out systemsaichiusermeeting#5 lt2
Out systemsaichiusermeeting#5 lt2
 
Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~
Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~
Docker管理もHinemosで! ~監視・ジョブ機能を併せ持つ唯一のOSS「Hinemos」のご紹介~
 

ITRON仕様のOSで組み込みにトライしてみた