新コンフィギュレータのフレームワークについて

Similar documents
新コンフィギュレータのフレームワークについて

TOPPERS新世代カーネル用コンフィギュレータ仕様

新版明解C言語 実践編

新・明解C言語 実践編

Łñ“’‘‚2004

プリント


double float

Microsoft Word - Training10_プリプロセッサ.docx

program.dvi

Condition DAQ condition condition 2 3 XML key value

超初心者用

untitled

新版 明解C++入門編

untitled

A/B (2010/10/08) Ver kurino/2010/soft/soft.html A/B

RHEA key

MINI2440マニュアル

ex01.dvi

listings-ext

PC Windows 95, Windows 98, Windows NT, Windows 2000, MS-DOS, UNIX CPU

プログラミング及び演習 第1回 講義概容・実行制御

yacc.dvi

新版明解C言語入門編

untitled

解きながら学ぶC++入門編

‚æ4›ñ

明解Java入門編

I. Backus-Naur BNF : N N 0 N N N N N N 0, 1 BNF N N 0 11 (parse tree) 11 (1) (2) (3) (4) II. 0(0 101)* (

joho07-1.ppt

Python C/C++ IPMU IRAF

Minimum C Minimum C Minimum C BNF T okenseq W hite Any D

XMPによる並列化実装2

A/B (2018/10/19) Ver kurino/2018/soft/soft.html A/B

1 1.1 C 2 1 double a[ ][ ]; 1 3x x3 ( ) malloc() 2 double *a[ ]; double 1 malloc() dou

(1/2) 2/45 HPC top runner application programmer PC-9801F N88-BASIC Quick BASIC + DOS ( ) BCB Windows Percolation, Event-driven MD ActionScript Flash

ex01.dvi

haskell.gby

:30 12:00 I. I VI II. III. IV. a d V. VI

I. Backus-Naur BNF S + S S * S S x S +, *, x BNF S (parse tree) : * x + x x S * S x + S S S x x (1) * x x * x (2) * + x x x (3) + x * x + x x (4) * *

1 4 2 EP) (EP) (EP)

解きながら学ぶC++入門編

C言語入門

P05.ppt

C

r08.dvi


comment.dvi

第1章

PowerPoint Presentation

ohp08.dvi

C による数値計算法入門 ( 第 2 版 ) 新装版 サンプルページ この本の定価 判型などは, 以下の URL からご覧いただけます. このサンプルページの内容は, 新装版 1 刷発行時のものです.

情報処理演習 B8クラス

Taro-ファイル処理(公開版).jtd

exec.dvi

解きながら学ぶJava入門編

2008 IIA (program) pro(before)+gram(write) (artificial language) (programming languege) (programming) (machine language) (assembly language) ( )

:30 12:00 I. I VI II. III. IV. a d V. VI

9 8 7 (x-1.0)*(x-1.0) *(x-1.0) (a) f(a) (b) f(a) Figure 1: f(a) a =1.0 (1) a 1.0 f(1.0)

For_Beginners_CAPL.indd

file:///D|/C言語の擬似クラス.txt

writing_plugins.ppt

output2010本文.indd

matrix util program bstat gram schmidt

新・明解Java入門

JEB Plugin 開発チュートリアル 第4回

wireshark dissector with lua

1 1.1 C 2 1 double a[ ][ ]; 1 3x x3 ( ) malloc() malloc 2 #include <stdio.h> #include

mstrcpy char *mstrcpy(const char *src); mstrcpy malloc (main free ) stdio.h fgets char *fgets(char *s, int size, FILE *stream); s size ( )

: CR (0x0d) LF (0x0a) line separator CR Mac LF UNIX CR+LF MS-DOS WINDOWS Japan Advanced Institute of Science and Technology

PowerPoint Presentation

double 2 std::cin, std::cout 1.2 C fopen() fclose() C++ std::fstream 1-3 #include <fstream> std::fstream fout; int a = 123; fout.open( "data.t

A/B (2018/06/08) Ver kurino/2018/soft/soft.html A/B

/* do-while */ #include <stdio.h> #include <math.h> int main(void) double val1, val2, arith_mean, geo_mean; printf( \n ); do printf( ); scanf( %lf, &v

Smalltalk_

橡Pro PDF

(Version: 2017/4/18) Intel CPU 1 Intel CPU( AMD CPU) 64bit SIMD Inline Assemler Windows Visual C++ Linux gcc 2 FPU SSE2 Intel CPU do

AutoTuned-RB

卒 業 研 究 報 告.PDF

C¥×¥í¥°¥é¥ß¥ó¥° ÆþÌç

第3回 配列とリスト

1-4 int a; std::cin >> a; std::cout << "a = " << a << std::endl; C++( 1-4 ) stdio.h iostream iostream.h C++ include.h 1-4 scanf() std::cin >>


練習&演習問題

Microsoft Word - 【第5分科会】ConcolicTestingグループ_付録_修正_ doc

RHEA key



人事行政の運営状況等の公表(平成19年12月)(PDF)


mogiJugyo_slide_full.dvi

Prog1_15th

大統一Debian勉強会 gdb+python拡張を使ったデバッグ手法

I ASCII ( ) NUL 16 DLE SP P p 1 SOH 17 DC1! 1 A Q a q STX 2 18 DC2 " 2 B R b

para02-2.dvi

2008 DS T050049

PBASIC 2.5 PBASIC 2.5 $PBASIC directive PIN type New DEBUG control characters DEBUGIN Line continuation for comma-delimited lists IF THEN ELSE * SELEC

( ) ( ) lex LL(1) LL(1)

II ( ) prog8-1.c s1542h017%./prog8-1 1 => 35 Hiroshi 2 => 23 Koji 3 => 67 Satoshi 4 => 87 Junko 5 => 64 Ichiro 6 => 89 Mari 7 => 73 D

Specview Specview Specview STSCI(Space Telescope SCience Institute) VO Specview Web page htt

Transcription:

: 2007 12 7 6: 2009 5 9 TOPPERS 1.... 4 1.1... 4 1.2 TOPPERS... 4 2.... 4 2.1... 4 3.... 8 4.... 9 4.1... 9 4.2... 10 4.3... 10 4.3.1... 11 4.3.2 INCLUDE... 11 4.3.3 C... 12 4.4 API... 14 4.2.1 API... 14 4.2.2... 15 5. ID... 16 5.1 --id-input-file... 16 5.2 --id-output-file... 16 6. API... 17 6.1 API... 17 6.1.1... 17 6.1.2 API... 17 6.1.3... 17 6.1.4 ID... 18 1

6.1.5... 18 7.... 19 7.1... 19 7.1.1... 19 7.1.2... 19 7.1.3... 19 8.... 20 8.1... 20 8.1.1... 20 8.1.2 msgid... 20 8.1.3 msgstr... 20 8.1.4... 21 8.2... 21 9. C... 22 9.1 C... 22 9.1.1 TOPPERS_CFG1_OUT... 22 9.2 C... 22 9.3 C... 23 9.3.1 kernel_int.h... 23 9.3.2 #include... 23 9.3.3 target_cfg1_out.h... 23 2

2007 12 7 2008 4 1 2.1 6. API 7. 9. C 2008 4 18 9.1 C 9.3 C 2008 4 30 7.1.3 1, 0 s signed, u 6.1.1 6.1.3 7.1.1 7.1.3 6. API 7. 2008 12 16 --id-input-file 1 6.1.5 4.2.1 KERNEL_DOMAIN 2009 1 26 3. 4 2009 5 9 7.1.2 # 3

1. 1.1 TOPPERS/ASP TOPPERS TOPPERS TOPPERS/ASP TOPPERS 1.2 TOPPERS TOPPERS PC 2. Bash cfg 2.1 4

-- = --help --version v --kernel k = TOPPERS/ASP asp TOPPERS/FMP fmp asp --pass p = 3. --help, version, --print-dependencies --include-path I = INCLUDE $INCLUDE$ --template-file T = 2 3 --input-charset = 5

--api-table = API 6. API --cfg1-def-table = 7. --cfg1_out = 1 C cfg1_out.c cfg1_out --rom-image r = ROM ROM S 3 --symbol-table s = GNU NM -C C C _ --cfg-directory d = cfg cfg.exe PATH PATH 6

--msgcat-directory m = --destination-directory n = --id-output-file = 1 2 --id-input-file = --id-output-file --alignof-fp = --external-id USE_EXTERNAL_ID 1 USE_EXTERNAL_ID 0 2 3 --print-dependencies M = GNU Make 7

3. 1 2 3 1 1 1 1 cfg1_out.c C cfg1_out.c API C cfg1_out.c C S S cfg1_out.srec cfg1_out.syms --cfg1_out 2 2 1 cfg1_out.c cfg1_out.srec cfg1_out.syms cfg1_out.c API cfg1_out.srec cfg1_out.c --template-file cfg1_out.srec 2 kernel_cfg.h kernel_cfg.c 8

3 3 3 3 1 cfg1_out.c cfg1_out.srec cfg1_out.syms S --rom-image --symbol-table --template-file 2 cfg1_out.srec 3 2 API 4 4 3 4. 4.1 system configuration file API API INCLUDE 4.3.2 4.3.1 C 4.3.3 9

