⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ucos51.htm

📁 8051 操作系统-实时操作系统-tiny校内和
💻 HTM
📖 第 1 页 / 共 2 页
字号:
<LI>ucos-i386 (ucos186c.c):</LI><PRE>UBYTE OSTaskCreate(      void (far *task)(void *dptr),      void *data,      void *pstk,      UBYTE p);</PRE></UL><H4><A NAME="OSTimeDly"></A>Delay Task 'n' Ticks (n = 1..65535)</H4><UL><LI>ucos-186 (ucos.c):</LI><PRE>void OSTimeDly(UWORD ticks);</PRE><LI>ucos-i386 (ucos.c):</LI><PRE>void OSTimeDly(UWORD ticks);</PRE></UL><H4><A NAME="OSTimeTick"></A>Process System Tick</H4><UL><LI>ucos-186 (ucos.c):</LI><PRE>void OSTimeTick(void); </PRE><LI>ucos-i386 (ucos.c):</LI><PRE>void OSTimeTick(void); </PRE></UL><H4><A NAME="OSIntEnter"></A>Enter ISR</H4><UL><LI>ucos-186 (ucos.c):</LI><PRE>void OSIntEnter(void); </PRE><LI>ucos-i386 (ucos.c):</LI><PRE>void OSIntEnter(void); </PRE></UL><H4><A NAME="OSIntExit"></A>Exit ISR</H4><UL><LI>ucos-186 (ucos.c):</LI><PRE>void OSIntExit(void); </PRE><LI>ucos-i386 (ucos.c):</LI><PRE>void OSIntExit(void); </PRE></UL><H4><A NAME="OSCtxSw"></A>Perform a Context Switch (From task level)</H4><UL><LI>ucos-6811 (ucos11a.asm):</LI><PRE>void OSCtxSw(void); </PRE><LI>ucos-cpu32 (ucosc32a.asm):</LI><PRE>void OSCtxSw(void); </PRE><LI>ucos-i386 (ucos186a.asm):</LI><PRE>void far OSCtxSw(void);</PRE></UL><H4><A NAME="OSIntCtxSw"></A>Perform a Context Switch (From an ISR)</H4><UL><LI>ucos-6811 (ucos11a.asm):</LI><PRE>void OSIntCtxSw(void); </PRE><LI>ucos-cpu32 (ucosc32a.asm):</LI><PRE>void OSIntCtxSw(void); </PRE><LI>ucos-i386 (ucos186a.asm):</LI><PRE>void OSIntCtxSw(void); </PRE></UL><H4><A NAME="OSTickISR"></A>Handle Tick ISR</H4><UL><LI>ucos-6811 (ucos11a.asm):</LI><PRE>void far OSTickISR(void); </PRE><LI>ucos-cput32 (ucosc32a.asm):</LI><PRE>void OSTickISR(void); </PRE><LI>ucos-i386 (ucos186a.asm):</LI><PRE>void far OSTickISR(void); </PRE></UL><H4><A NAME="OSStartHighRdy"></A>Run Highest Priority Task (Low-level)</H4><UL><LI>ucos-6811 (ucos11a.s):</LI><PRE>void OSStartHighRdy(void); </PRE><LI>ucos-cpu32 (ucosc32a.asm):</LI><PRE>void OSStartHighRdy(void); </PRE><LI>ucos-i386 (ucos186a.asm):</LI><PRE>void OSStartHighRdy(void); </PRE></UL><H4><A NAME="OSSched"></A>Run Highest Priority Task</H4><UL><LI>ucos-186 (ucos.c):</LI><PRE>void OSSched(void); </PRE><LI>ucos-i386 (ucos.c):</LI><PRE>void OSSched(void); </PRE></UL><H4><A NAME="OSTCBGetFree"></A>Get TCB&nbsp;From Free TCB&nbsp;List</H4><UL><LI>ucos-186 (ucos.c):</LI><PRE>OS_TCB *OSTCBGetFree(void); </PRE><LI>ucos-i386 (ucos.c):</LI><PRE>OS_TCB *OSTCBGetFree(void); </PRE></UL><H4><A NAME="OSChangePrio"></A>Change Priority of Running Task</H4><UL><LI>ucos-186 (ucos.c):</LI><PRE>UBYTE OSChangePrio(UBYTE newp); </PRE><LI>ucos-i386 (ucos.c):</LI><PRE>UBYTE OSChangePrio(UBYTE newp); </PRE></UL><H4><A NAME="OSTaskDelete"></A>Delete Running Task</H4><UL><LI>ucos-186 (ucos.c):</LI><PRE>void OSTaskDelete(void); </PRE><LI>ucos-i386 (ucos.c):</LI><PRE>void OSTaskDelete(void); </PRE></UL><H4><A NAME="OSLock"></A>Prevent Scheduling</H4><UL><LI>ucos-186 (ucos.c):</LI><PRE>void OSLock(void);</PRE><LI>ucos-i386 (ucos.c):</LI><PRE>void OSLock(void);</PRE></UL><H4><A NAME="OSUnlock"></A>Enable Scheduling</H4><UL><LI>ucos-186 (ucos.c):</LI><PRE>void OSUnlock(void);</PRE><LI>ucos-i386 (ucos.c):</LI><PRE>void OSUnlock(void);</PRE></UL><H4><A NAME="OSSemInit"></A>Initialize Semaphore</H4><UL><LI>ucos-186 (ucos.c):</LI><PRE>UBYTE OSSemInit(OS_SEM *psem, WORD cnt); </PRE><LI>ucos-i386 (ucos.c):</LI><PRE>UBYTE OSSemInit(OS_SEM *psem, WORD cnt); </PRE></UL><H4><A NAME="OSSemPost"></A>Post to a Semaphore</H4><UL><LI>ucos-186 (ucos.c):</LI><PRE>UBYTE OSSemPost(OS_SEM *psem);</PRE><LI>ucos-i386 (ucos.c):</LI><PRE>UBYTE OSSemPost(OS_SEM *psem);</PRE></UL><H4><A NAME="OSSemPend"></A>Pend on Semaphore</H4><UL><LI>ucos-186 (ucos.c):</LI><PRE>UBYTE OSSemPend(OS_SEM *psem, UWORD timeout);</PRE><LI>ucos-i386 (ucos.c):</LI><PRE>UBYTE OSSemPend(OS_SEM *psem, UWORD timeout);</PRE></UL><H4><A NAME="OSMboxInit"></A>Initialize Mailbox</H4><UL><LI>ucos-186 (ucos.c):</LI><PRE>UBYTE OSMboxInit(OS_MBOX *pmbox, void *msg); </PRE><LI>ucos-i386 (ucos.c):</LI><PRE>UBYTE OSMboxInit(OS_MBOX *pmbox, void *msg); </PRE></UL><H4><A NAME="OSMboxPost"></A>Post to a Mailbox</H4><UL><LI>ucos-186 (ucos.c):</LI><PRE>UBYTE OSMboxPost(OS_MBOX *pmbox, void *msg); </PRE><LI>ucos-i386 (ucos.c):</LI><PRE>UBYTE OSMboxPost(OS_MBOX *pmbox, void *msg); </PRE></UL><H4><A NAME="OSMboxPend"></A>Pend on Mailbox</H4><UL><LI>ucos-186 (ucos.c):</LI><PRE>void *OSMboxPend(OS_MBOX *pmbox, UWORD timeout, UBYTE *err); </PRE><LI>ucos-i386 (ucos.c):</LI><PRE>void *OSMboxPend(OS_MBOX *pmbox, UWORD timeout, UBYTE *err); </PRE></UL><H4><A NAME="OSQInit"></A>Initialize Queue</H4><UL><LI>ucos-186 (ucos.c):</LI><PRE>UBYTE OSQInit(OS_Q *pq, void **start, UBYTE size);</PRE><LI>ucos-i386 (ucos.c):</LI><PRE>UBYTE OSQInit(OS_Q *pq, void **start, UBYTE size);</PRE></UL><H4><A NAME="OSQPost"></A>Post to a Queue</H4><UL><LI>ucos-186 (ucos.c):</LI><PRE>UBYTE OSQPost(OS_Q *pq, void *msg);</PRE><LI>ucos-i386 (ucos.c):</LI><PRE>UBYTE OSQPost(OS_Q *pq, void *msg);</PRE></UL><H4><A NAME="OSQPend"></A>Pend on a Queue</H4><UL><LI>ucos-186 (ucos.c):</LI><PRE>void *OSQPend(OS_Q *pq, UWORD timeout, UBYTE *err); </PRE><LI>ucos-i386 (ucos.c):</LI><PRE>void *OSQPend(OS_Q *pq, UWORD timeout, UBYTE *err); </PRE></UL><H4><A NAME="OSTCBPutFree"></A>Put TCB&nbsp;To Free TCB&nbsp;List</H4><P>Not implemented (coded in OSTaskDelete).</P><UL><PRE>void OSTCBPutFree(OS_TCB *ptcb);</PRE></UL><PRE><HR></PRE><H2>References</H2><UL><LI>Real-Time Systems List by Frank Miller.<BR><A HREF="http://www.cs.umd.edu/~fwmiller/etc/realtime/code.html">http://www.cs.umd.edu/~fwmiller/etc/realtime/code.html</A></LI><LI>Cygnus FTP&nbsp;site: <A HREF="ftp://ftp.cygnu.com/pub/embedded/ucos">ftp://ftp.cygnus.com/pub/embedded/ucos</A></LI><LI>Article in &quot;Embedded System Programming Magazine&quot; - May 1992</LI><LI>Article in &quot;Embedded System Programming Magazine&quot; - June1992</LI><LI>Book:&nbsp;Jean Labrosse - &quot;uC/OS, The Real-Time Kernel&quot;.R&amp;D&nbsp;Books, 1992. ISBN 0-13-031352-1<BR><A HREF="http://www.rdbooks.com/microcos.htm">http://www.rdbooks.com/microcos.htm<BR></A>266 pages, 8 x 10.<BR>Book with disk:&nbsp;Product code W62, $49.95<BR>Disk only:&nbsp;Product code W60D, $24.95<BR>Upgrade disk (v 1.08 7/21/95):&nbsp;Product code W60UP, $9.95 (requiresprior ownership)</LI><LI>Book:&nbsp;Jean Labrosse - &quot;Embedded Systems Building Blocks&quot;.R&amp;D&nbsp;Books, 1995. ISBN&nbsp;0-13-35779-2<BR><A HREF="http://www.rdbooks.com/emb_sys.htm">http://www.rdbooks.com/emb_sys.htm<BR></A>600 pages, 8 x 10. Includes 3-1/2&quot; disk.<BR>Product Code V74</LI><LI>Jean Labrosse email:&nbsp;<A HREF="mailto:72644.3724@compuserve.com">72644.3724@compuserve.com</A></LI><LI>R&amp;D&nbsp;Publications<BR><A HREF="http://www.rdbooks.com">http://www.rdbooks.com<BR></A>Suite 200 - 1601 West 23rd Street<BR>Lawrence, KS 66046<BR>Phone:&nbsp;(913) 841-1631<BR>Fax:&nbsp;(913)&nbsp;841-2624</LI></UL><P><HR></P></BODY></HTML>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -