亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? message.c

?? 實時多重作業操作系統內核(RTMK)。簡單實時多重作業操作系統內核源程序。RTMK支持消息和事件
?? C
字號:
/************************************************************************
*
*  Module name         : MESSAGE.C
*
*  Module description  :
*     This module manages inter-task message communication.
*
*  Project             : RTMK
*
*  Target platform     : DOS
*
*  Compiler & Library  : BC++ 3.1
*
*  Author              : Richard Shen
*
*  Creation date       : 17 August, 1995
*
************************************************************************/
#include <memory.h>
#include <rtmk.h>
#include "rtmkloc.h"

/************************************************************************
*  Function name   : RtmkPut
*  Description     : Send a message to the destination task
*                  :
*  Parameters      : process  - Destination task control block
*                  : message  - Message buffer
*  Returns         : -
*  Author          : Richard Shen
* -----------------------------------------------------------------------
*  Date     By      Description
* -----------------------------------------------------------------------
*  17Aug95  RCS     Created.
*  06Sep95  RCS     Provide multi-process waiting on sending message
************************************************************************/
void RtmkPut(PROCESS process, void *message)
{
   if (process->msgPending)
   {
      PROCESS p = process;
      /*
         If the destination task has a unread pending message, the message
         originating task will preempted
      */
      while (p->msgSender)
         p = p->msgSender;
      p->msgSender  = curProcess;            /* Save message sender    */
      while (process->msgPending)
      {
         DisableInterrupt();
         readyProcess &= ~curProcess->procMask; /* Say process not ready  */
         EnableInterrupt();
         Scheduler(NULL, FALSE);                /* Switch to other task   */
      } /* end-of-while */
   } /* end of if */

   process->msgPending = TRUE;               /* Message arrived         */
   DisableInterrupt();
   readyProcess       |= process->procMask;  /* Process is ready to run */
   EnableInterrupt();

   /* Copy message to message buffer of destination tasks */
   memcpy(process->msgBuf, (char *)message, MSG_BUF_SZ);

   if (curProcess->priority < process->priority)
   {
      /* Priority is higher than the current process, switch to it */
      Scheduler(process, FALSE);
   } /* end of if */
} /* RtmkPut() */

/************************************************************************
*  Function name   : RtmkGet
*  Description     : Wait for a message and read message when arrived
*                  :
*  Parameters      : message  - Message buffer to read from
*  Returns         : -
*  Author          : Richard Shen
* -----------------------------------------------------------------------
*  Date     By      Description
* -----------------------------------------------------------------------
*  17Aug95  RCS     Created.
*  06Sep95  RCS     Provide multi-process waiting on sending message
************************************************************************/
void *RtmkGet(void *message)
{
   while (curProcess->msgPending == FALSE)
   {
      /* Message not arrived */
      DisableInterrupt();
      readyProcess &= ~curProcess->procMask; /* Say process not ready  */
      EnableInterrupt();
      if (curProcess->evWait && curProcess->evReceived)
      {
         /* Process ready flag is set by the arrival of an event */
         return(NULL);
      } /* end of if */

      Scheduler(NULL, FALSE);                /* Switch to next process */
   } /* end of while */

   /* Message arrived, copy message to data buffer */
   memcpy((char *)message, curProcess->msgBuf, MSG_BUF_SZ);
   curProcess->msgPending = FALSE;

   /* Resume ready state of messsage sender */
   if (curProcess->msgSender)
   {
      DisableInterrupt();
      readyProcess         |= curProcess->msgSender->procMask;
      curProcess->msgSender = curProcess->msgSender->msgSender;
      EnableInterrupt();
   } /* end of if */

   return(message);
} /* RtmkGet() */