4.2 C C # C 0xfe-1 C {0xfe} {-} {1} cfg1_out.c C API API cfg_out.c kernel_cfg.c 4.3 API INCLUDE C C 1. 2. 3. 4. 0

4.3.1 C /* */ C++ // C++ 4.3.2 INCLUDE INCLUDE include-directive ::= INCLUDE ( header-name ) ; header-name ::= < h-char-sequence > q-char-sequence h-char-sequence ::= h-char h-char-sequence h-char h-char ::= [^>] q-char-sequence ::= q-char q-char-sequence h-char q-char ::= [^ ] INCLUDE(" "); INCLUDE(< >); \ 1

INCLUDE INCLUDE INCLUDE 1. 2. --include-path --include-file 3. 4.3.3 C C #include #if #ifdef #ifndef #else #elif #endif #pragma API C API 2

#ifdef ABC #include abc.h #endif ABC abc.h abc.h API CLASS DOMAIN CRE_TSK(TASK1, { #ifdef ABC // API TA_ACT, #else TA_NULL, #endif 0, task, MID_PRIORITY, STACK_SIZE, NULL }); #ifdef DEF // CLASS(CLS1) { #endif CRE_TSK(TASK2, { TA_NULL, 0, task, MID_PRIORITY, STACK_SIZE, NULL }); #ifdef DEF } #endif 3

#pragma once #pragma once INCLUDE 4.4 API C API API API C API { } 4.2.1 API API BNF statement ::= simple-statement compound-statement simple-statement ::= api-name ( parameter-list ) ; compound-statement ::= block-api-name ( identifier ) { statement } KERNEL_DOMAIN { statement } api-name ::= identifier block-api-name ::= CLASS DOMAIN parameter-list ::= parameter parameter-list, parameter 4

parameter ::= packet constant-expression packet ::= { parameter-list } constant-expression C ISO/IEC 9899:1990 C90 ISO/IEC 9899:1999 _near, _far 4.2.2 API (a) ID API CRE_??? ID ID C #define API ID API DEF_TEX tskid (b) (c) (d) 5

C 5. ID ITRON 4.0 ID ID 5.1 --id-input-file --id-input-file ID ID ID ID ID ID ID ID 1 --id-input-file ID ID 5.2 --id-output-file --id-output-file ID --id-input-file 6

6. API API API API --api-table API 6.1 API API CSV RFC4180 CR LF CR LF API [ ],[ API ],[ ],[ID ],[ ] 6.1.1 3 tsk 6.1.2 API API 6.1.3 API {} 7

# %. + & $ % DEF_TEX tskid API ASP CRE_TSK DEF_TEX #tskid { +tskatr &exinf &task +itskpri.stksz &stk } %tskid { +texatr &texrtn }? API } ) 6.1.4 ID ID ID 0 1, 2, 3, ATT_INI ID -1 ID ID 0 6.1.5 DEF_TEX API 1 1 API 0 8

7. C --cfg1-def-table 7.1 CSV RFC4180 CR LF CR LF [ ],[ ],[ ] 7.1.1 7.1.2 C # 1 0 7.1.3 s signed u u 9

8. 8.1 UTF-8 BOM msgid msgstr 8.1.1 # 8.1.2 msgid msgid _ _ msgid msgid C 8.1.3 msgstr msgstr msgid _ _ msgid 0

msgstr msgstr msgstr C 8.1.4 msgid C printf msgid printf Boost C++ Libraries boost::format boost::format boost::format % % %1% %2% %3%, %4%, %5%,..., %n% %d %g int long double long double 8.2 TOPPERS_CFG_LANG TOPPERS_CFG_LANG.po ja.po TOPPERS_CFG_LANG ja 1

--msgcat-directory 9. C 1 C C cfg1_out.c --cfg1_out C C API C C S cfg1_out.srec cfg1_out.syms 2 3 9.1 C C 9.1.1 TOPPERS_CFG1_OUT C TOPPERS_CFG1_OUT 1 C 9.2 C C signed_t unsigned_t const signed_t unsigned_t 64 64 32 C C TOPPERS_cfg_magic_number 2

signed_t TOPPERS_cfg_sizeof_signed_t signed_t unsigned_t uint32_t C TOPPERS_cfg_ TOPPERS_cfg_ 9.3 C C 9.3.1 kernel_int.h kernel_int.h 9.3.2 #include #include 9.3.3 target_cfg1_out.h target_cfg1_out.h cfg1_out.c 3