Ignore:
Timestamp:
Mar 8, 2016, 8:37:45 PM (8 years ago)
Author:
coas-nagasima
Message:

MIMEにSJISを設定

Location:
UsbWattMeter/trunk/asp_dcre/syssvc
Files:
13 edited

Legend:

Unmodified
Added
Removed
  • UsbWattMeter/trunk/asp_dcre/syssvc/banner.c

    • Property svn:mime-type changed from text/x-csrc to text/x-csrc; charset=SHIFT_JIS
    r164 r167  
    99 *              Graduate School of Information Science, Nagoya Univ., JAPAN
    1010 *
    11  *  ã‹L’˜ìŒ ŽÒ‚́CˆÈ‰º‚Ì(1)`(4)‚ÌðŒ‚ð–ž‚½‚·ê‡‚ÉŒÀ‚èC–{ƒ\ƒtƒgƒEƒF
    12  *  ƒAi–{ƒ\ƒtƒgƒEƒFƒA‚ð‰ü•Ï‚µ‚½‚à‚Ì‚ðŠÜ‚ށDˆÈ‰º“¯‚¶j‚ðŽg—pE•¡»E‰ü
    13  *  •ÏEÄ”z•ziˆÈ‰ºC—˜—p‚ƌĂԁj‚·‚邱‚Ƃ𖳏ž‚Å‹–‘ø‚·‚éD
    14  *  (1) –{ƒ\ƒtƒgƒEƒFƒA‚ðƒ\[ƒXƒR[ƒh‚ÌŒ`‚Å—˜—p‚·‚éê‡‚ɂ́Cã‹L‚Ì’˜ì
    15  *      Œ •\Ž¦C‚±‚Ì—˜—pðŒ‚¨‚æ‚щº‹L‚Ì–³•ÛØ‹K’肪C‚»‚Ì‚Ü‚Ü‚ÌŒ`‚Ń\[
    16  *      ƒXƒR[ƒh’†‚ÉŠÜ‚Ü‚ê‚Ä‚¢‚邱‚ƁD
    17  *  (2) –{ƒ\ƒtƒgƒEƒFƒA‚ðCƒ‰ƒCƒuƒ‰ƒŠŒ`Ž®‚ȂǁC‘¼‚̃\ƒtƒgƒEƒFƒAŠJ”­‚ÉŽg
    18  *      —p‚Å‚«‚éŒ`‚ōĔz•z‚·‚éê‡‚ɂ́CÄ”z•z‚É”º‚¤ƒhƒLƒ
    19 ƒƒ“ƒgi—˜—p
    20  *      ŽÒƒ}ƒjƒ
    21 ƒAƒ‹‚Ȃǁj‚ɁCã‹L‚Ì’˜ìŒ •\Ž¦C‚±‚Ì—˜—pðŒ‚¨‚æ‚щº‹L
    22  *      ‚Ì–³•ÛØ‹K’è‚ðŒfÚ‚·‚邱‚ƁD
    23  *  (3) –{ƒ\ƒtƒgƒEƒFƒA‚ðC‹@Ší‚É‘g‚ݍž‚ނȂǁC‘¼‚̃\ƒtƒgƒEƒFƒAŠJ”­‚ÉŽg
    24  *      —p‚Å‚«‚È‚¢Œ`‚ōĔz•z‚·‚éê‡‚ɂ́CŽŸ‚Ì‚¢‚¸‚ê‚©‚ÌðŒ‚ð–ž‚½‚·‚±
    25  *      ‚ƁD
    26  *    (a) Ä”z•z‚É”º‚¤ƒhƒLƒ
    27 ƒƒ“ƒgi—˜—pŽÒƒ}ƒjƒ
    28 ƒAƒ‹‚Ȃǁj‚ɁCã‹L‚Ì’˜
    29  *        ìŒ •\Ž¦C‚±‚Ì—˜—pðŒ‚¨‚æ‚щº‹L‚Ì–³•ÛØ‹K’è‚ðŒfÚ‚·‚邱‚ƁD
    30  *    (b) Ä”z•z‚ÌŒ`‘Ô‚ðC•Ê‚É’è‚ß‚é•û–@‚É‚æ‚Á‚āCTOPPERSƒvƒƒWƒFƒNƒg‚É
    31  *        •ñ‚·‚邱‚ƁD
    32  *  (4) –{ƒ\ƒtƒgƒEƒFƒA‚Ì—˜—p‚É‚æ‚è’¼Ú“I‚Ü‚½‚͊ԐړI‚ɐ¶‚¶‚é‚¢‚©‚Ȃ鑹
    33  *      ŠQ‚©‚ç‚àCã‹L’˜ìŒ ŽÒ‚¨‚æ‚ÑTOPPERSƒvƒƒWƒFƒNƒg‚ð–Ɛӂ·‚邱‚ƁD
    34  *      ‚Ü‚½C–{ƒ\ƒtƒgƒEƒFƒA‚̃†[ƒU‚Ü‚½‚̓Gƒ“ƒhƒ†[ƒU‚©‚ç‚Ì‚¢‚©‚Ȃ闝
    35  *      —R‚ÉŠî‚­¿‹‚©‚ç‚àCã‹L’˜ìŒ ŽÒ‚¨‚æ‚ÑTOPPERSƒvƒƒWƒFƒNƒg‚ð
    36  *      –Ɛӂ·‚邱‚ƁD
     11 *  上記著作権者は,以下の(1)〜(4)の条件を満たす場合に限り,本ソフトウェ
     12 *  ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改
     13 *  変・再配布(以下,利用と呼ぶ)することを無償で許諾する.
     14 *  (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
     15 *      権表示,この利用条件および下記の無保証規定が,そのままの形でソー
     16 *      スコード中に含まれていること.
     17 *  (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
     18 *      用できる形で再配布する場合には,再配布に伴うドキュメント(利用
     19 *      者マニュアルなど)に,上記の著作権表示,この利用条件および下記
     20 *      の無保証規定を掲載すること.
     21 *  (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
     22 *      用できない形で再配布する場合には,次のいずれかの条件を満たすこ
     23 *      と.
     24 *    (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著
     25 *        作権表示,この利用条件および下記の無保証規定を掲載すること.
     26 *    (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに
     27 *        報告すること.
     28 *  (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
     29 *      害からも,上記著作権者およびTOPPERSプロジェクトを免責すること.
     30 *      また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理
     31 *      由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを
     32 *      免責すること.
    3733 *
    38  *  –{ƒ\ƒtƒgƒEƒFƒA‚́C–³•ÛØ‚Å’ñ‹Ÿ‚³‚ê‚Ä‚¢‚é‚à‚Ì‚Å‚ ‚éDã‹L’˜ìŒ ŽÒ‚¨
    39  *  ‚æ‚ÑTOPPERSƒvƒƒWƒFƒNƒg‚́C–{ƒ\ƒtƒgƒEƒFƒA‚ÉŠÖ‚µ‚āC“Á’è‚ÌŽg—p–Ú“I
    40  *  ‚ɑ΂·‚é“K‡«‚àŠÜ‚߂āC‚¢‚©‚È‚é•ÛØ‚às‚í‚È‚¢D‚Ü‚½C–{ƒ\ƒtƒgƒEƒF
    41  *  ƒA‚Ì—˜—p‚É‚æ‚è’¼Ú“I‚Ü‚½‚͊ԐړI‚ɐ¶‚¶‚½‚¢‚©‚Ȃ鑹ŠQ‚ÉŠÖ‚µ‚Ä‚àC‚»
    42  *  ‚̐ӔC‚𕉂í‚È‚¢D
     34 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     35 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的
     36 *  に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ
     37 *  アの利用により直接的または間接的に生じたいかなる損害に関しても,そ
     38 *  の責任を負わない.
    4339 *
    4440 *  @(#) $Id$
     
    4642
    4743/*
    48  *              ƒJ[ƒlƒ‹‹N“®ƒƒbƒZ[ƒW‚̏o—Í
     44 *              カーネル起動メッセージの出力
    4945 */
    5046
  • UsbWattMeter/trunk/asp_dcre/syssvc/banner.cfg

    • Property svn:mime-type changed from text/plain to text/plain; charset=SHIFT_JIS
    r164 r167  
    44
    55/*
    6  *              ƒJ[ƒlƒ‹‹N“®ƒƒbƒZ[ƒW‚̏o—͂̃Rƒ“ƒtƒBƒMƒ
    7 ƒŒ[ƒVƒ‡ƒ“ƒtƒ@ƒCƒ‹
     6 *              カーネル起動メッセージの出力のコンフィギュレーションファイル
    87 */
    98
  • UsbWattMeter/trunk/asp_dcre/syssvc/banner.h

    • Property svn:mime-type changed from text/x-chdr to text/x-chdr; charset=SHIFT_JIS
    r164 r167  
    77 *              Graduate School of Information Science, Nagoya Univ., JAPAN
    88 *
    9  *  ã‹L’˜ìŒ ŽÒ‚́CˆÈ‰º‚Ì(1)`(4)‚ÌðŒ‚ð–ž‚½‚·ê‡‚ÉŒÀ‚èC–{ƒ\ƒtƒgƒEƒF
    10  *  ƒAi–{ƒ\ƒtƒgƒEƒFƒA‚ð‰ü•Ï‚µ‚½‚à‚Ì‚ðŠÜ‚ށDˆÈ‰º“¯‚¶j‚ðŽg—pE•¡»E‰ü
    11  *  •ÏEÄ”z•ziˆÈ‰ºC—˜—p‚ƌĂԁj‚·‚邱‚Ƃ𖳏ž‚Å‹–‘ø‚·‚éD
    12  *  (1) –{ƒ\ƒtƒgƒEƒFƒA‚ðƒ\[ƒXƒR[ƒh‚ÌŒ`‚Å—˜—p‚·‚éê‡‚ɂ́Cã‹L‚Ì’˜ì
    13  *      Œ •\Ž¦C‚±‚Ì—˜—pðŒ‚¨‚æ‚щº‹L‚Ì–³•ÛØ‹K’肪C‚»‚Ì‚Ü‚Ü‚ÌŒ`‚Ń\[
    14  *      ƒXƒR[ƒh’†‚ÉŠÜ‚Ü‚ê‚Ä‚¢‚邱‚ƁD
    15  *  (2) –{ƒ\ƒtƒgƒEƒFƒA‚ðCƒ‰ƒCƒuƒ‰ƒŠŒ`Ž®‚ȂǁC‘¼‚̃\ƒtƒgƒEƒFƒAŠJ”­‚ÉŽg
    16  *      —p‚Å‚«‚éŒ`‚ōĔz•z‚·‚éê‡‚ɂ́CÄ”z•z‚É”º‚¤ƒhƒLƒ
    17 ƒƒ“ƒgi—˜—p
    18  *      ŽÒƒ}ƒjƒ
    19 ƒAƒ‹‚Ȃǁj‚ɁCã‹L‚Ì’˜ìŒ •\Ž¦C‚±‚Ì—˜—pðŒ‚¨‚æ‚щº‹L
    20  *      ‚Ì–³•ÛØ‹K’è‚ðŒfÚ‚·‚邱‚ƁD
    21  *  (3) –{ƒ\ƒtƒgƒEƒFƒA‚ðC‹@Ší‚É‘g‚ݍž‚ނȂǁC‘¼‚̃\ƒtƒgƒEƒFƒAŠJ”­‚ÉŽg
    22  *      —p‚Å‚«‚È‚¢Œ`‚ōĔz•z‚·‚éê‡‚ɂ́CŽŸ‚Ì‚¢‚¸‚ê‚©‚ÌðŒ‚ð–ž‚½‚·‚±
    23  *      ‚ƁD
    24  *    (a) Ä”z•z‚É”º‚¤ƒhƒLƒ
    25 ƒƒ“ƒgi—˜—pŽÒƒ}ƒjƒ
    26 ƒAƒ‹‚Ȃǁj‚ɁCã‹L‚Ì’˜
    27  *        ìŒ •\Ž¦C‚±‚Ì—˜—pðŒ‚¨‚æ‚щº‹L‚Ì–³•ÛØ‹K’è‚ðŒfÚ‚·‚邱‚ƁD
    28  *    (b) Ä”z•z‚ÌŒ`‘Ô‚ðC•Ê‚É’è‚ß‚é•û–@‚É‚æ‚Á‚āCTOPPERSƒvƒƒWƒFƒNƒg‚É
    29  *        •ñ‚·‚邱‚ƁD
    30  *  (4) –{ƒ\ƒtƒgƒEƒFƒA‚Ì—˜—p‚É‚æ‚è’¼Ú“I‚Ü‚½‚͊ԐړI‚ɐ¶‚¶‚é‚¢‚©‚Ȃ鑹
    31  *      ŠQ‚©‚ç‚àCã‹L’˜ìŒ ŽÒ‚¨‚æ‚ÑTOPPERSƒvƒƒWƒFƒNƒg‚ð–Ɛӂ·‚邱‚ƁD
    32  *      ‚Ü‚½C–{ƒ\ƒtƒgƒEƒFƒA‚̃†[ƒU‚Ü‚½‚̓Gƒ“ƒhƒ†[ƒU‚©‚ç‚Ì‚¢‚©‚Ȃ闝
    33  *      —R‚ÉŠî‚­¿‹‚©‚ç‚àCã‹L’˜ìŒ ŽÒ‚¨‚æ‚ÑTOPPERSƒvƒƒWƒFƒNƒg‚ð
    34  *      –Ɛӂ·‚邱‚ƁD
     9 *  上記著作権者は,以下の(1)〜(4)の条件を満たす場合に限り,本ソフトウェ
     10 *  ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改
     11 *  変・再配布(以下,利用と呼ぶ)することを無償で許諾する.
     12 *  (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
     13 *      権表示,この利用条件および下記の無保証規定が,そのままの形でソー
     14 *      スコード中に含まれていること.
     15 *  (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
     16 *      用できる形で再配布する場合には,再配布に伴うドキュメント(利用
     17 *      者マニュアルなど)に,上記の著作権表示,この利用条件および下記
     18 *      の無保証規定を掲載すること.
     19 *  (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
     20 *      用できない形で再配布する場合には,次のいずれかの条件を満たすこ
     21 *      と.
     22 *    (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著
     23 *        作権表示,この利用条件および下記の無保証規定を掲載すること.
     24 *    (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに
     25 *        報告すること.
     26 *  (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
     27 *      害からも,上記著作権者およびTOPPERSプロジェクトを免責すること.
     28 *      また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理
     29 *      由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを
     30 *      免責すること.
    3531 *
    36  *  –{ƒ\ƒtƒgƒEƒFƒA‚́C–³•ÛØ‚Å’ñ‹Ÿ‚³‚ê‚Ä‚¢‚é‚à‚Ì‚Å‚ ‚éDã‹L’˜ìŒ ŽÒ‚¨
    37  *  ‚æ‚ÑTOPPERSƒvƒƒWƒFƒNƒg‚́C–{ƒ\ƒtƒgƒEƒFƒA‚ÉŠÖ‚µ‚āC“Á’è‚ÌŽg—p–Ú“I
    38  *  ‚ɑ΂·‚é“K‡«‚àŠÜ‚߂āC‚¢‚©‚È‚é•ÛØ‚às‚í‚È‚¢D‚Ü‚½C–{ƒ\ƒtƒgƒEƒF
    39  *  ƒA‚Ì—˜—p‚É‚æ‚è’¼Ú“I‚Ü‚½‚͊ԐړI‚ɐ¶‚¶‚½‚¢‚©‚Ȃ鑹ŠQ‚ÉŠÖ‚µ‚Ä‚àC‚»
    40  *  ‚̐ӔC‚𕉂í‚È‚¢D
     32 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     33 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的
     34 *  に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ
     35 *  アの利用により直接的または間接的に生じたいかなる損害に関しても,そ
     36 *  の責任を負わない.
    4137 *
    4238 *  @(#) $Id$
     
    4440
    4541/*
    46  *              ƒJ[ƒlƒ‹‹N“®ƒƒbƒZ[ƒW‚̏o—Í
     42 *              カーネル起動メッセージの出力
    4743 */
    4844
     
    5147
    5248/*
    53  *  ƒJ[ƒlƒ‹‹N“®ƒƒbƒZ[ƒW‚̏o—Í
     49 *  カーネル起動メッセージの出力
    5450 */
    5551extern void     print_banner(intptr_t exinf) throw();
  • UsbWattMeter/trunk/asp_dcre/syssvc/logtask.c

    • Property svn:mime-type changed from text/x-csrc to text/x-csrc; charset=SHIFT_JIS
    r164 r167  
    99 *              Graduate School of Information Science, Nagoya Univ., JAPAN
    1010 *
    11  *  ã‹L’˜ìŒ ŽÒ‚́CˆÈ‰º‚Ì(1)`(4)‚ÌðŒ‚ð–ž‚½‚·ê‡‚ÉŒÀ‚èC–{ƒ\ƒtƒgƒEƒF
    12  *  ƒAi–{ƒ\ƒtƒgƒEƒFƒA‚ð‰ü•Ï‚µ‚½‚à‚Ì‚ðŠÜ‚ށDˆÈ‰º“¯‚¶j‚ðŽg—pE•¡»E‰ü
    13  *  •ÏEÄ”z•ziˆÈ‰ºC—˜—p‚ƌĂԁj‚·‚邱‚Ƃ𖳏ž‚Å‹–‘ø‚·‚éD
    14  *  (1) –{ƒ\ƒtƒgƒEƒFƒA‚ðƒ\[ƒXƒR[ƒh‚ÌŒ`‚Å—˜—p‚·‚éê‡‚ɂ́Cã‹L‚Ì’˜ì
    15  *      Œ •\Ž¦C‚±‚Ì—˜—pðŒ‚¨‚æ‚щº‹L‚Ì–³•ÛØ‹K’肪C‚»‚Ì‚Ü‚Ü‚ÌŒ`‚Ń\[
    16  *      ƒXƒR[ƒh’†‚ÉŠÜ‚Ü‚ê‚Ä‚¢‚邱‚ƁD
    17  *  (2) –{ƒ\ƒtƒgƒEƒFƒA‚ðCƒ‰ƒCƒuƒ‰ƒŠŒ`Ž®‚ȂǁC‘¼‚̃\ƒtƒgƒEƒFƒAŠJ”­‚ÉŽg
    18  *      —p‚Å‚«‚éŒ`‚ōĔz•z‚·‚éê‡‚ɂ́CÄ”z•z‚É”º‚¤ƒhƒLƒ
    19 ƒƒ“ƒgi—˜—p
    20  *      ŽÒƒ}ƒjƒ
    21 ƒAƒ‹‚Ȃǁj‚ɁCã‹L‚Ì’˜ìŒ •\Ž¦C‚±‚Ì—˜—pðŒ‚¨‚æ‚щº‹L
    22  *      ‚Ì–³•ÛØ‹K’è‚ðŒfÚ‚·‚邱‚ƁD
    23  *  (3) –{ƒ\ƒtƒgƒEƒFƒA‚ðC‹@Ší‚É‘g‚ݍž‚ނȂǁC‘¼‚̃\ƒtƒgƒEƒFƒAŠJ”­‚ÉŽg
    24  *      —p‚Å‚«‚È‚¢Œ`‚ōĔz•z‚·‚éê‡‚ɂ́CŽŸ‚Ì‚¢‚¸‚ê‚©‚ÌðŒ‚ð–ž‚½‚·‚±
    25  *      ‚ƁD
    26  *    (a) Ä”z•z‚É”º‚¤ƒhƒLƒ
    27 ƒƒ“ƒgi—˜—pŽÒƒ}ƒjƒ
    28 ƒAƒ‹‚Ȃǁj‚ɁCã‹L‚Ì’˜
    29  *        ìŒ •\Ž¦C‚±‚Ì—˜—pðŒ‚¨‚æ‚щº‹L‚Ì–³•ÛØ‹K’è‚ðŒfÚ‚·‚邱‚ƁD
    30  *    (b) Ä”z•z‚ÌŒ`‘Ô‚ðC•Ê‚É’è‚ß‚é•û–@‚É‚æ‚Á‚āCTOPPERSƒvƒƒWƒFƒNƒg‚É
    31  *        •ñ‚·‚邱‚ƁD
    32  *  (4) –{ƒ\ƒtƒgƒEƒFƒA‚Ì—˜—p‚É‚æ‚è’¼Ú“I‚Ü‚½‚͊ԐړI‚ɐ¶‚¶‚é‚¢‚©‚Ȃ鑹
    33  *      ŠQ‚©‚ç‚àCã‹L’˜ìŒ ŽÒ‚¨‚æ‚ÑTOPPERSƒvƒƒWƒFƒNƒg‚ð–Ɛӂ·‚邱‚ƁD
    34  *      ‚Ü‚½C–{ƒ\ƒtƒgƒEƒFƒA‚̃†[ƒU‚Ü‚½‚̓Gƒ“ƒhƒ†[ƒU‚©‚ç‚Ì‚¢‚©‚Ȃ闝
    35  *      —R‚ÉŠî‚­¿‹‚©‚ç‚àCã‹L’˜ìŒ ŽÒ‚¨‚æ‚ÑTOPPERSƒvƒƒWƒFƒNƒg‚ð
    36  *      –Ɛӂ·‚邱‚ƁD
     11 *  上記著作権者は,以下の(1)〜(4)の条件を満たす場合に限り,本ソフトウェ
     12 *  ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改
     13 *  変・再配布(以下,利用と呼ぶ)することを無償で許諾する.
     14 *  (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
     15 *      権表示,この利用条件および下記の無保証規定が,そのままの形でソー
     16 *      スコード中に含まれていること.
     17 *  (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
     18 *      用できる形で再配布する場合には,再配布に伴うドキュメント(利用
     19 *      者マニュアルなど)に,上記の著作権表示,この利用条件および下記
     20 *      の無保証規定を掲載すること.
     21 *  (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
     22 *      用できない形で再配布する場合には,次のいずれかの条件を満たすこ
     23 *      と.
     24 *    (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著
     25 *        作権表示,この利用条件および下記の無保証規定を掲載すること.
     26 *    (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに
     27 *        報告すること.
     28 *  (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
     29 *      害からも,上記著作権者およびTOPPERSプロジェクトを免責すること.
     30 *      また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理
     31 *      由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを
     32 *      免責すること.
    3733 *
    38  *  –{ƒ\ƒtƒgƒEƒFƒA‚́C–³•ÛØ‚Å’ñ‹Ÿ‚³‚ê‚Ä‚¢‚é‚à‚Ì‚Å‚ ‚éDã‹L’˜ìŒ ŽÒ‚¨
    39  *  ‚æ‚ÑTOPPERSƒvƒƒWƒFƒNƒg‚́C–{ƒ\ƒtƒgƒEƒFƒA‚ÉŠÖ‚µ‚āC“Á’è‚ÌŽg—p–Ú“I
    40  *  ‚ɑ΂·‚é“K‡«‚àŠÜ‚߂āC‚¢‚©‚È‚é•ÛØ‚às‚í‚È‚¢D‚Ü‚½C–{ƒ\ƒtƒgƒEƒF
    41  *  ƒA‚Ì—˜—p‚É‚æ‚è’¼Ú“I‚Ü‚½‚͊ԐړI‚ɐ¶‚¶‚½‚¢‚©‚Ȃ鑹ŠQ‚ÉŠÖ‚µ‚Ä‚àC‚»
    42  *  ‚̐ӔC‚𕉂í‚È‚¢D
     34 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     35 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的
     36 *  に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ
     37 *  アの利用により直接的または間接的に生じたいかなる損害に関しても,そ
     38 *  の責任を負わない.
    4339 *
    4440 *  @(#) $Id$
     
    4642
    4743/*
    48  *              ƒVƒXƒeƒ€ƒƒOƒ^ƒXƒN
     44 *              システムログタスク
    4945 */
    5046
     
    5753
    5854/*
    59  *  ƒVƒXƒeƒ€ƒƒOƒ^ƒXƒN‚̏o—͐æ‚̃|[ƒgID
     55 *  システムログタスクの出力先のポートID
    6056 */
    6157static ID       logtask_portid;
    6258
    6359/*
    64  *  ƒVƒŠƒAƒ‹ƒCƒ“ƒ^ƒtƒF[ƒX‚Ö‚Ì1•¶Žšo—Í
     60 *  シリアルインタフェースへの1文字出力
    6561 */
    6662static void
     
    7167
    7268/*
    73  *  ƒVƒXƒeƒ€ƒƒOo—Í‚Ì‘Ò‚¿‡‚킹
     69 *  システムログ出力の待ち合わせ
    7470 */
    7571ER
     
    9288                                if (count == 0U) {
    9389                                        /*
    94                                          *  count‚ª0‚̏ꍇ‚ɂ́CƒVƒŠƒAƒ‹ƒoƒbƒtƒ@‚ª‹ó‚©‚ðŠm
    95                                          *  ”F‚·‚éD
     90                                         *  countが0の場合には,シリアルバッファが空かを確
     91                                         *  認する.
    9692                                         */
    9793                                        if (serial_ref_por(logtask_portid, &rpor) < 0) {
     
    111107
    112108                        /*
    113                          *  LOGTASK_FLUSH_WAITƒ~ƒŠ•b‘҂D
     109                         *  LOGTASK_FLUSH_WAITミリ秒待つ.
    114110                         */
    115111                        rercd = dly_tsk(LOGTASK_FLUSH_WAIT);
     
    126122
    127123/*
    128  *  ƒVƒXƒeƒ€ƒƒOƒ^ƒXƒN‚Ì–{‘Ì
     124 *  システムログタスクの本体
    129125 */
    130126void
     
    161157
    162158/*
    163  *  ƒVƒXƒeƒ€ƒƒOƒ^ƒXƒN‚̏I—¹ˆ—
     159 *  システムログタスクの終了処理
    164160 */
    165161void
     
    172168
    173169        /*
    174          *  ƒVƒŠƒAƒ‹ƒCƒ“ƒ^ƒtƒF[ƒXƒhƒ‰ƒCƒo‚Ì‘—Mƒoƒbƒtƒ@‚É’~Ï‚³‚ꂽƒf[ƒ^
    175          *  ‚ðC’჌ƒxƒ‹o—Í‹@”\‚ð—p‚¢‚ďo—Í‚·‚éD
     170         *  シリアルインタフェースドライバの送信バッファに蓄積されたデータ
     171         *  を,低レベル出力機能を用いて出力する.
    176172         */
    177173        while (serial_get_chr(logtask_portid, &c)) {
     
    180176
    181177        /*
    182          *  ƒƒOƒoƒbƒtƒ@‚É‹L˜^‚³‚ꂽƒƒOî•ñ‚ðC’჌ƒxƒ‹o—Í‹@”\‚ð—p‚¢‚ďo
    183          *  —Í‚·‚éD
     178         *  ログバッファに記録されたログ情報を,低レベル出力機能を用いて出
     179         *  力する.
    184180         */
    185181        while ((rercd = syslog_rea_log(&logbuf)) >= 0) {
    186182                if (!msgflg) {
    187183                        /*
    188                          *  ƒƒOƒoƒbƒtƒ@‚ÉŽc‚Á‚½ƒƒOî•ñ‚Å‚ ‚邱‚Æ‚ðŽ¦‚·•¶Žš—ñ‚ðo
    189                          *  —Í‚·‚éD
     184                         *  ログバッファに残ったログ情報であることを示す文字列を出
     185                         *  力する.
    190186                         */
    191187                        syslog_printf("-- buffered messages --\n", NULL, target_fput_log);
  • UsbWattMeter/trunk/asp_dcre/syssvc/logtask.cfg

    • Property svn:mime-type changed from text/plain to text/plain; charset=SHIFT_JIS
    r164 r167  
    44
    55/*
    6  *              ƒVƒXƒeƒ€ƒƒOƒ^ƒXƒN‚̃Rƒ“ƒtƒBƒMƒ
    7 ƒŒ[ƒVƒ‡ƒ“ƒtƒ@ƒCƒ‹
     6 *              システムログタスクのコンフィギュレーションファイル
    87 */
    98
  • UsbWattMeter/trunk/asp_dcre/syssvc/logtask.h

    • Property svn:mime-type changed from text/x-chdr to text/x-chdr; charset=SHIFT_JIS
    r164 r167  
    99 *              Graduate School of Information Science, Nagoya Univ., JAPAN
    1010 *
    11  *  ã‹L’˜ìŒ ŽÒ‚́CˆÈ‰º‚Ì(1)`(4)‚ÌðŒ‚ð–ž‚½‚·ê‡‚ÉŒÀ‚èC–{ƒ\ƒtƒgƒEƒF
    12  *  ƒAi–{ƒ\ƒtƒgƒEƒFƒA‚ð‰ü•Ï‚µ‚½‚à‚Ì‚ðŠÜ‚ށDˆÈ‰º“¯‚¶j‚ðŽg—pE•¡»E‰ü
    13  *  •ÏEÄ”z•ziˆÈ‰ºC—˜—p‚ƌĂԁj‚·‚邱‚Ƃ𖳏ž‚Å‹–‘ø‚·‚éD
    14  *  (1) –{ƒ\ƒtƒgƒEƒFƒA‚ðƒ\[ƒXƒR[ƒh‚ÌŒ`‚Å—˜—p‚·‚éê‡‚ɂ́Cã‹L‚Ì’˜ì
    15  *      Œ •\Ž¦C‚±‚Ì—˜—pðŒ‚¨‚æ‚щº‹L‚Ì–³•ÛØ‹K’肪C‚»‚Ì‚Ü‚Ü‚ÌŒ`‚Ń\[
    16  *      ƒXƒR[ƒh’†‚ÉŠÜ‚Ü‚ê‚Ä‚¢‚邱‚ƁD
    17  *  (2) –{ƒ\ƒtƒgƒEƒFƒA‚ðCƒ‰ƒCƒuƒ‰ƒŠŒ`Ž®‚ȂǁC‘¼‚̃\ƒtƒgƒEƒFƒAŠJ”­‚ÉŽg
    18  *      —p‚Å‚«‚éŒ`‚ōĔz•z‚·‚éê‡‚ɂ́CÄ”z•z‚É”º‚¤ƒhƒLƒ
    19 ƒƒ“ƒgi—˜—p
    20  *      ŽÒƒ}ƒjƒ
    21 ƒAƒ‹‚Ȃǁj‚ɁCã‹L‚Ì’˜ìŒ •\Ž¦C‚±‚Ì—˜—pðŒ‚¨‚æ‚щº‹L
    22  *      ‚Ì–³•ÛØ‹K’è‚ðŒfÚ‚·‚邱‚ƁD
    23  *  (3) –{ƒ\ƒtƒgƒEƒFƒA‚ðC‹@Ší‚É‘g‚ݍž‚ނȂǁC‘¼‚̃\ƒtƒgƒEƒFƒAŠJ”­‚ÉŽg
    24  *      —p‚Å‚«‚È‚¢Œ`‚ōĔz•z‚·‚éê‡‚ɂ́CŽŸ‚Ì‚¢‚¸‚ê‚©‚ÌðŒ‚ð–ž‚½‚·‚±
    25  *      ‚ƁD
    26  *    (a) Ä”z•z‚É”º‚¤ƒhƒLƒ
    27 ƒƒ“ƒgi—˜—pŽÒƒ}ƒjƒ
    28 ƒAƒ‹‚Ȃǁj‚ɁCã‹L‚Ì’˜
    29  *        ìŒ •\Ž¦C‚±‚Ì—˜—pðŒ‚¨‚æ‚щº‹L‚Ì–³•ÛØ‹K’è‚ðŒfÚ‚·‚邱‚ƁD
    30  *    (b) Ä”z•z‚ÌŒ`‘Ô‚ðC•Ê‚É’è‚ß‚é•û–@‚É‚æ‚Á‚āCTOPPERSƒvƒƒWƒFƒNƒg‚É
    31  *        •ñ‚·‚邱‚ƁD
    32  *  (4) –{ƒ\ƒtƒgƒEƒFƒA‚Ì—˜—p‚É‚æ‚è’¼Ú“I‚Ü‚½‚͊ԐړI‚ɐ¶‚¶‚é‚¢‚©‚Ȃ鑹
    33  *      ŠQ‚©‚ç‚àCã‹L’˜ìŒ ŽÒ‚¨‚æ‚ÑTOPPERSƒvƒƒWƒFƒNƒg‚ð–Ɛӂ·‚邱‚ƁD
    34  *      ‚Ü‚½C–{ƒ\ƒtƒgƒEƒFƒA‚̃†[ƒU‚Ü‚½‚̓Gƒ“ƒhƒ†[ƒU‚©‚ç‚Ì‚¢‚©‚Ȃ闝
    35  *      —R‚ÉŠî‚­¿‹‚©‚ç‚àCã‹L’˜ìŒ ŽÒ‚¨‚æ‚ÑTOPPERSƒvƒƒWƒFƒNƒg‚ð
    36  *      –Ɛӂ·‚邱‚ƁD
     11 *  上記著作権者は,以下の(1)〜(4)の条件を満たす場合に限り,本ソフトウェ
     12 *  ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改
     13 *  変・再配布(以下,利用と呼ぶ)することを無償で許諾する.
     14 *  (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
     15 *      権表示,この利用条件および下記の無保証規定が,そのままの形でソー
     16 *      スコード中に含まれていること.
     17 *  (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
     18 *      用できる形で再配布する場合には,再配布に伴うドキュメント(利用
     19 *      者マニュアルなど)に,上記の著作権表示,この利用条件および下記
     20 *      の無保証規定を掲載すること.
     21 *  (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
     22 *      用できない形で再配布する場合には,次のいずれかの条件を満たすこ
     23 *      と.
     24 *    (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著
     25 *        作権表示,この利用条件および下記の無保証規定を掲載すること.
     26 *    (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに
     27 *        報告すること.
     28 *  (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
     29 *      害からも,上記著作権者およびTOPPERSプロジェクトを免責すること.
     30 *      また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理
     31 *      由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを
     32 *      免責すること.
    3733 *
    38  *  –{ƒ\ƒtƒgƒEƒFƒA‚́C–³•ÛØ‚Å’ñ‹Ÿ‚³‚ê‚Ä‚¢‚é‚à‚Ì‚Å‚ ‚éDã‹L’˜ìŒ ŽÒ‚¨
    39  *  ‚æ‚ÑTOPPERSƒvƒƒWƒFƒNƒg‚́C–{ƒ\ƒtƒgƒEƒFƒA‚ÉŠÖ‚µ‚āC“Á’è‚ÌŽg—p–Ú“I
    40  *  ‚ɑ΂·‚é“K‡«‚àŠÜ‚߂āC‚¢‚©‚È‚é•ÛØ‚às‚í‚È‚¢D‚Ü‚½C–{ƒ\ƒtƒgƒEƒF
    41  *  ƒA‚Ì—˜—p‚É‚æ‚è’¼Ú“I‚Ü‚½‚͊ԐړI‚ɐ¶‚¶‚½‚¢‚©‚Ȃ鑹ŠQ‚ÉŠÖ‚µ‚Ä‚àC‚»
    42  *  ‚̐ӔC‚𕉂í‚È‚¢D
     34 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     35 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的
     36 *  に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ
     37 *  アの利用により直接的または間接的に生じたいかなる損害に関しても,そ
     38 *  の責任を負わない.
    4339 *
    4440 *  @(#) $Id$
     
    4642
    4743/*
    48  *              ƒVƒXƒeƒ€ƒƒOƒ^ƒXƒN
     44 *              システムログタスク
    4945 */
    5046
     
    5955
    6056/*
    61  *  ƒVƒXƒeƒ€ƒƒOƒ^ƒXƒNŠÖ˜A‚̒萔‚̃fƒtƒHƒ‹ƒg’l‚Ì’è‹`
     57 *  システムログタスク関連の定数のデフォルト値の定義
    6258 */
    6359#ifndef LOGTASK_PRIORITY
    64 #define LOGTASK_PRIORITY        3               /* ‰Šú—Dæ“x */
     60#define LOGTASK_PRIORITY        3               /* 初期優先度 */
    6561#endif /* LOGTASK_PRIORITY */
    6662
    6763#ifndef LOGTASK_STACK_SIZE
    68 #define LOGTASK_STACK_SIZE      1024    /* ƒXƒ^ƒbƒN—̈æ‚̃TƒCƒY */
     64#define LOGTASK_STACK_SIZE      1024    /* スタック領域のサイズ */
    6965#endif /* LOGTASK_STACK_SIZE */
    7066
    7167#ifndef LOGTASK_PORTID
    72 #define LOGTASK_PORTID          1               /* ƒVƒXƒeƒ€ƒƒO—p‚̃VƒŠƒAƒ‹ƒ|[ƒg”ԍ† */
     68#define LOGTASK_PORTID          1               /* システムログ用のシリアルポート番号 */
    7369#endif /* LOGTASK_PORTID */
    7470
    7571#ifndef LOGTASK_INTERVAL
    76 #define LOGTASK_INTERVAL        10U             /* ƒVƒXƒeƒ€ƒƒOƒ^ƒXƒN‚Ì“®ìŠÔŠuiƒ~ƒŠ•bj*/
     72#define LOGTASK_INTERVAL        10U             /* システムログタスクの動作間隔(ミリ秒)*/
    7773#endif /* LOGTASK_INTERVAL */
    7874
    7975#ifndef LOGTASK_FLUSH_WAIT
    80 #define LOGTASK_FLUSH_WAIT      1U              /* ƒtƒ‰ƒbƒVƒ
    81 ‘Ò‚¿‚Ì’PˆÊŽžŠÔiƒ~ƒŠ•bj*/
     76#define LOGTASK_FLUSH_WAIT      1U              /* フラッシュ待ちの単位時間(ミリ秒)*/
    8277#endif /* LOGTASK_FLUSH_WAIT */
    8378
    8479/*
    85  *  ƒVƒXƒeƒ€ƒƒOo—Í‚Ì‘Ò‚¿‡‚킹
     80 *  システムログ出力の待ち合わせ
    8681 *
    87  *  ƒƒOƒoƒbƒtƒ@’†‚̃ƒO‚̐”‚ªcountˆÈ‰º‚É‚È‚é‚܂ő҂Dcount‚ª0‚̏ꍇ‚É
    88  *  ‚́CƒVƒŠƒAƒ‹ƒoƒbƒtƒ@‚ª‹ó‚É‚È‚é‚Ì‚à‘҂D
     82 *  ログバッファ中のログの数がcount以下になるまで待つ.countが0の場合に
     83 *  は,シリアルバッファが空になるのも待つ.
    8984 */
    9085extern ER       logtask_flush(uint_t count) throw();
    9186
    9287/*
    93  *  ƒVƒXƒeƒ€ƒƒOƒ^ƒXƒN‚Ì–{‘Ì
     88 *  システムログタスクの本体
    9489 */
    9590extern void     logtask_main(intptr_t exinf) throw();
    9691
    9792/*
    98  *  ƒVƒXƒeƒ€ƒƒOƒ^ƒXƒN‚̏I—¹ˆ—
     93 *  システムログタスクの終了処理
    9994 */
    10095extern void     logtask_terminate(intptr_t exinf) throw();
  • UsbWattMeter/trunk/asp_dcre/syssvc/serial.c

    • Property svn:mime-type changed from text/x-csrc to text/x-csrc; charset=SHIFT_JIS
    r164 r167  
    99 *              Graduate School of Information Science, Nagoya Univ., JAPAN
    1010 *
    11  *  ã‹L’˜ìŒ ŽÒ‚́CˆÈ‰º‚Ì(1)`(4)‚ÌðŒ‚ð–ž‚½‚·ê‡‚ÉŒÀ‚èC–{ƒ\ƒtƒgƒEƒF
    12  *  ƒAi–{ƒ\ƒtƒgƒEƒFƒA‚ð‰ü•Ï‚µ‚½‚à‚Ì‚ðŠÜ‚ށDˆÈ‰º“¯‚¶j‚ðŽg—pE•¡»E‰ü
    13  *  •ÏEÄ”z•ziˆÈ‰ºC—˜—p‚ƌĂԁj‚·‚邱‚Ƃ𖳏ž‚Å‹–‘ø‚·‚éD
    14  *  (1) –{ƒ\ƒtƒgƒEƒFƒA‚ðƒ\[ƒXƒR[ƒh‚ÌŒ`‚Å—˜—p‚·‚éê‡‚ɂ́Cã‹L‚Ì’˜ì
    15  *      Œ •\Ž¦C‚±‚Ì—˜—pðŒ‚¨‚æ‚щº‹L‚Ì–³•ÛØ‹K’肪C‚»‚Ì‚Ü‚Ü‚ÌŒ`‚Ń\[
    16  *      ƒXƒR[ƒh’†‚ÉŠÜ‚Ü‚ê‚Ä‚¢‚邱‚ƁD
    17  *  (2) –{ƒ\ƒtƒgƒEƒFƒA‚ðCƒ‰ƒCƒuƒ‰ƒŠŒ`Ž®‚ȂǁC‘¼‚̃\ƒtƒgƒEƒFƒAŠJ”­‚ÉŽg
    18  *      —p‚Å‚«‚éŒ`‚ōĔz•z‚·‚éê‡‚ɂ́CÄ”z•z‚É”º‚¤ƒhƒLƒ
    19 ƒƒ“ƒgi—˜—p
    20  *      ŽÒƒ}ƒjƒ
    21 ƒAƒ‹‚Ȃǁj‚ɁCã‹L‚Ì’˜ìŒ •\Ž¦C‚±‚Ì—˜—pðŒ‚¨‚æ‚щº‹L
    22  *      ‚Ì–³•ÛØ‹K’è‚ðŒfÚ‚·‚邱‚ƁD
    23  *  (3) –{ƒ\ƒtƒgƒEƒFƒA‚ðC‹@Ší‚É‘g‚ݍž‚ނȂǁC‘¼‚̃\ƒtƒgƒEƒFƒAŠJ”­‚ÉŽg
    24  *      —p‚Å‚«‚È‚¢Œ`‚ōĔz•z‚·‚éê‡‚ɂ́CŽŸ‚Ì‚¢‚¸‚ê‚©‚ÌðŒ‚ð–ž‚½‚·‚±
    25  *      ‚ƁD
    26  *    (a) Ä”z•z‚É”º‚¤ƒhƒLƒ
    27 ƒƒ“ƒgi—˜—pŽÒƒ}ƒjƒ
    28 ƒAƒ‹‚Ȃǁj‚ɁCã‹L‚Ì’˜
    29  *        ìŒ •\Ž¦C‚±‚Ì—˜—pðŒ‚¨‚æ‚щº‹L‚Ì–³•ÛØ‹K’è‚ðŒfÚ‚·‚邱‚ƁD
    30  *    (b) Ä”z•z‚ÌŒ`‘Ô‚ðC•Ê‚É’è‚ß‚é•û–@‚É‚æ‚Á‚āCTOPPERSƒvƒƒWƒFƒNƒg‚É
    31  *        •ñ‚·‚邱‚ƁD
    32  *  (4) –{ƒ\ƒtƒgƒEƒFƒA‚Ì—˜—p‚É‚æ‚è’¼Ú“I‚Ü‚½‚͊ԐړI‚ɐ¶‚¶‚é‚¢‚©‚Ȃ鑹
    33  *      ŠQ‚©‚ç‚àCã‹L’˜ìŒ ŽÒ‚¨‚æ‚ÑTOPPERSƒvƒƒWƒFƒNƒg‚ð–Ɛӂ·‚邱‚ƁD
    34  *      ‚Ü‚½C–{ƒ\ƒtƒgƒEƒFƒA‚̃†[ƒU‚Ü‚½‚̓Gƒ“ƒhƒ†[ƒU‚©‚ç‚Ì‚¢‚©‚Ȃ闝
    35  *      —R‚ÉŠî‚­¿‹‚©‚ç‚àCã‹L’˜ìŒ ŽÒ‚¨‚æ‚ÑTOPPERSƒvƒƒWƒFƒNƒg‚ð
    36  *      –Ɛӂ·‚邱‚ƁD
     11 *  上記著作権者は,以下の(1)〜(4)の条件を満たす場合に限り,本ソフトウェ
     12 *  ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改
     13 *  変・再配布(以下,利用と呼ぶ)することを無償で許諾する.
     14 *  (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
     15 *      権表示,この利用条件および下記の無保証規定が,そのままの形でソー
     16 *      スコード中に含まれていること.
     17 *  (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
     18 *      用できる形で再配布する場合には,再配布に伴うドキュメント(利用
     19 *      者マニュアルなど)に,上記の著作権表示,この利用条件および下記
     20 *      の無保証規定を掲載すること.
     21 *  (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
     22 *      用できない形で再配布する場合には,次のいずれかの条件を満たすこ
     23 *      と.
     24 *    (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著
     25 *        作権表示,この利用条件および下記の無保証規定を掲載すること.
     26 *    (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに
     27 *        報告すること.
     28 *  (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
     29 *      害からも,上記著作権者およびTOPPERSプロジェクトを免責すること.
     30 *      また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理
     31 *      由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを
     32 *      免責すること.
    3733 *
    38  *  –{ƒ\ƒtƒgƒEƒFƒA‚́C–³•ÛØ‚Å’ñ‹Ÿ‚³‚ê‚Ä‚¢‚é‚à‚Ì‚Å‚ ‚éDã‹L’˜ìŒ ŽÒ‚¨
    39  *  ‚æ‚ÑTOPPERSƒvƒƒWƒFƒNƒg‚́C–{ƒ\ƒtƒgƒEƒFƒA‚ÉŠÖ‚µ‚āC“Á’è‚ÌŽg—p–Ú“I
    40  *  ‚ɑ΂·‚é“K‡«‚àŠÜ‚߂āC‚¢‚©‚È‚é•ÛØ‚às‚í‚È‚¢D‚Ü‚½C–{ƒ\ƒtƒgƒEƒF
    41  *  ƒA‚Ì—˜—p‚É‚æ‚è’¼Ú“I‚Ü‚½‚͊ԐړI‚ɐ¶‚¶‚½‚¢‚©‚Ȃ鑹ŠQ‚ÉŠÖ‚µ‚Ä‚àC‚»
    42  *  ‚̐ӔC‚𕉂í‚È‚¢D
     34 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     35 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的
     36 *  に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ
     37 *  アの利用により直接的または間接的に生じたいかなる損害に関しても,そ
     38 *  の責任を負わない.
    4339 *
    4440 *  @(#) $Id$
     
    4642
    4743/*
    48  *              ƒVƒŠƒAƒ‹ƒCƒ“ƒ^ƒtƒF[ƒXƒhƒ‰ƒCƒo
     44 *              シリアルインタフェースドライバ
    4945 */
    5046
     
    5753
    5854/*
    59  *  ƒoƒbƒtƒ@ƒTƒCƒY‚̃fƒtƒHƒ‹ƒg’l‚ƃoƒbƒtƒ@‚Ì’è‹`
     55 *  バッファサイズのデフォルト値とバッファの定義
    6056 */
    6157#ifndef SERIAL_RCV_BUFSZ1
    62 #define SERIAL_RCV_BUFSZ1       256                     /* ƒ|[ƒg1‚ÌŽóMƒoƒbƒtƒ@ƒTƒCƒY */
     58#define SERIAL_RCV_BUFSZ1       256                     /* ポート1の受信バッファサイズ */
    6359#endif /* SERIAL_RCV_BUFSZ1 */
    6460
    6561#ifndef SERIAL_SND_BUFSZ1
    66 #define SERIAL_SND_BUFSZ1       256                     /* ƒ|[ƒg1‚Ì‘—Mƒoƒbƒtƒ@ƒTƒCƒY */
     62#define SERIAL_SND_BUFSZ1       256                     /* ポート1の送信バッファサイズ */
    6763#endif /* SERIAL_SND_BUFSZ1 */
    6864
     
    7066static char     snd_buffer1[SERIAL_SND_BUFSZ1];
    7167
    72 #if TNUM_PORT >= 2                                              /* ƒ|[ƒg2‚ÉŠÖ‚·‚é’è‹` */
     68#if TNUM_PORT >= 2                                              /* ポート2に関する定義 */
    7369
    7470#ifndef SERIAL_RCV_BUFSZ2
    75 #define SERIAL_RCV_BUFSZ2       256                     /* ƒ|[ƒg2‚ÌŽóMƒoƒbƒtƒ@ƒTƒCƒY */
     71#define SERIAL_RCV_BUFSZ2       256                     /* ポート2の受信バッファサイズ */
    7672#endif /* SERIAL_RCV_BUFSZ2 */
    7773
    7874#ifndef SERIAL_SND_BUFSZ2
    79 #define SERIAL_SND_BUFSZ2       256                     /* ƒ|[ƒg2‚Ì‘—Mƒoƒbƒtƒ@ƒTƒCƒY */
     75#define SERIAL_SND_BUFSZ2       256                     /* ポート2の送信バッファサイズ */
    8076#endif /* SERIAL_SND_BUFSZ2 */
    8177
     
    8581#endif /* TNUM_PORT >= 2 */
    8682
    87 #if TNUM_PORT >= 3                                              /* ƒ|[ƒg3‚ÉŠÖ‚·‚é’è‹` */
     83#if TNUM_PORT >= 3                                              /* ポート3に関する定義 */
    8884
    8985#ifndef SERIAL_RCV_BUFSZ3
    90 #define SERIAL_RCV_BUFSZ3       256                     /* ƒ|[ƒg3‚ÌŽóMƒoƒbƒtƒ@ƒTƒCƒY */
     86#define SERIAL_RCV_BUFSZ3       256                     /* ポート3の受信バッファサイズ */
    9187#endif /* SERIAL_RCV_BUFSZ3 */
    9288
    9389#ifndef SERIAL_SND_BUFSZ3
    94 #define SERIAL_SND_BUFSZ3       256                     /* ƒ|[ƒg3‚Ì‘—Mƒoƒbƒtƒ@ƒTƒCƒY */
     90#define SERIAL_SND_BUFSZ3       256                     /* ポート3の送信バッファサイズ */
    9591#endif /* SERIAL_SND_BUFSZ3 */
    9692
     
    10096#endif /* TNUM_PORT >= 3 */
    10197
    102 #if TNUM_PORT >= 4                                              /* ƒ|[ƒg4‚ÉŠÖ‚·‚é’è‹` */
     98#if TNUM_PORT >= 4                                              /* ポート4に関する定義 */
    10399
    104100#ifndef SERIAL_RCV_BUFSZ4
    105 #define SERIAL_RCV_BUFSZ4       256                     /* ƒ|[ƒg4‚ÌŽóMƒoƒbƒtƒ@ƒTƒCƒY */
     101#define SERIAL_RCV_BUFSZ4       256                     /* ポート4の受信バッファサイズ */
    106102#endif /* SERIAL_RCV_BUFSZ4 */
    107103
    108104#ifndef SERIAL_SND_BUFSZ4
    109 #define SERIAL_SND_BUFSZ4       256                     /* ƒ|[ƒg4‚Ì‘—Mƒoƒbƒtƒ@ƒTƒCƒY */
     105#define SERIAL_SND_BUFSZ4       256                     /* ポート4の送信バッファサイズ */
    110106#endif /* SERIAL_SND_BUFSZ4 */
    111107
     
    115111#endif /* TNUM_PORT >= 4 */
    116112
    117 #if TNUM_PORT >= 5                                              /* ƒ|[ƒg5‚ÉŠÖ‚·‚é’è‹` */
     113#if TNUM_PORT >= 5                                              /* ポート5に関する定義 */
    118114
    119115#ifndef SERIAL_RCV_BUFSZ5
    120 #define SERIAL_RCV_BUFSZ5       256                     /* ƒ|[ƒg5‚ÌŽóMƒoƒbƒtƒ@ƒTƒCƒY */
     116#define SERIAL_RCV_BUFSZ5       256                     /* ポート5の受信バッファサイズ */
    121117#endif /* SERIAL_RCV_BUFSZ5 */
    122118
    123119#ifndef SERIAL_SND_BUFSZ5
    124 #define SERIAL_SND_BUFSZ5       256                     /* ƒ|[ƒg5‚Ì‘—Mƒoƒbƒtƒ@ƒTƒCƒY */
     120#define SERIAL_SND_BUFSZ5       256                     /* ポート5の送信バッファサイズ */
    125121#endif /* SERIAL_SND_BUFSZ5 */
    126122
     
    130126#endif /* TNUM_PORT >= 5 */
    131127
    132 #if TNUM_PORT >= 6                                              /* ƒ|[ƒg6‚ÉŠÖ‚·‚é’è‹` */
     128#if TNUM_PORT >= 6                                              /* ポート6に関する定義 */
    133129
    134130#ifndef SERIAL_RCV_BUFSZ6
    135 #define SERIAL_RCV_BUFSZ6       256                     /* ƒ|[ƒg6‚ÌŽóMƒoƒbƒtƒ@ƒTƒCƒY */
     131#define SERIAL_RCV_BUFSZ6       256                     /* ポート6の受信バッファサイズ */
    136132#endif /* SERIAL_RCV_BUFSZ6 */
    137133
    138134#ifndef SERIAL_SND_BUFSZ6
    139 #define SERIAL_SND_BUFSZ6       256                     /* ƒ|[ƒg6‚Ì‘—Mƒoƒbƒtƒ@ƒTƒCƒY */
     135#define SERIAL_SND_BUFSZ6       256                     /* ポート6の送信バッファサイズ */
    140136#endif /* SERIAL_SND_BUFSZ6 */
    141137
     
    150146
    151147/*
    152  *  ƒtƒ[§Œä‚ÉŠÖ˜A‚·‚é’萔‚ƃ}ƒNƒ
    153  */
    154 #define FC_STOP                 '\023'          /* ƒRƒ“ƒgƒ[ƒ‹-S */
    155 #define FC_START                '\021'          /* ƒRƒ“ƒgƒ[ƒ‹-Q */
    156 
    157 #define BUFCNT_STOP(bufsz)              ((bufsz) * 3 / 4)       /* STOP‚ð‘—‚éŠî€•¶Žš” */
    158 #define BUFCNT_START(bufsz)             ((bufsz) / 2)           /* START‚ð‘—‚éŠî€•¶Žš” */
    159 
    160 /*
    161  *  ƒVƒŠƒAƒ‹ƒ|[ƒg‰Šú‰»ƒuƒƒbƒN
     148 *  フロー制御に関連する定数とマクロ
     149 */
     150#define FC_STOP                 '\023'          /* コントロール-S */
     151#define FC_START                '\021'          /* コントロール-Q */
     152
     153#define BUFCNT_STOP(bufsz)              ((bufsz) * 3 / 4)       /* STOPを送る基準文字数 */
     154#define BUFCNT_START(bufsz)             ((bufsz) / 2)           /* STARTを送る基準文字数 */
     155
     156/*
     157 *  シリアルポート初期化ブロック
    162158 */
    163159typedef struct serial_port_initialization_block {
    164         ID              rcv_semid;              /* ŽóMƒoƒbƒtƒ@ŠÇ——pƒZƒ}ƒtƒH‚ÌID */
    165         ID              snd_semid;              /* ‘—Mƒoƒbƒtƒ@ŠÇ——pƒZƒ}ƒtƒH‚ÌID */
    166         uint_t  rcv_bufsz;              /* ŽóMƒoƒbƒtƒ@ƒTƒCƒY */
    167         char    *rcv_buffer;    /* ŽóMƒoƒbƒtƒ@ */
    168         uint_t  snd_bufsz;              /* ‘—Mƒoƒbƒtƒ@ƒTƒCƒY */
    169         char    *snd_buffer;    /* ‘—Mƒoƒbƒtƒ@ */
     160        ID              rcv_semid;              /* 受信バッファ管理用セマフォのID */
     161        ID              snd_semid;              /* 送信バッファ管理用セマフォのID */
     162        uint_t  rcv_bufsz;              /* 受信バッファサイズ */
     163        char    *rcv_buffer;    /* 受信バッファ */
     164        uint_t  snd_bufsz;              /* 送信バッファサイズ */
     165        char    *snd_buffer;    /* 送信バッファ */
    170166} SPINIB;
    171167
     
    192188
    193189/*
    194  *  ƒVƒŠƒAƒ‹ƒ|[ƒgŠÇ—ƒuƒƒbƒN
     190 *  シリアルポート管理ブロック
    195191 */
    196192typedef struct serial_port_control_block {
    197         const SPINIB *p_spinib;         /* ƒVƒŠƒAƒ‹ƒ|[ƒg‰Šú‰»ƒuƒƒbƒN */
    198         SIOPCB  *p_siopcb;                      /* ƒVƒŠƒAƒ‹I/Oƒ|[ƒgŠÇ—ƒuƒƒbƒN */
    199         bool_t  openflag;                       /* ƒI[ƒvƒ“Ï‚݃tƒ‰ƒO */
    200         bool_t  errorflag;                      /* ƒGƒ‰[ƒtƒ‰ƒO */
    201         uint_t  ioctl;                          /* “®ì§Œä‚̐ݒè’l */
    202 
    203         uint_t  rcv_read_ptr;           /* ŽóMƒoƒbƒtƒ@“Ǐo‚µƒ|ƒCƒ“ƒ^ */
    204         uint_t  rcv_write_ptr;          /* ŽóMƒoƒbƒtƒ@‘ž‚݃|ƒCƒ“ƒ^ */
    205         uint_t  rcv_count;                      /* ŽóMƒoƒbƒtƒ@’†‚Ì•¶Žš” */
    206         char    rcv_fc_chr;                     /* ‘—‚é‚ׂ«START/STOP */
    207         bool_t  rcv_stopped;            /* STOP‚ð‘—‚Á‚½ó‘Ô‚©H */
    208 
    209         uint_t  snd_read_ptr;           /* ‘—Mƒoƒbƒtƒ@“Ǐo‚µƒ|ƒCƒ“ƒ^ */
    210         uint_t  snd_write_ptr;          /* ‘—Mƒoƒbƒtƒ@‘ž‚݃|ƒCƒ“ƒ^ */
    211         uint_t  snd_count;                      /* ‘—Mƒoƒbƒtƒ@’†‚Ì•¶Žš” */
    212         bool_t  snd_stopped;            /* STOP‚ðŽó‚¯Žæ‚Á‚½ó‘Ô‚©H */
     193        const SPINIB *p_spinib;         /* シリアルポート初期化ブロック */
     194        SIOPCB  *p_siopcb;                      /* シリアルI/Oポート管理ブロック */
     195        bool_t  openflag;                       /* オープン済みフラグ */
     196        bool_t  errorflag;                      /* エラーフラグ */
     197        uint_t  ioctl;                          /* 動作制御の設定値 */
     198
     199        uint_t  rcv_read_ptr;           /* 受信バッファ読出しポインタ */
     200        uint_t  rcv_write_ptr;          /* 受信バッファ書込みポインタ */
     201        uint_t  rcv_count;                      /* 受信バッファ中の文字数 */
     202        char    rcv_fc_chr;                     /* 送るべきSTART/STOP */
     203        bool_t  rcv_stopped;            /* STOPを送った状態か? */
     204
     205        uint_t  snd_read_ptr;           /* 送信バッファ読出しポインタ */
     206        uint_t  snd_write_ptr;          /* 送信バッファ書込みポインタ */
     207        uint_t  snd_count;                      /* 送信バッファ中の文字数 */
     208        bool_t  snd_stopped;            /* STOPを受け取った状態か? */
    213209} SPCB;
    214210
     
    216212
    217213/*
    218  *  ƒVƒŠƒAƒ‹ƒ|[ƒgID‚©‚çƒVƒŠƒAƒ‹ƒ|[ƒgŠÇ—ƒuƒƒbƒN‚ðŽæ‚èo‚·‚½‚߂̃}ƒNƒ
     214 *  シリアルポートIDからシリアルポート管理ブロックを取り出すためのマクロ
    219215 */
    220216#define INDEX_PORT(portid)      ((uint_t)((portid) - 1))
     
    222218
    223219/*
    224  *  ƒ|ƒCƒ“ƒ^‚̃Cƒ“ƒNƒŠƒƒ“ƒg
     220 *  ポインタのインクリメント
    225221 */
    226222#define INC_PTR(ptr, bufsz) do {        \
     
    231227
    232228/*
    233  *  ƒT[ƒrƒXƒR[ƒ‹ŒÄo‚µƒ}ƒNƒ
     229 *  サービスコール呼出しマクロ
    234230 *
    235  *  ƒT[ƒrƒXƒR[ƒ‹ŒÄo‚µ‚ðŠÜ‚ÞŽ®exp‚ð•]‰¿‚µC•Ô’l‚ªƒGƒ‰[i•‰‚Ì’lj‚̏ê
    236  *  ‡‚ɂ́Cerc‚Éercd_exp‚ð•]‰¿‚µ‚½’l‚ð‘ã“ü‚µCerror_exit‚Égoto‚·‚éD
     231 *  サービスコール呼出しを含む式expを評価し,返値がエラー(負の値)の場
     232 *  合には,ercにercd_expを評価した値を代入し,error_exitにgotoする.
    237233 */
    238234#define SVC(exp, ercd_exp) do {         \
     
    244240
    245241/*
    246  *  E_SYSƒGƒ‰[‚̐¶¬
     242 *  E_SYSエラーの生成
    247243 */
    248244static ER
     
    254250
    255251/*
    256  *  ‘Ò‚¿‚É“ü‚éƒT[ƒrƒXƒR[ƒ‹‚©‚ç‚̃Gƒ‰[‚Ì•ÏŠ·
     252 *  待ちに入るサービスコールからのエラーの変換
    257253 */
    258254static ER
     
    270266
    271267/*
    272  *  ƒVƒŠƒAƒ‹ƒCƒ“ƒ^ƒtƒF[ƒXƒhƒ‰ƒCƒo‚̏‰Šú‰»ƒ‹[ƒ`ƒ“
     268 *  シリアルインタフェースドライバの初期化ルーチン
    273269 */
    274270void
     
    286282
    287283/*
    288  *  ƒVƒŠƒAƒ‹ƒ|[ƒg‚̃I[ƒvƒ“iƒT[ƒrƒXƒR[ƒ‹j
     284 *  シリアルポートのオープン(サービスコール)
    289285 */
    290286ER
     
    294290        ER              ercd;
    295291
    296         if (sns_dpn()) {                                /* ƒRƒ“ƒeƒLƒXƒg‚̃`ƒFƒbƒN */
     292        if (sns_dpn()) {                                /* コンテキストのチェック */
    297293                return(E_CTX);
    298294        }
    299295        if (!(1 <= portid && portid <= TNUM_PORT)) {
    300                 return(E_ID);                           /* ƒ|[ƒg”ԍ†‚̃`ƒFƒbƒN */
     296                return(E_ID);                           /* ポート番号のチェック */
    301297        }
    302298        p_spcb = get_spcb(portid);
    303299
    304300        SVC(dis_dsp(), gen_ercd_sys(p_spcb));
    305         if (p_spcb->openflag) {                 /* ƒI[ƒvƒ“Ï‚Ý‚©‚̃`ƒFƒbƒN */
     301        if (p_spcb->openflag) {                 /* オープン済みかのチェック */
    306302                ercd = E_OBJ;
    307303        }
    308304        else {
    309305                /*
    310                  *  •Ï”‚̏‰Šú‰»
     306                 *  変数の初期化
    311307                 */
    312308                p_spcb->ioctl = (IOCTL_ECHO | IOCTL_CRLF | IOCTL_FCSND | IOCTL_FCRCV);
     
    324320
    325321                /*
    326                  *  ‚±‚êˆÈ~CŠ„ž‚Ý‚ð‹ÖŽ~‚·‚éD
     322                 *  これ以降,割込みを禁止する.
    327323                 */
    328324                if (loc_cpu() < 0) {
     
    332328
    333329                /*
    334                  *  ƒn[ƒhƒEƒFƒAˆË‘¶‚̃I[ƒvƒ“ˆ—
     330                 *  ハードウェア依存のオープン処理
    335331                 */
    336332                p_spcb->p_siopcb = sio_opn_por(portid, (intptr_t) p_spcb);
    337333
    338334                /*
    339                  *  ŽóM’Ê’mƒR[ƒ‹ƒoƒbƒN‚ð‹–‰Â‚·‚éD
     335                 *  受信通知コールバックを許可する.
    340336                 */
    341337                sio_ena_cbr(p_spcb->p_siopcb, SIO_RDY_RCV);
     
    359355
    360356/*
    361  *  ƒVƒŠƒAƒ‹ƒ|[ƒg‚̃Nƒ[ƒYiƒT[ƒrƒXƒR[ƒ‹j
     357 *  シリアルポートのクローズ(サービスコール)
    362358 */
    363359ER
     
    368364        bool_t  eflag = false;
    369365
    370         if (sns_dpn()) {                                /* ƒRƒ“ƒeƒLƒXƒg‚̃`ƒFƒbƒN */
     366        if (sns_dpn()) {                                /* コンテキストのチェック */
    371367                return(E_CTX);
    372368        }
    373369        if (!(1 <= portid && portid <= TNUM_PORT)) {
    374                 return(E_ID);                           /* ƒ|[ƒg”ԍ†‚̃`ƒFƒbƒN */
     370                return(E_ID);                           /* ポート番号のチェック */
    375371        }
    376372        p_spcb = get_spcb(portid);
    377373
    378374        SVC(dis_dsp(), gen_ercd_sys(p_spcb));
    379         if (!(p_spcb->openflag)) {              /* ƒI[ƒvƒ“Ï‚Ý‚©‚̃`ƒFƒbƒN */
     375        if (!(p_spcb->openflag)) {              /* オープン済みかのチェック */
    380376                ercd = E_OBJ;
    381377        }
    382378        else {
    383379                /*
    384                  *  ƒn[ƒhƒEƒFƒAˆË‘¶‚̃Nƒ[ƒYˆ—
     380                 *  ハードウェア依存のクローズ処理
    385381                 */
    386382                if (loc_cpu() < 0) {
     
    394390
    395391                /*
    396                  *  ƒZƒ}ƒtƒH‚̏‰Šú‰»
     392                 *  セマフォの初期化
    397393                 */
    398394                if (ini_sem(p_spcb->p_spinib->snd_semid) < 0) {
     
    404400
    405401                /*
    406                  *  ƒGƒ‰[ƒR[ƒh‚̐ݒè
     402                 *  エラーコードの設定
    407403                 */
    408404                if (eflag) {
     
    420416
    421417/*
    422  *  ƒVƒŠƒAƒ‹ƒ|[ƒg‚Ö‚Ì•¶Žš‘—M
     418 *  シリアルポートへの文字送信
    423419 *
    424  *  p_spcb‚ÅŽw’肳‚ê‚éƒVƒŠƒAƒ‹I/Oƒ|[ƒg‚ɑ΂µ‚āC•¶Žšc‚𑗐M‚·‚éD•¶Žš
    425  *  ‚𑗐MƒŒƒWƒXƒ^‚É‚¢‚ꂽê‡‚É‚Ítrue‚ð•Ô‚·D‚»‚¤‚Å‚È‚¢ê‡‚ɂ́C‘—M
    426  *  ƒŒƒWƒXƒ^‚ª‹ó‚¢‚½‚±‚Æ‚ð’Ê’m‚·‚éƒR[ƒ‹ƒoƒbƒNŠÖ”‚ð‹–‰Â‚µCfalse‚ð•Ô‚·D
    427  *  ‚±‚̊֐”‚́CCPUƒƒbƒNó‘ԂŌĂяo‚³‚ê‚éD
     420 *  p_spcbで指定されるシリアルI/Oポートに対して,文字cを送信する.文字
     421 *  を送信レジスタにいれた場合にはtrueを返す.そうでない場合には,送信
     422 *  レジスタが空いたことを通知するコールバック関数を許可し,falseを返す.
     423 *  この関数は,CPUロック状態で呼び出される.
    428424 */
    429425Inline bool_t
     
    440436
    441437/*
    442  *  ƒVƒŠƒAƒ‹ƒ|[ƒg‚Ö‚Ì1•¶Žš‘—M
     438 *  シリアルポートへの1文字送信
    443439 */
    444440static ER_BOOL
     
    449445
    450446        /*
    451          *  LF‚Ì‘O‚ÉCR‚𑗐M‚·‚éD
     447         *  LFの前にCRを送信する.
    452448         */
    453449        if (c == '\n' && (p_spcb->ioctl & IOCTL_CRLF) != 0U) {
    454450                /*
    455                  *  ˆÈ‰º‚̃R[ƒh‚͍ċAŒÄo‚µ‚É‚È‚Á‚Ä‚¢‚邪Cˆø”c‚ª'\n'‚̏ꍇ‚É
    456                  *  ˆø”c‚ð'\r'‚Æ‚µ‚ČĂяo‚·‚±‚Æ‚©‚çC‚±‚̍ċAŒÄo‚µ‚Í2‰ñ–Ú‚Ì
    457                  *  ŒÄ‚яo‚µ‚Å•K‚¸Ž~‚Ü‚éD
     451                 *  以下のコードは再帰呼出しになっているが,引数cが'\n'の場合に
     452                 *  引数cを'\r'として呼び出すことから,この再帰呼出しは2回目の
     453                 *  呼び出しで必ず止まる.
    458454                 */
    459455                SVC(rercd = serial_wri_chr(p_spcb, '\r'), rercd);
     
    468464                                                                && serial_snd_chr(p_spcb, c)) {
    469465                /*
    470                  *  ƒVƒŠƒAƒ‹I/OƒfƒoƒCƒX‚Ì‘—MƒŒƒWƒXƒ^‚É•¶Žš‚ð“ü‚ê‚邱‚Ƃɐ¬Œ÷‚µ
    471                  *  ‚½ê‡D
     466                 *  シリアルI/Oデバイスの送信レジスタに文字を入れることに成功し
     467                 *  た場合.
    472468                 */
    473469                buffer_full = false;
     
    475471        else {
    476472                /*
    477                  *  ‘—Mƒoƒbƒtƒ@‚É•¶Žš‚ð“ü‚ê‚éD
     473                 *  送信バッファに文字を入れる.
    478474                 */
    479475                p_spcb->p_spinib->snd_buffer[p_spcb->snd_write_ptr] = c;
     
    491487
    492488/*
    493  *  ƒVƒŠƒAƒ‹ƒ|[ƒg‚Ö‚Ì•¶Žš—ñ‘—MiƒT[ƒrƒXƒR[ƒ‹j
     489 *  シリアルポートへの文字列送信(サービスコール)
    494490 */
    495491ER_UINT
     
    501497        ER              ercd, rercd;
    502498
    503         if (sns_dpn()) {                                /* ƒRƒ“ƒeƒLƒXƒg‚̃`ƒFƒbƒN */
     499        if (sns_dpn()) {                                /* コンテキストのチェック */
    504500                return(E_CTX);
    505501        }
    506502        if (!(1 <= portid && portid <= TNUM_PORT)) {
    507                 return(E_ID);                           /* ƒ|[ƒg”ԍ†‚̃`ƒFƒbƒN */
     503                return(E_ID);                           /* ポート番号のチェック */
    508504        }
    509505
    510506        p_spcb = get_spcb(portid);
    511         if (!(p_spcb->openflag)) {              /* ƒI[ƒvƒ“Ï‚Ý‚©‚̃`ƒFƒbƒN */
     507        if (!(p_spcb->openflag)) {              /* オープン済みかのチェック */
    512508                return(E_OBJ);
    513509        }
    514         if (p_spcb->errorflag) {                /* ƒGƒ‰[ó‘Ô‚©‚̃`ƒFƒbƒN */
     510        if (p_spcb->errorflag) {                /* エラー状態かのチェック */
    515511                return(E_SYS);
    516512        }
    517513
    518         buffer_full = true;                             /* ƒ‹[ƒv‚Ì1‰ñ‚ß‚Íwai_sem‚·‚é */
     514        buffer_full = true;                             /* ループの1回めはwai_semする */
    519515        while (wricnt < len) {
    520516                if (buffer_full) {
     
    536532
    537533/*
    538  *  ƒVƒŠƒAƒ‹ƒ|[ƒg‚©‚ç‚Ì1•¶ŽšŽóM
     534 *  シリアルポートからの1文字受信
    539535 */
    540536static bool_t
     
    547543
    548544        /*
    549          *  ŽóMƒoƒbƒtƒ@‚©‚當Žš‚ðŽæ‚èo‚·D
     545         *  受信バッファから文字を取り出す.
    550546         */
    551547        *p_c = p_spcb->p_spinib->rcv_buffer[p_spcb->rcv_read_ptr];
     
    555551
    556552        /*
    557          *  START‚𑗐M‚·‚éD
     553         *  STARTを送信する.
    558554         */
    559555        if (p_spcb->rcv_stopped && p_spcb->rcv_count
     
    573569
    574570/*
    575  *  ƒVƒŠƒAƒ‹ƒ|[ƒg‚©‚ç‚Ì•¶Žš—ñŽóMiƒT[ƒrƒXƒR[ƒ‹j
     571 *  シリアルポートからの文字列受信(サービスコール)
    576572 */
    577573ER_UINT
     
    581577        bool_t  buffer_empty;
    582578        uint_t  reacnt = 0U;
    583         char    c = '\0';               /* ƒRƒ“ƒpƒCƒ‰‚ÌŒx‚ð—}Ž~‚·‚邽‚߂ɏ‰Šú‰»‚·‚é */
     579        char    c = '\0';               /* コンパイラの警告を抑止するために初期化する */
    584580        ER              ercd, rercd;
    585581
    586         if (sns_dpn()) {                                /* ƒRƒ“ƒeƒLƒXƒg‚̃`ƒFƒbƒN */
     582        if (sns_dpn()) {                                /* コンテキストのチェック */
    587583                return(E_CTX);
    588584        }
    589585        if (!(1 <= portid && portid <= TNUM_PORT)) {
    590                 return(E_ID);                           /* ƒ|[ƒg”ԍ†‚̃`ƒFƒbƒN */
     586                return(E_ID);                           /* ポート番号のチェック */
    591587        }
    592588
    593589        p_spcb = get_spcb(portid);
    594         if (!(p_spcb->openflag)) {              /* ƒI[ƒvƒ“Ï‚Ý‚©‚̃`ƒFƒbƒN */
     590        if (!(p_spcb->openflag)) {              /* オープン済みかのチェック */
    595591                return(E_OBJ);
    596592        }
    597         if (p_spcb->errorflag) {                /* ƒGƒ‰[ó‘Ô‚©‚̃`ƒFƒbƒN */
     593        if (p_spcb->errorflag) {                /* エラー状態かのチェック */
    598594                return(E_SYS);
    599595        }
    600596
    601         buffer_empty = true;                    /* ƒ‹[ƒv‚Ì1‰ñ‚ß‚Íwai_sem‚·‚é */
     597        buffer_empty = true;                    /* ループの1回めはwai_semする */
    602598        while (reacnt < len) {
    603599                if (buffer_empty) {
     
    611607
    612608                /*
    613                  *  ƒGƒR[ƒoƒbƒNˆ—D
     609                 *  エコーバック処理.
    614610                 */
    615611                if ((p_spcb->ioctl & IOCTL_ECHO) != 0U) {
     
    633629
    634630/*
    635  *  ƒVƒŠƒAƒ‹ƒ|[ƒg‚̐§ŒäiƒT[ƒrƒXƒR[ƒ‹j
     631 *  シリアルポートの制御(サービスコール)
    636632 */
    637633ER
     
    640636        SPCB    *p_spcb;
    641637
    642         if (sns_dpn()) {                                /* ƒRƒ“ƒeƒLƒXƒg‚̃`ƒFƒbƒN */
     638        if (sns_dpn()) {                                /* コンテキストのチェック */
    643639                return(E_CTX);
    644640        }
    645641        if (!(1 <= portid && portid <= TNUM_PORT)) {
    646                 return(E_ID);                           /* ƒ|[ƒg”ԍ†‚̃`ƒFƒbƒN */
     642                return(E_ID);                           /* ポート番号のチェック */
    647643        }
    648644
    649645        p_spcb = get_spcb(portid);
    650         if (!(p_spcb->openflag)) {              /* ƒI[ƒvƒ“Ï‚Ý‚©‚̃`ƒFƒbƒN */
     646        if (!(p_spcb->openflag)) {              /* オープン済みかのチェック */
    651647                return(E_OBJ);
    652648        }
    653         if (p_spcb->errorflag) {                /* ƒGƒ‰[ó‘Ô‚©‚̃`ƒFƒbƒN */
     649        if (p_spcb->errorflag) {                /* エラー状態かのチェック */
    654650                return(E_SYS);
    655651        }
     
    660656
    661657/*
    662  *  ƒVƒŠƒAƒ‹ƒ|[ƒgó‘Ô‚ÌŽQÆiƒT[ƒrƒXƒR[ƒ‹j
     658 *  シリアルポート状態の参照(サービスコール)
    663659 */
    664660ER
     
    667663        SPCB    *p_spcb;
    668664
    669         if (sns_dpn()) {                                /* ƒRƒ“ƒeƒLƒXƒg‚̃`ƒFƒbƒN */
     665        if (sns_dpn()) {                                /* コンテキストのチェック */
    670666                return(E_CTX);
    671667        }
    672668        if (!(1 <= portid && portid <= TNUM_PORT)) {
    673                 return(E_ID);                           /* ƒ|[ƒg”ԍ†‚̃`ƒFƒbƒN */
     669                return(E_ID);                           /* ポート番号のチェック */
    674670        }
    675671
    676672        p_spcb = get_spcb(portid);
    677         if (!(p_spcb->openflag)) {              /* ƒI[ƒvƒ“Ï‚Ý‚©‚̃`ƒFƒbƒN */
     673        if (!(p_spcb->openflag)) {              /* オープン済みかのチェック */
    678674                return(E_OBJ);
    679675        }
    680         if (p_spcb->errorflag) {                /* ƒGƒ‰[ó‘Ô‚©‚̃`ƒFƒbƒN */
     676        if (p_spcb->errorflag) {                /* エラー状態かのチェック */
    681677                return(E_SYS);
    682678        }
     
    688684
    689685/*
    690  *  ƒVƒŠƒAƒ‹ƒ|[ƒg‚©‚ç‚Ì‘—M‰Â”\ƒR[ƒ‹ƒoƒbƒN
     686 *  シリアルポートからの送信可能コールバック
    691687 */
    692688void
     
    698694        if (p_spcb->rcv_fc_chr != '\0') {
    699695                /*
    700                  *  START/STOP ‚𑗐M‚·‚éD
     696                 *  START/STOP を送信する.
    701697                 */
    702698                (void) sio_snd_chr(p_spcb->p_siopcb, p_spcb->rcv_fc_chr);
     
    705701        else if (!(p_spcb->snd_stopped) && p_spcb->snd_count > 0U) {
    706702                /*
    707                  *  ‘—Mƒoƒbƒtƒ@’†‚©‚當Žš‚ðŽæ‚èo‚µ‚Ä‘—M‚·‚éD
     703                 *  送信バッファ中から文字を取り出して送信する.
    708704                 */
    709705                (void) sio_snd_chr(p_spcb->p_siopcb,
     
    719715        else {
    720716                /*
    721                  *  ‘—M‚·‚ׂ«•¶Žš‚ª‚È‚¢ê‡‚́C‘—M‰Â”\ƒR[ƒ‹ƒoƒbƒN‚ð‹ÖŽ~‚·‚éD
     717                 *  送信すべき文字がない場合は,送信可能コールバックを禁止する.
    722718                 */
    723719                sio_dis_cbr(p_spcb->p_siopcb, SIO_RDY_SND);
     
    726722
    727723/*
    728  *  ƒVƒŠƒAƒ‹ƒ|[ƒg‚©‚ç‚ÌŽóM’Ê’mƒR[ƒ‹ƒoƒbƒN
     724 *  シリアルポートからの受信通知コールバック
    729725 */
    730726void
     
    738734        if ((p_spcb->ioctl & IOCTL_FCSND) != 0U && c == FC_STOP) {
    739735                /*
    740                  *  ‘—M‚ðˆêŽž’âŽ~‚·‚éD‘—M’†‚Ì•¶Žš‚Í‚»‚Ì‚Ü‚Ü‘—M‚·‚éD
     736                 *  送信を一時停止する.送信中の文字はそのまま送信する.
    741737                 */
    742738                p_spcb->snd_stopped = true;
     
    745741                                || (p_spcb->ioctl & IOCTL_FCANY) != 0U)) {
    746742                /*
    747                  *  ‘—M‚ðÄŠJ‚·‚éD
     743                 *  送信を再開する.
    748744                 */
    749745                p_spcb->snd_stopped = false;
     
    763759        else if ((p_spcb->ioctl & IOCTL_FCSND) != 0U && c == FC_START) {
    764760                /*
    765                  *  ‘—M‚ɑ΂µ‚ătƒ[§Œä‚µ‚Ä‚¢‚éê‡CSTART ‚ÍŽÌ‚Ä‚éD
     761                 *  送信に対してフロー制御している場合,START は捨てる.
    766762                 */
    767763        }
    768764        else if (p_spcb->rcv_count == p_spcb->p_spinib->rcv_bufsz) {
    769765                /*
    770                  *  ƒoƒbƒtƒ@ƒtƒ‹‚̏ꍇCŽóM‚µ‚½•¶Žš‚ðŽÌ‚Ä‚éD
     766                 *  バッファフルの場合,受信した文字を捨てる.
    771767                 */
    772768        }
    773769        else {
    774770                /*
    775                  *  ŽóM‚µ‚½•¶Žš‚ðŽóMƒoƒbƒtƒ@‚É“ü‚ê‚éD
     771                 *  受信した文字を受信バッファに入れる.
    776772                 */
    777773                p_spcb->p_spinib->rcv_buffer[p_spcb->rcv_write_ptr] = c;
     
    785781
    786782                /*
    787                  *  STOP‚𑗐M‚·‚éD
     783                 *  STOPを送信する.
    788784                 */
    789785                if ((p_spcb->ioctl & IOCTL_FCRCV) != 0U && !(p_spcb->rcv_stopped)
     
    799795
    800796/*
    801  *  ƒVƒŠƒAƒ‹ƒCƒ“ƒ^ƒtƒF[ƒXƒhƒ‰ƒCƒo‚©‚ç‚Ì–¢‘—M•¶Žš‚ÌŽæo‚µ
     797 *  シリアルインタフェースドライバからの未送信文字の取出し
    802798 */
    803799bool_t
     
    806802        SPCB    *p_spcb;
    807803
    808         if (1 <= portid && portid <= TNUM_PORT) {       /* ƒ|[ƒg”ԍ†‚̃`ƒFƒbƒN */
     804        if (1 <= portid && portid <= TNUM_PORT) {       /* ポート番号のチェック */
    809805                p_spcb = get_spcb(portid);
    810                 if (p_spcb->openflag) {                                 /* ƒI[ƒvƒ“Ï‚Ý‚©‚̃`ƒFƒbƒN */
     806                if (p_spcb->openflag) {                                 /* オープン済みかのチェック */
    811807                        if (p_spcb->snd_count > 0U) {
    812808                                *p_c = p_spcb->p_spinib->snd_buffer[p_spcb->snd_read_ptr];
  • UsbWattMeter/trunk/asp_dcre/syssvc/serial.cfg

    • Property svn:mime-type changed from text/plain to text/plain; charset=SHIFT_JIS
    r164 r167  
    44
    55/*
    6  *  ƒVƒŠƒAƒ‹ƒCƒ“ƒ^ƒtƒF[ƒXƒhƒ‰ƒCƒo‚̃Rƒ“ƒtƒBƒMƒ
    7 ƒŒ[ƒVƒ‡ƒ“ƒtƒ@ƒCƒ‹
     6 *  シリアルインタフェースドライバのコンフィギュレーションファイル
    87 */
    98
  • UsbWattMeter/trunk/asp_dcre/syssvc/serial.h

    • Property svn:mime-type changed from text/x-chdr to text/x-chdr; charset=SHIFT_JIS
    r164 r167  
    99 *              Graduate School of Information Science, Nagoya Univ., JAPAN
    1010 *
    11  *  ã‹L’˜ìŒ ŽÒ‚́CˆÈ‰º‚Ì(1)`(4)‚ÌðŒ‚ð–ž‚½‚·ê‡‚ÉŒÀ‚èC–{ƒ\ƒtƒgƒEƒF
    12  *  ƒAi–{ƒ\ƒtƒgƒEƒFƒA‚ð‰ü•Ï‚µ‚½‚à‚Ì‚ðŠÜ‚ށDˆÈ‰º“¯‚¶j‚ðŽg—pE•¡»E‰ü
    13  *  •ÏEÄ”z•ziˆÈ‰ºC—˜—p‚ƌĂԁj‚·‚邱‚Ƃ𖳏ž‚Å‹–‘ø‚·‚éD
    14  *  (1) –{ƒ\ƒtƒgƒEƒFƒA‚ðƒ\[ƒXƒR[ƒh‚ÌŒ`‚Å—˜—p‚·‚éê‡‚ɂ́Cã‹L‚Ì’˜ì
    15  *      Œ •\Ž¦C‚±‚Ì—˜—pðŒ‚¨‚æ‚щº‹L‚Ì–³•ÛØ‹K’肪C‚»‚Ì‚Ü‚Ü‚ÌŒ`‚Ń\[
    16  *      ƒXƒR[ƒh’†‚ÉŠÜ‚Ü‚ê‚Ä‚¢‚邱‚ƁD
    17  *  (2) –{ƒ\ƒtƒgƒEƒFƒA‚ðCƒ‰ƒCƒuƒ‰ƒŠŒ`Ž®‚ȂǁC‘¼‚̃\ƒtƒgƒEƒFƒAŠJ”­‚ÉŽg
    18  *      —p‚Å‚«‚éŒ`‚ōĔz•z‚·‚éê‡‚ɂ́CÄ”z•z‚É”º‚¤ƒhƒLƒ
    19 ƒƒ“ƒgi—˜—p
    20  *      ŽÒƒ}ƒjƒ
    21 ƒAƒ‹‚Ȃǁj‚ɁCã‹L‚Ì’˜ìŒ •\Ž¦C‚±‚Ì—˜—pðŒ‚¨‚æ‚щº‹L
    22  *      ‚Ì–³•ÛØ‹K’è‚ðŒfÚ‚·‚邱‚ƁD
    23  *  (3) –{ƒ\ƒtƒgƒEƒFƒA‚ðC‹@Ší‚É‘g‚ݍž‚ނȂǁC‘¼‚̃\ƒtƒgƒEƒFƒAŠJ”­‚ÉŽg
    24  *      —p‚Å‚«‚È‚¢Œ`‚ōĔz•z‚·‚éê‡‚ɂ́CŽŸ‚Ì‚¢‚¸‚ê‚©‚ÌðŒ‚ð–ž‚½‚·‚±
    25  *      ‚ƁD
    26  *    (a) Ä”z•z‚É”º‚¤ƒhƒLƒ
    27 ƒƒ“ƒgi—˜—pŽÒƒ}ƒjƒ
    28 ƒAƒ‹‚Ȃǁj‚ɁCã‹L‚Ì’˜
    29  *        ìŒ •\Ž¦C‚±‚Ì—˜—pðŒ‚¨‚æ‚щº‹L‚Ì–³•ÛØ‹K’è‚ðŒfÚ‚·‚邱‚ƁD
    30  *    (b) Ä”z•z‚ÌŒ`‘Ô‚ðC•Ê‚É’è‚ß‚é•û–@‚É‚æ‚Á‚āCTOPPERSƒvƒƒWƒFƒNƒg‚É
    31  *        •ñ‚·‚邱‚ƁD
    32  *  (4) –{ƒ\ƒtƒgƒEƒFƒA‚Ì—˜—p‚É‚æ‚è’¼Ú“I‚Ü‚½‚͊ԐړI‚ɐ¶‚¶‚é‚¢‚©‚Ȃ鑹
    33  *      ŠQ‚©‚ç‚àCã‹L’˜ìŒ ŽÒ‚¨‚æ‚ÑTOPPERSƒvƒƒWƒFƒNƒg‚ð–Ɛӂ·‚邱‚ƁD
    34  *      ‚Ü‚½C–{ƒ\ƒtƒgƒEƒFƒA‚̃†[ƒU‚Ü‚½‚̓Gƒ“ƒhƒ†[ƒU‚©‚ç‚Ì‚¢‚©‚Ȃ闝
    35  *      —R‚ÉŠî‚­¿‹‚©‚ç‚àCã‹L’˜ìŒ ŽÒ‚¨‚æ‚ÑTOPPERSƒvƒƒWƒFƒNƒg‚ð
    36  *      –Ɛӂ·‚邱‚ƁD
     11 *  上記著作権者は,以下の(1)〜(4)の条件を満たす場合に限り,本ソフトウェ
     12 *  ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改
     13 *  変・再配布(以下,利用と呼ぶ)することを無償で許諾する.
     14 *  (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
     15 *      権表示,この利用条件および下記の無保証規定が,そのままの形でソー
     16 *      スコード中に含まれていること.
     17 *  (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
     18 *      用できる形で再配布する場合には,再配布に伴うドキュメント(利用
     19 *      者マニュアルなど)に,上記の著作権表示,この利用条件および下記
     20 *      の無保証規定を掲載すること.
     21 *  (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
     22 *      用できない形で再配布する場合には,次のいずれかの条件を満たすこ
     23 *      と.
     24 *    (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著
     25 *        作権表示,この利用条件および下記の無保証規定を掲載すること.
     26 *    (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに
     27 *        報告すること.
     28 *  (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
     29 *      害からも,上記著作権者およびTOPPERSプロジェクトを免責すること.
     30 *      また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理
     31 *      由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを
     32 *      免責すること.
    3733 *
    38  *  –{ƒ\ƒtƒgƒEƒFƒA‚́C–³•ÛØ‚Å’ñ‹Ÿ‚³‚ê‚Ä‚¢‚é‚à‚Ì‚Å‚ ‚éDã‹L’˜ìŒ ŽÒ‚¨
    39  *  ‚æ‚ÑTOPPERSƒvƒƒWƒFƒNƒg‚́C–{ƒ\ƒtƒgƒEƒFƒA‚ÉŠÖ‚µ‚āC“Á’è‚ÌŽg—p–Ú“I
    40  *  ‚ɑ΂·‚é“K‡«‚àŠÜ‚߂āC‚¢‚©‚È‚é•ÛØ‚às‚í‚È‚¢D‚Ü‚½C–{ƒ\ƒtƒgƒEƒF
    41  *  ƒA‚Ì—˜—p‚É‚æ‚è’¼Ú“I‚Ü‚½‚͊ԐړI‚ɐ¶‚¶‚½‚¢‚©‚Ȃ鑹ŠQ‚ÉŠÖ‚µ‚Ä‚àC‚»
    42  *  ‚̐ӔC‚𕉂í‚È‚¢D
     34 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     35 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的
     36 *  に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ
     37 *  アの利用により直接的または間接的に生じたいかなる損害に関しても,そ
     38 *  の責任を負わない.
    4339 *
    4440 *  @(#) $Id$
     
    4642
    4743/*
    48  *              ƒVƒŠƒAƒ‹ƒCƒ“ƒ^ƒtƒF[ƒXƒhƒ‰ƒCƒo
     44 *              シリアルインタフェースドライバ
    4945 */
    5046
     
    5753
    5854/*
    59  *  ƒVƒŠƒAƒ‹ƒCƒ“ƒ^ƒtƒF[ƒXƒhƒ‰ƒCƒo‚Ì—p‚¢‚éƒpƒPƒbƒg
     55 *  シリアルインタフェースドライバの用いるパケット
    6056 */
    6157typedef struct {
    62         uint_t          reacnt;                 /* ŽóMƒoƒbƒtƒ@’†‚Ì•¶Žš” */
    63         uint_t          wricnt;                 /* ‘—Mƒoƒbƒtƒ@’†‚Ì•¶Žš” */
     58        uint_t          reacnt;                 /* 受信バッファ中の文字数 */
     59        uint_t          wricnt;                 /* 送信バッファ中の文字数 */
    6460} T_SERIAL_RPOR;
    6561
    6662/*
    67  *  ƒVƒŠƒAƒ‹ƒCƒ“ƒ^ƒtƒF[ƒXƒhƒ‰ƒCƒo‚̏‰Šú‰»ƒ‹[ƒ`ƒ“
     63 *  シリアルインタフェースドライバの初期化ルーチン
    6864 */
    6965extern void             serial_initialize(intptr_t exinf) throw();
    7066
    7167/*
    72  *  ƒVƒŠƒAƒ‹ƒCƒ“ƒ^ƒtƒF[ƒXƒhƒ‰ƒCƒo‚©‚ç‚Ì–¢‘—M•¶Žš‚ÌŽæo‚µ
     68 *  シリアルインタフェースドライバからの未送信文字の取出し
    7369 */
    7470extern bool_t   serial_get_chr(ID portid, char *p_c) throw();
    7571
    7672/*
    77  *  ƒVƒŠƒAƒ‹ƒCƒ“ƒ^ƒtƒF[ƒXƒhƒ‰ƒCƒo‚̃T[ƒrƒXƒR[ƒ‹
     73 *  シリアルインタフェースドライバのサービスコール
    7874 */
    7975extern ER               serial_opn_por(ID portid) throw();
     
    8581
    8682/*
    87  *  ƒVƒŠƒAƒ‹ƒCƒ“ƒ^ƒtƒF[ƒXƒhƒ‰ƒCƒo‚Ì“®ì§Œä—p‚Ì‚½‚߂̒萔
     83 *  シリアルインタフェースドライバの動作制御用のための定数
    8884 *
    89  *  ˆÈ‰º‚̒萔‚́Cƒrƒbƒg–ˆ‚ɘ_—˜a‚ð‚Æ‚Á‚Ä—p‚¢‚éD
     85 *  以下の定数は,ビット毎に論理和をとって用いる.
    9086 */
    91 #define IOCTL_NULL      0U                      /* Žw’è‚È‚µ */
    92 #define IOCTL_ECHO      0x0001U         /* ŽóM‚µ‚½•¶Žš‚ðƒGƒR[ƒoƒbƒN */
    93 #define IOCTL_CRLF      0x0010U         /* LF‚𑗐M‚·‚é‘O‚ÉCR‚ð•t‰Á */
    94 #define IOCTL_FCSND     0x0100U         /* ‘—M‚ɑ΂µ‚ătƒ[§Œä‚ðs‚¤ */
    95 #define IOCTL_FCANY     0x0200U         /* ‚ǂ̂悤‚È•¶Žš‚Å‚à‘—MÄŠJ */
    96 #define IOCTL_FCRCV     0x0400U         /* ŽóM‚ɑ΂µ‚ătƒ[§Œä‚ðs‚¤ */
     87#define IOCTL_NULL      0U                      /* 指定なし */
     88#define IOCTL_ECHO      0x0001U         /* 受信した文字をエコーバック */
     89#define IOCTL_CRLF      0x0010U         /* LFを送信する前にCRを付加 */
     90#define IOCTL_FCSND     0x0100U         /* 送信に対してフロー制御を行う */
     91#define IOCTL_FCANY     0x0200U         /* どのような文字でも送信再開 */
     92#define IOCTL_FCRCV     0x0400U         /* 受信に対してフロー制御を行う */
    9793
    9894#ifdef __cplusplus
  • UsbWattMeter/trunk/asp_dcre/syssvc/syslog.c

    • Property svn:mime-type changed from text/x-csrc to text/x-csrc; charset=SHIFT_JIS
    r164 r167  
    99 *              Graduate School of Information Science, Nagoya Univ., JAPAN
    1010 *
    11  *  ã‹L’˜ìŒ ŽÒ‚́CˆÈ‰º‚Ì(1)`(4)‚ÌðŒ‚ð–ž‚½‚·ê‡‚ÉŒÀ‚èC–{ƒ\ƒtƒgƒEƒF
    12  *  ƒAi–{ƒ\ƒtƒgƒEƒFƒA‚ð‰ü•Ï‚µ‚½‚à‚Ì‚ðŠÜ‚ށDˆÈ‰º“¯‚¶j‚ðŽg—pE•¡»E‰ü
    13  *  •ÏEÄ”z•ziˆÈ‰ºC—˜—p‚ƌĂԁj‚·‚邱‚Ƃ𖳏ž‚Å‹–‘ø‚·‚éD
    14  *  (1) –{ƒ\ƒtƒgƒEƒFƒA‚ðƒ\[ƒXƒR[ƒh‚ÌŒ`‚Å—˜—p‚·‚éê‡‚ɂ́Cã‹L‚Ì’˜ì
    15  *      Œ •\Ž¦C‚±‚Ì—˜—pðŒ‚¨‚æ‚щº‹L‚Ì–³•ÛØ‹K’肪C‚»‚Ì‚Ü‚Ü‚ÌŒ`‚Ń\[
    16  *      ƒXƒR[ƒh’†‚ÉŠÜ‚Ü‚ê‚Ä‚¢‚邱‚ƁD
    17  *  (2) –{ƒ\ƒtƒgƒEƒFƒA‚ðCƒ‰ƒCƒuƒ‰ƒŠŒ`Ž®‚ȂǁC‘¼‚̃\ƒtƒgƒEƒFƒAŠJ”­‚ÉŽg
    18  *      —p‚Å‚«‚éŒ`‚ōĔz•z‚·‚éê‡‚ɂ́CÄ”z•z‚É”º‚¤ƒhƒLƒ
    19 ƒƒ“ƒgi—˜—p
    20  *      ŽÒƒ}ƒjƒ
    21 ƒAƒ‹‚Ȃǁj‚ɁCã‹L‚Ì’˜ìŒ •\Ž¦C‚±‚Ì—˜—pðŒ‚¨‚æ‚щº‹L
    22  *      ‚Ì–³•ÛØ‹K’è‚ðŒfÚ‚·‚邱‚ƁD
    23  *  (3) –{ƒ\ƒtƒgƒEƒFƒA‚ðC‹@Ší‚É‘g‚ݍž‚ނȂǁC‘¼‚̃\ƒtƒgƒEƒFƒAŠJ”­‚ÉŽg
    24  *      —p‚Å‚«‚È‚¢Œ`‚ōĔz•z‚·‚éê‡‚ɂ́CŽŸ‚Ì‚¢‚¸‚ê‚©‚ÌðŒ‚ð–ž‚½‚·‚±
    25  *      ‚ƁD
    26  *    (a) Ä”z•z‚É”º‚¤ƒhƒLƒ
    27 ƒƒ“ƒgi—˜—pŽÒƒ}ƒjƒ
    28 ƒAƒ‹‚Ȃǁj‚ɁCã‹L‚Ì’˜
    29  *        ìŒ •\Ž¦C‚±‚Ì—˜—pðŒ‚¨‚æ‚щº‹L‚Ì–³•ÛØ‹K’è‚ðŒfÚ‚·‚邱‚ƁD
    30  *    (b) Ä”z•z‚ÌŒ`‘Ô‚ðC•Ê‚É’è‚ß‚é•û–@‚É‚æ‚Á‚āCTOPPERSƒvƒƒWƒFƒNƒg‚É
    31  *        •ñ‚·‚邱‚ƁD
    32  *  (4) –{ƒ\ƒtƒgƒEƒFƒA‚Ì—˜—p‚É‚æ‚è’¼Ú“I‚Ü‚½‚͊ԐړI‚ɐ¶‚¶‚é‚¢‚©‚Ȃ鑹
    33  *      ŠQ‚©‚ç‚àCã‹L’˜ìŒ ŽÒ‚¨‚æ‚ÑTOPPERSƒvƒƒWƒFƒNƒg‚ð–Ɛӂ·‚邱‚ƁD
    34  *      ‚Ü‚½C–{ƒ\ƒtƒgƒEƒFƒA‚̃†[ƒU‚Ü‚½‚̓Gƒ“ƒhƒ†[ƒU‚©‚ç‚Ì‚¢‚©‚Ȃ闝
    35  *      —R‚ÉŠî‚­¿‹‚©‚ç‚àCã‹L’˜ìŒ ŽÒ‚¨‚æ‚ÑTOPPERSƒvƒƒWƒFƒNƒg‚ð
    36  *      –Ɛӂ·‚邱‚ƁD
    37  *
    38  *  –{ƒ\ƒtƒgƒEƒFƒA‚́C–³•ÛØ‚Å’ñ‹Ÿ‚³‚ê‚Ä‚¢‚é‚à‚Ì‚Å‚ ‚éDã‹L’˜ìŒ ŽÒ‚¨
    39  *  ‚æ‚ÑTOPPERSƒvƒƒWƒFƒNƒg‚́C–{ƒ\ƒtƒgƒEƒFƒA‚ÉŠÖ‚µ‚āC“Á’è‚ÌŽg—p–Ú“I
    40  *  ‚ɑ΂·‚é“K‡«‚àŠÜ‚߂āC‚¢‚©‚È‚é•ÛØ‚às‚í‚È‚¢D‚Ü‚½C–{ƒ\ƒtƒgƒEƒF
    41  *  ƒA‚Ì—˜—p‚É‚æ‚è’¼Ú“I‚Ü‚½‚͊ԐړI‚ɐ¶‚¶‚½‚¢‚©‚Ȃ鑹ŠQ‚ÉŠÖ‚µ‚Ä‚àC‚»
    42  *  ‚̐ӔC‚𕉂í‚È‚¢D
     11 *  上記著作権者は,以下の(1)〜(4)の条件を満たす場合に限り,本ソフトウェ
     12 *  ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改
     13 *  変・再配布(以下,利用と呼ぶ)することを無償で許諾する.
     14 *  (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
     15 *      権表示,この利用条件および下記の無保証規定が,そのままの形でソー
     16 *      スコード中に含まれていること.
     17 *  (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
     18 *      用できる形で再配布する場合には,再配布に伴うドキュメント(利用
     19 *      者マニュアルなど)に,上記の著作権表示,この利用条件および下記
     20 *      の無保証規定を掲載すること.
     21 *  (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
     22 *      用できない形で再配布する場合には,次のいずれかの条件を満たすこ
     23 *      と.
     24 *    (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著
     25 *        作権表示,この利用条件および下記の無保証規定を掲載すること.
     26 *    (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに
     27 *        報告すること.
     28 *  (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
     29 *      害からも,上記著作権者およびTOPPERSプロジェクトを免責すること.
     30 *      また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理
     31 *      由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを
     32 *      免責すること.
     33 *
     34 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     35 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的
     36 *  に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ
     37 *  アの利用により直接的または間接的に生じたいかなる損害に関しても,そ
     38 *  の責任を負わない.
    4339 *
    4440 *  $Id$
     
    4642
    4743/*
    48  *              ƒVƒXƒeƒ€ƒƒO‹@”\
     44 *              システムログ機能
    4945 */
    5046
     
    5753
    5854/*
    59  *  ƒgƒŒ[ƒXƒƒOƒ}ƒNƒ‚̃fƒtƒHƒ‹ƒg’è‹`
     55 *  トレースログマクロのデフォルト定義
    6056 */
    6157#ifndef LOG_SYSLOG_WRI_LOG_ENTER
     
    9288
    9389/*
    94  *  Œ»Ý‚̃VƒXƒeƒ€Žž
     90 *  現在のシステム時刻
    9591 *
    96  *  ƒƒOŽž‚ðŽæ‚èo‚·‚½‚߂ɁC‚â‚Þ‚È‚­CƒJ[ƒlƒ‹‚Ì“à•”•Ï”‚ðŽQÆ‚µ‚Ä‚¢
    97  *  ‚éD
     92 *  ログ時刻を取り出すために,やむなく,カーネルの内部変数を参照してい
     93 *  る.
    9894 */
    9995extern ulong_t  _kernel_current_time;
    10096
    10197/*
    102  *  ƒƒOƒoƒbƒtƒ@‚Æ‚»‚ê‚ɃAƒNƒZƒX‚·‚邽‚߂̃|ƒCƒ“ƒ^
    103  */
    104 static SYSLOG   syslog_buffer[TCNT_SYSLOG_BUFFER];      /* ƒƒOƒoƒbƒtƒ@ */
    105 static uint_t   syslog_count;                   /* ƒƒOƒoƒbƒtƒ@’†‚̃ƒO‚̐” */
    106 static uint_t   syslog_head;                    /* æ“ª‚̃ƒO‚ÌŠi”[ˆÊ’u */
    107 static uint_t   syslog_tail;                    /* ŽŸ‚̃ƒO‚ÌŠi”[ˆÊ’u */
    108 static uint_t   syslog_lost;                    /* Ž¸‚í‚ꂽƒƒO‚̐” */
    109 
    110 /*
    111  *  o—Í‚·‚ׂ«ƒƒOî•ñ‚̏d—v“xiƒrƒbƒgƒ}ƒbƒvj
    112  */
    113 static uint_t   syslog_logmask;                 /* ƒƒOƒoƒbƒtƒ@‚É‹L˜^‚·‚ׂ«d—v“x */
    114 static uint_t   syslog_lowmask_not;             /* ’჌ƒxƒ‹o—Í‚·‚ׂ«d—v“xi”½“]j*/
    115 
    116 /*
    117  *  ƒVƒXƒeƒ€ƒƒO‹@”\‚̏‰Šú‰»
     98 *  ログバッファとそれにアクセスするためのポインタ
     99 */
     100static SYSLOG   syslog_buffer[TCNT_SYSLOG_BUFFER];      /* ログバッファ */
     101static uint_t   syslog_count;                   /* ログバッファ中のログの数 */
     102static uint_t   syslog_head;                    /* 先頭のログの格納位置 */
     103static uint_t   syslog_tail;                    /* 次のログの格納位置 */
     104static uint_t   syslog_lost;                    /* 失われたログの数 */
     105
     106/*
     107 *  出力すべきログ情報の重要度(ビットマップ)
     108 */
     109static uint_t   syslog_logmask;                 /* ログバッファに記録すべき重要度 */
     110static uint_t   syslog_lowmask_not;             /* 低レベル出力すべき重要度(反転)*/
     111
     112/*
     113 *  システムログ機能の初期化
    118114 */
    119115void
     
    129125
    130126/*
    131  *  ƒƒOî•ñ‚̏o—Í
     127 *  ログ情報の出力
    132128 *
    133  *  CPUƒƒbƒNó‘Ô‚âŽÀsƒRƒ“ƒeƒLƒXƒg‚É‚æ‚炸“®ì‚Å‚«‚é‚悤‚ÉŽÀ‘•‚µ‚Ä‚ ‚éD
     129 *  CPUロック状態や実行コンテキストによらず動作できるように実装してある.
    134130 */
    135131ER
     
    142138
    143139        /*
    144          *  ƒƒOŽž‚̐ݒè
     140         *  ログ時刻の設定
    145141         */
    146142        ((SYSLOG *) p_syslog)->logtim = _kernel_current_time;
    147143
    148144        /*
    149          *  ƒƒOƒoƒbƒtƒ@‚É‹L˜^
     145         *  ログバッファに記録
    150146         */
    151147        if ((syslog_logmask & LOG_MASK(prio)) != 0U) {
     
    165161
    166162        /*
    167          *  ’჌ƒxƒ‹o—Í
     163         *  低レベル出力
    168164         */
    169165        if (((~syslog_lowmask_not) & LOG_MASK(prio)) != 0U) {
     
    178174
    179175/*
    180  *  ƒƒOƒoƒbƒtƒ@‚©‚ç‚̓Ǐo‚µ
     176 *  ログバッファからの読出し
    181177 *
    182  *  CPUƒƒbƒNó‘Ô‚âŽÀsƒRƒ“ƒeƒLƒXƒg‚É‚æ‚炸“®ì‚Å‚«‚é‚悤‚ÉŽÀ‘•‚µ‚Ä‚ ‚éD
     178 *  CPUロック状態や実行コンテキストによらず動作できるように実装してある.
    183179 */
    184180ER_UINT
     
    192188
    193189        /*
    194          *  ƒƒOƒoƒbƒtƒ@‚©‚ç‚ÌŽæo‚µ
     190         *  ログバッファからの取出し
    195191         */
    196192        if (syslog_count > 0U) {
     
    214210
    215211/*
    216  *  o—Í‚·‚ׂ«ƒƒOî•ñ‚̏d—v“x‚̐ݒè
     212 *  出力すべきログ情報の重要度の設定
    217213 */
    218214ER
     
    227223
    228224/*
    229  *  ƒƒOƒoƒbƒtƒ@‚̏ó‘ÔŽQÆ
     225 *  ログバッファの状態参照
    230226 */
    231227ER
  • UsbWattMeter/trunk/asp_dcre/syssvc/syslog.cfg

    • Property svn:mime-type changed from text/plain to text/plain; charset=SHIFT_JIS
    r164 r167  
    44
    55/*
    6  *              ƒVƒXƒeƒ€ƒƒO‹@”\‚̃Rƒ“ƒtƒBƒMƒ
    7 ƒŒ[ƒVƒ‡ƒ“ƒtƒ@ƒCƒ‹
     6 *              システムログ機能のコンフィギュレーションファイル
    87 */
    98
  • UsbWattMeter/trunk/asp_dcre/syssvc/syslog.h

    • Property svn:mime-type changed from text/x-chdr to text/x-chdr; charset=SHIFT_JIS
    r164 r167  
    99 *              Graduate School of Information Science, Nagoya Univ., JAPAN
    1010 *
    11  *  ã‹L’˜ìŒ ŽÒ‚́CˆÈ‰º‚Ì(1)`(4)‚ÌðŒ‚ð–ž‚½‚·ê‡‚ÉŒÀ‚èC–{ƒ\ƒtƒgƒEƒF
    12  *  ƒAi–{ƒ\ƒtƒgƒEƒFƒA‚ð‰ü•Ï‚µ‚½‚à‚Ì‚ðŠÜ‚ށDˆÈ‰º“¯‚¶j‚ðŽg—pE•¡»E‰ü
    13  *  •ÏEÄ”z•ziˆÈ‰ºC—˜—p‚ƌĂԁj‚·‚邱‚Ƃ𖳏ž‚Å‹–‘ø‚·‚éD
    14  *  (1) –{ƒ\ƒtƒgƒEƒFƒA‚ðƒ\[ƒXƒR[ƒh‚ÌŒ`‚Å—˜—p‚·‚éê‡‚ɂ́Cã‹L‚Ì’˜ì
    15  *      Œ •\Ž¦C‚±‚Ì—˜—pðŒ‚¨‚æ‚щº‹L‚Ì–³•ÛØ‹K’肪C‚»‚Ì‚Ü‚Ü‚ÌŒ`‚Ń\[
    16  *      ƒXƒR[ƒh’†‚ÉŠÜ‚Ü‚ê‚Ä‚¢‚邱‚ƁD
    17  *  (2) –{ƒ\ƒtƒgƒEƒFƒA‚ðCƒ‰ƒCƒuƒ‰ƒŠŒ`Ž®‚ȂǁC‘¼‚̃\ƒtƒgƒEƒFƒAŠJ”­‚ÉŽg
    18  *      —p‚Å‚«‚éŒ`‚ōĔz•z‚·‚éê‡‚ɂ́CÄ”z•z‚É”º‚¤ƒhƒLƒ
    19 ƒƒ“ƒgi—˜—p
    20  *      ŽÒƒ}ƒjƒ
    21 ƒAƒ‹‚Ȃǁj‚ɁCã‹L‚Ì’˜ìŒ •\Ž¦C‚±‚Ì—˜—pðŒ‚¨‚æ‚щº‹L
    22  *      ‚Ì–³•ÛØ‹K’è‚ðŒfÚ‚·‚邱‚ƁD
    23  *  (3) –{ƒ\ƒtƒgƒEƒFƒA‚ðC‹@Ší‚É‘g‚ݍž‚ނȂǁC‘¼‚̃\ƒtƒgƒEƒFƒAŠJ”­‚ÉŽg
    24  *      —p‚Å‚«‚È‚¢Œ`‚ōĔz•z‚·‚éê‡‚ɂ́CŽŸ‚Ì‚¢‚¸‚ê‚©‚ÌðŒ‚ð–ž‚½‚·‚±
    25  *      ‚ƁD
    26  *    (a) Ä”z•z‚É”º‚¤ƒhƒLƒ
    27 ƒƒ“ƒgi—˜—pŽÒƒ}ƒjƒ
    28 ƒAƒ‹‚Ȃǁj‚ɁCã‹L‚Ì’˜
    29  *        ìŒ •\Ž¦C‚±‚Ì—˜—pðŒ‚¨‚æ‚щº‹L‚Ì–³•ÛØ‹K’è‚ðŒfÚ‚·‚邱‚ƁD
    30  *    (b) Ä”z•z‚ÌŒ`‘Ô‚ðC•Ê‚É’è‚ß‚é•û–@‚É‚æ‚Á‚āCTOPPERSƒvƒƒWƒFƒNƒg‚É
    31  *        •ñ‚·‚邱‚ƁD
    32  *  (4) –{ƒ\ƒtƒgƒEƒFƒA‚Ì—˜—p‚É‚æ‚è’¼Ú“I‚Ü‚½‚͊ԐړI‚ɐ¶‚¶‚é‚¢‚©‚Ȃ鑹
    33  *      ŠQ‚©‚ç‚àCã‹L’˜ìŒ ŽÒ‚¨‚æ‚ÑTOPPERSƒvƒƒWƒFƒNƒg‚ð–Ɛӂ·‚邱‚ƁD
    34  *      ‚Ü‚½C–{ƒ\ƒtƒgƒEƒFƒA‚̃†[ƒU‚Ü‚½‚̓Gƒ“ƒhƒ†[ƒU‚©‚ç‚Ì‚¢‚©‚Ȃ闝
    35  *      —R‚ÉŠî‚­¿‹‚©‚ç‚àCã‹L’˜ìŒ ŽÒ‚¨‚æ‚ÑTOPPERSƒvƒƒWƒFƒNƒg‚ð
    36  *      –Ɛӂ·‚邱‚ƁD
     11 *  上記著作権者は,以下の(1)〜(4)の条件を満たす場合に限り,本ソフトウェ
     12 *  ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改
     13 *  変・再配布(以下,利用と呼ぶ)することを無償で許諾する.
     14 *  (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
     15 *      権表示,この利用条件および下記の無保証規定が,そのままの形でソー
     16 *      スコード中に含まれていること.
     17 *  (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
     18 *      用できる形で再配布する場合には,再配布に伴うドキュメント(利用
     19 *      者マニュアルなど)に,上記の著作権表示,この利用条件および下記
     20 *      の無保証規定を掲載すること.
     21 *  (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
     22 *      用できない形で再配布する場合には,次のいずれかの条件を満たすこ
     23 *      と.
     24 *    (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著
     25 *        作権表示,この利用条件および下記の無保証規定を掲載すること.
     26 *    (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに
     27 *        報告すること.
     28 *  (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
     29 *      害からも,上記著作権者およびTOPPERSプロジェクトを免責すること.
     30 *      また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理
     31 *      由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを
     32 *      免責すること.
    3733 *
    38  *  –{ƒ\ƒtƒgƒEƒFƒA‚́C–³•ÛØ‚Å’ñ‹Ÿ‚³‚ê‚Ä‚¢‚é‚à‚Ì‚Å‚ ‚éDã‹L’˜ìŒ ŽÒ‚¨
    39  *  ‚æ‚ÑTOPPERSƒvƒƒWƒFƒNƒg‚́C–{ƒ\ƒtƒgƒEƒFƒA‚ÉŠÖ‚µ‚āC“Á’è‚ÌŽg—p–Ú“I
    40  *  ‚ɑ΂·‚é“K‡«‚àŠÜ‚߂āC‚¢‚©‚È‚é•ÛØ‚às‚í‚È‚¢D‚Ü‚½C–{ƒ\ƒtƒgƒEƒF
    41  *  ƒA‚Ì—˜—p‚É‚æ‚è’¼Ú“I‚Ü‚½‚͊ԐړI‚ɐ¶‚¶‚½‚¢‚©‚Ȃ鑹ŠQ‚ÉŠÖ‚µ‚Ä‚àC‚»
    42  *  ‚̐ӔC‚𕉂í‚È‚¢D
     34 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     35 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的
     36 *  に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ
     37 *  アの利用により直接的または間接的に生じたいかなる損害に関しても,そ
     38 *  の責任を負わない.
    4339 *
    4440 *  @(#) $Id$
     
    4642
    4743/*
    48  *              ƒVƒXƒeƒ€ƒƒO‹@”\
     44 *              システムログ機能
    4945 */
    5046
     
    5753
    5854/*
    59  *  ƒVƒXƒeƒ€ƒƒOo—Í‚ðs‚¤‚½‚ß‚Ì’è‹`
     55 *  システムログ出力を行うための定義
    6056 */
    6157#include <t_syslog.h>
    6258
    6359/*
    64  *  ƒƒOƒoƒbƒtƒ@‚Æ‚»‚ê‚ɃAƒNƒZƒX‚·‚邽‚߂̃|ƒCƒ“ƒ^
     60 *  ログバッファとそれにアクセスするためのポインタ
    6561 */
    6662#ifndef TCNT_SYSLOG_BUFFER
    67 #define TCNT_SYSLOG_BUFFER      32              /* ƒƒOƒoƒbƒtƒ@‚̃TƒCƒY */
     63#define TCNT_SYSLOG_BUFFER      32              /* ログバッファのサイズ */
    6864#endif /* TCNT_SYSLOG_BUFFER */
    6965
    7066/*
    71  *  ƒVƒXƒeƒ€ƒƒO‹@”\‚̏‰Šú‰»
     67 *  システムログ機能の初期化
    7268 */
    7369extern void     syslog_initialize(intptr_t exinf) throw();
    7470
    7571/*
    76  *  ƒƒOî•ñ‚̏o—Í
     72 *  ログ情報の出力
    7773 */
    7874extern ER       syslog_wri_log(uint_t prio, const SYSLOG *p_syslog) throw();
    7975
    8076/*
    81  *  ƒƒOƒoƒbƒtƒ@‚©‚ç‚̃ƒOî•ñ‚̓Ǐo‚µ
     77 *  ログバッファからのログ情報の読出し
    8278 */
    8379extern ER_UINT  syslog_rea_log(SYSLOG *p_syslog) throw();
    8480
    8581/*
    86  *  o—Í‚·‚ׂ«ƒƒOî•ñ‚̏d—v“x‚̐ݒè
     82 *  出力すべきログ情報の重要度の設定
    8783 */
    8884extern ER       syslog_msk_log(uint_t logmask, uint_t lowmask) throw();
    8985
    9086/*
    91  *  ƒƒOƒoƒbƒtƒ@‚̏ó‘ÔŽQÆ
     87 *  ログバッファの状態参照
    9288 */
    9389extern ER       syslog_ref_log(T_SYSLOG_RLOG *pk_rlog) throw();
  • UsbWattMeter/trunk/asp_dcre/syssvc/vasyslog.c

    • Property svn:mime-type changed from text/x-csrc to text/x-csrc; charset=SHIFT_JIS
    r164 r167  
    88 *              Graduate School of Information Science, Nagoya Univ., JAPAN
    99 *
    10  *  ã‹L’˜ìŒ ŽÒ‚́CˆÈ‰º‚Ì(1)`(4)‚ÌðŒ‚ð–ž‚½‚·ê‡‚ÉŒÀ‚èC–{ƒ\ƒtƒgƒEƒF
    11  *  ƒAi–{ƒ\ƒtƒgƒEƒFƒA‚ð‰ü•Ï‚µ‚½‚à‚Ì‚ðŠÜ‚ށDˆÈ‰º“¯‚¶j‚ðŽg—pE•¡»E‰ü
    12  *  •ÏEÄ”z•ziˆÈ‰ºC—˜—p‚ƌĂԁj‚·‚邱‚Ƃ𖳏ž‚Å‹–‘ø‚·‚éD
    13  *  (1) –{ƒ\ƒtƒgƒEƒFƒA‚ðƒ\[ƒXƒR[ƒh‚ÌŒ`‚Å—˜—p‚·‚éê‡‚ɂ́Cã‹L‚Ì’˜ì
    14  *      Œ •\Ž¦C‚±‚Ì—˜—pðŒ‚¨‚æ‚щº‹L‚Ì–³•ÛØ‹K’肪C‚»‚Ì‚Ü‚Ü‚ÌŒ`‚Ń\[
    15  *      ƒXƒR[ƒh’†‚ÉŠÜ‚Ü‚ê‚Ä‚¢‚邱‚ƁD
    16  *  (2) –{ƒ\ƒtƒgƒEƒFƒA‚ðCƒ‰ƒCƒuƒ‰ƒŠŒ`Ž®‚ȂǁC‘¼‚̃\ƒtƒgƒEƒFƒAŠJ”­‚ÉŽg
    17  *      —p‚Å‚«‚éŒ`‚ōĔz•z‚·‚éê‡‚ɂ́CÄ”z•z‚É”º‚¤ƒhƒLƒ
    18 ƒƒ“ƒgi—˜—p
    19  *      ŽÒƒ}ƒjƒ
    20 ƒAƒ‹‚Ȃǁj‚ɁCã‹L‚Ì’˜ìŒ •\Ž¦C‚±‚Ì—˜—pðŒ‚¨‚æ‚щº‹L
    21  *      ‚Ì–³•ÛØ‹K’è‚ðŒfÚ‚·‚邱‚ƁD
    22  *  (3) –{ƒ\ƒtƒgƒEƒFƒA‚ðC‹@Ší‚É‘g‚ݍž‚ނȂǁC‘¼‚̃\ƒtƒgƒEƒFƒAŠJ”­‚ÉŽg
    23  *      —p‚Å‚«‚È‚¢Œ`‚ōĔz•z‚·‚éê‡‚ɂ́CŽŸ‚Ì‚¢‚¸‚ê‚©‚ÌðŒ‚ð–ž‚½‚·‚±
    24  *      ‚ƁD
    25  *    (a) Ä”z•z‚É”º‚¤ƒhƒLƒ
    26 ƒƒ“ƒgi—˜—pŽÒƒ}ƒjƒ
    27 ƒAƒ‹‚Ȃǁj‚ɁCã‹L‚Ì’˜
    28  *        ìŒ •\Ž¦C‚±‚Ì—˜—pðŒ‚¨‚æ‚щº‹L‚Ì–³•ÛØ‹K’è‚ðŒfÚ‚·‚邱‚ƁD
    29  *    (b) Ä”z•z‚ÌŒ`‘Ô‚ðC•Ê‚É’è‚ß‚é•û–@‚É‚æ‚Á‚āCTOPPERSƒvƒƒWƒFƒNƒg‚É
    30  *        •ñ‚·‚邱‚ƁD
    31  *  (4) –{ƒ\ƒtƒgƒEƒFƒA‚Ì—˜—p‚É‚æ‚è’¼Ú“I‚Ü‚½‚͊ԐړI‚ɐ¶‚¶‚é‚¢‚©‚Ȃ鑹
    32  *      ŠQ‚©‚ç‚àCã‹L’˜ìŒ ŽÒ‚¨‚æ‚ÑTOPPERSƒvƒƒWƒFƒNƒg‚ð–Ɛӂ·‚邱‚ƁD
    33  *      ‚Ü‚½C–{ƒ\ƒtƒgƒEƒFƒA‚̃†[ƒU‚Ü‚½‚̓Gƒ“ƒhƒ†[ƒU‚©‚ç‚Ì‚¢‚©‚Ȃ闝
    34  *      —R‚ÉŠî‚­¿‹‚©‚ç‚àCã‹L’˜ìŒ ŽÒ‚¨‚æ‚ÑTOPPERSƒvƒƒWƒFƒNƒg‚ð
    35  *      –Ɛӂ·‚邱‚ƁD
     10 *  上記著作権者は,以下の(1)〜(4)の条件を満たす場合に限り,本ソフトウェ
     11 *  ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改
     12 *  変・再配布(以下,利用と呼ぶ)することを無償で許諾する.
     13 *  (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
     14 *      権表示,この利用条件および下記の無保証規定が,そのままの形でソー
     15 *      スコード中に含まれていること.
     16 *  (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
     17 *      用できる形で再配布する場合には,再配布に伴うドキュメント(利用
     18 *      者マニュアルなど)に,上記の著作権表示,この利用条件および下記
     19 *      の無保証規定を掲載すること.
     20 *  (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
     21 *      用できない形で再配布する場合には,次のいずれかの条件を満たすこ
     22 *      と.
     23 *    (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著
     24 *        作権表示,この利用条件および下記の無保証規定を掲載すること.
     25 *    (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに
     26 *        報告すること.
     27 *  (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
     28 *      害からも,上記著作権者およびTOPPERSプロジェクトを免責すること.
     29 *      また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理
     30 *      由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを
     31 *      免責すること.
    3632 *
    37  *  –{ƒ\ƒtƒgƒEƒFƒA‚́C–³•ÛØ‚Å’ñ‹Ÿ‚³‚ê‚Ä‚¢‚é‚à‚Ì‚Å‚ ‚éDã‹L’˜ìŒ ŽÒ‚¨
    38  *  ‚æ‚ÑTOPPERSƒvƒƒWƒFƒNƒg‚́C–{ƒ\ƒtƒgƒEƒFƒA‚ÉŠÖ‚µ‚āC“Á’è‚ÌŽg—p–Ú“I
    39  *  ‚ɑ΂·‚é“K‡«‚àŠÜ‚߂āC‚¢‚©‚È‚é•ÛØ‚às‚í‚È‚¢D‚Ü‚½C–{ƒ\ƒtƒgƒEƒF
    40  *  ƒA‚Ì—˜—p‚É‚æ‚è’¼Ú“I‚Ü‚½‚͊ԐړI‚ɐ¶‚¶‚½‚¢‚©‚Ȃ鑹ŠQ‚ÉŠÖ‚µ‚Ä‚àC‚»
    41  *  ‚̐ӔC‚𕉂í‚È‚¢D
     33 *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
     34 *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的
     35 *  に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ
     36 *  アの利用により直接的または間接的に生じたいかなる損害に関しても,そ
     37 *  の責任を負わない.
    4238 *
    4339 *  @(#) $Id$
     
    4541
    4642/*
    47  *              ‰Â•Ï”ˆø”‚̃VƒXƒeƒ€ƒƒOƒ‰ƒCƒuƒ‰ƒŠ
     43 *              可変数引数のシステムログライブラリ
    4844 */
    4945
Note: See TracChangeset for help on using the changeset viewer.