/************************************************************************
*  Function name   : RtmkEmpty
*  Description     : Premitive returns the status of task's pending
*                  : message buffer
*  Parameters      : -
*  Returns         : FALSE, if there is a pending unread inter-task
*                  : message.  Otherwise TRUE.
*  Author          : Richard Shen
* -----------------------------------------------------------------------
*  Date     By      Description
* -----------------------------------------------------------------------
*  17Aug95  RCS     Created.
************************************************************************/
bool RtmkEmpty(void)
{
   if (curProcess->msgPending)
      return(FALSE);

   return(TRUE);
} /* RtmkEmpty() */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩一区在线看| 一本大道久久a久久精二百| 日韩不卡免费视频| 无码av中文一区二区三区桃花岛| 亚洲图片有声小说| 亚洲国产精品一区二区www在线| 一区二区三区四区精品在线视频 | 中文字幕一区二区三区精华液 | 国产亚洲精品aa午夜观看| 26uuu亚洲综合色| 2020国产精品自拍| 中文字幕免费不卡在线| 中日韩av电影| 亚洲免费在线电影| 亚洲制服丝袜av| 五月天欧美精品| 狠狠色综合日日| 国产98色在线|日韩| av不卡免费电影| 欧日韩精品视频| 欧美精品tushy高清| 日韩欧美色综合网站| 久久久久久久久久久久久久久99| 国产欧美精品一区二区色综合 | 国产欧美日本一区视频| 成人免费在线播放视频| 一区二区三区精品在线观看| 亚洲电影在线播放| 精品一区二区三区视频在线观看| 国产精品91xxx| 日本丰满少妇一区二区三区| 欧美日韩国产高清一区二区三区 | 中文字幕一区二区三区色视频 | 国产一区二区三区免费在线观看| 成熟亚洲日本毛茸茸凸凹| 在线视频一区二区三区| 欧美一区二区在线观看| 欧美极品少妇xxxxⅹ高跟鞋| 亚洲精品一卡二卡| 免费亚洲电影在线| 成人丝袜高跟foot| 在线91免费看| 国产精品成人网| 日本欧美加勒比视频| 成人免费精品视频| 在线不卡中文字幕| 国产精品乱码一区二三区小蝌蚪| 亚洲成人中文在线| 大桥未久av一区二区三区中文| 欧美图区在线视频| 久久精品一级爱片| 亚洲成av人影院| 成人免费看黄yyy456| 91精品国产色综合久久ai换脸| 国产欧美一区二区三区在线老狼| 亚洲图片欧美综合| 成人免费视频一区| 日韩一级黄色片| 伊人色综合久久天天人手人婷| 久久国产精品99久久人人澡| 一本到不卡精品视频在线观看| 日韩欧美国产三级| 一区二区三区不卡在线观看| 国产一区二区主播在线| 欧美又粗又大又爽| 国产精品免费看片| 精彩视频一区二区三区| 欧美日韩免费电影| 亚洲特级片在线| 国产精品性做久久久久久| 欧美精品乱码久久久久久按摩| 国产精品免费观看视频| 免费欧美高清视频| 91成人免费在线视频| 国产片一区二区| 久久99国产精品成人| 在线观看日韩av先锋影音电影院| 中文在线一区二区| 国产一区福利在线| 日韩免费福利电影在线观看| 亚洲mv在线观看| 色婷婷亚洲精品| 国产精品国产三级国产aⅴ原创| 精品一区二区免费视频| 91麻豆精品国产| 亚洲午夜久久久久中文字幕久| 成人aaaa免费全部观看| 国产校园另类小说区| 精品一区二区三区欧美| 日韩欧美一区在线观看| 日韩成人免费看| 欧美日韩另类国产亚洲欧美一级| 亚洲美女偷拍久久| 色一情一伦一子一伦一区| 亚洲素人一区二区| 99精品视频在线观看免费| 国产精品国产三级国产aⅴ中文| 国产69精品久久久久777| 久久噜噜亚洲综合| 国内精品久久久久影院色| 精品电影一区二区| 精品无人区卡一卡二卡三乱码免费卡| 91精品欧美一区二区三区综合在 | 不卡视频一二三四| 日本一区二区视频在线观看| 成人中文字幕合集| 国产精品欧美一级免费| 成人av网站大全| 亚洲精品日韩一| 欧美性感一区二区三区| 亚洲高清视频在线| 777午夜精品免费视频| 日本不卡的三区四区五区| 在线综合+亚洲+欧美中文字幕| 日韩av中文字幕一区二区| 91精品国产一区二区人妖| 免费观看在线综合色| www成人在线观看| 成人app软件下载大全免费| 亚洲女爱视频在线| 欧美视频三区在线播放| 免费在线观看一区二区三区| 久久伊99综合婷婷久久伊| 成人污视频在线观看| 一区二区三区四区蜜桃| 7777精品伊人久久久大香线蕉| 久久99久久久久| 国产精品美女久久久久aⅴ国产馆| 成人18视频日本| 午夜日韩在线观看| 久久综合九色综合97婷婷女人 | 色妞www精品视频| 午夜精品福利在线| 精品91自产拍在线观看一区| 成人h动漫精品| 午夜精品福利视频网站| 2020国产精品自拍| 色哟哟亚洲精品| 久久国产成人午夜av影院| 中日韩免费视频中文字幕| 欧美色手机在线观看| 国产一区二区三区香蕉| 一区二区三区在线视频观看| 欧美一区二区精美| av网站免费线看精品| 视频一区中文字幕| 欧美国产成人精品| 欧美视频一二三区| 国产.精品.日韩.另类.中文.在线.播放 | 亚洲免费观看高清完整版在线观看| 成人国产精品视频| 丝袜美腿高跟呻吟高潮一区| 久久综合色婷婷| 色偷偷成人一区二区三区91| 美女mm1313爽爽久久久蜜臀| 中文字幕亚洲在| 日韩一区二区免费在线电影| 不卡一区在线观看| 久久精品噜噜噜成人88aⅴ| 国产精品国产三级国产有无不卡| 91精品国产一区二区| 97久久精品人人澡人人爽| 免费精品99久久国产综合精品| 亚洲桃色在线一区| 久久女同精品一区二区| 91豆麻精品91久久久久久| 国产福利一区在线| 三级久久三级久久| 椎名由奈av一区二区三区| 精品国产乱码久久久久久影片| 色综合天天综合| 国产成人在线观看免费网站| 视频在线在亚洲| 亚洲黄一区二区三区| 欧美激情一区二区三区蜜桃视频| 91精品国产综合久久精品图片| 91蜜桃在线观看| 国产成人精品免费一区二区| 日日夜夜精品视频免费| 一区二区三区波多野结衣在线观看| 久久精品综合网| 精品福利一区二区三区免费视频| 欧美婷婷六月丁香综合色| 懂色一区二区三区免费观看| 精久久久久久久久久久| 日韩黄色小视频| 天天av天天翘天天综合网色鬼国产| 最新国产精品久久精品| 久久精品人人做| 久久亚洲一区二区三区明星换脸 | 国产精品色婷婷久久58| 亚洲精品在线电影| 日韩欧美精品在线视频| 欧美精品色综合| 欧美精品乱码久久久久久| 欧美视频在线不卡| 欧美三级一区二区| 欧美日韩一区高清| 欧美视频一区二区三区四区| 欧美日韩在线播放三区|