30.12.2013 Views

T-Kernel Specification (1.B0.02)

T-Kernel Specification (1.B0.02)

T-Kernel Specification (1.B0.02)

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

266 CHAPTER 6. T-KERNEL/DS FUNCTIONS<br />

/*<br />

*Event flag status information td_ref_flg<br />

*/<br />

typedef struct td_rflg {<br />

VP exinf; /* extended information */<br />

ID wtsk; /* waiting task ID */<br />

UINT flgptn; /* current event flag pattern */<br />

} TD_RFLG;<br />

/*<br />

*Mailbox status information td_ref_mbx<br />

*/<br />

typedef struct td_rmbx {<br />

VP exinf; /* extended information */<br />

ID wtsk; /* waiting task ID */<br />

T_MSG *pk_msg; /* next message to be received */<br />

} TD_RMBX;<br />

/*<br />

*Mutex status information td_ref_mtx<br />

*/<br />

typedef struct td_rmtx {<br />

VP exinf; /* extended information */<br />

ID bhtsk; /* locking task ID */<br />

ID wtsk; /* ID of task waiting for lock */<br />

} TD_RMTX;<br />

/*<br />

* Message buffer status information td_ref_mbf<br />

*/<br />

typedef struct td_rmbf {<br />

VP exinf; /* extended information */<br />

ID wtsk; /* receive waiting task ID */<br />

ID stsk; /* send waiting task ID */<br />

INT msgsz; /* size (in bytes) of next message to be received */<br />

INT frbufsz; /* free buffer size (in bytes) */<br />

INT maxmsz; /* maximum message length (in bytes) */<br />

} TD_RMBF;<br />

/*<br />

*Rendezvous port status information td_ref_por<br />

*/<br />

typedef struct td_rpor {<br />

VP exinf; /* extended information */<br />

ID wtsk; /* call waiting task ID */<br />

ID atsk; /* acceptance waiting task ID */<br />

INT maxcmsz; /* call message maximum length (in bytes) */<br />

INT maxrmsz; /* accept message maximum length (in bytes) */<br />

} TD_RPOR;<br />

Copyright c○ 2002, 2003 by T-Engine Forum<br />

T-<strong>Kernel</strong> <strong>1.B0.02</strong>

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!