自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

tutb12345的专栏

其他连接

  • 博客(21)
  • 资源 (8)
  • 收藏
  • 关注

原创 进程与程序的区别

<br />进程和程序是有本质区别的,程序是静态的,它是一些保存在磁盘上的指令的有序集合,没有任何执行的概念;而进程是一个动态的概念,它是程序执行的过程,包括了动态创建、调度和消亡的整个过程。它是程序执行和资源管理的最小单位。因此,对系统而言,当用户在系统中键入命令执行一个程序的时候,它将启动一个进程。在LINUX中通过进程控制块,对进程进行描述,太其中包括了进程的描述信息,控制信息,以及资源信息。他被包含在文件include/linux/sched.h中。

2010-09-28 21:36:00 1367

原创 任务控制块的相关操作

1,任务控制块os_tcb的结构体typedef struct os_tcb {    OS_STK          *OSTCBStkPtr;      任务的栈顶#if OS_TASK_CREATE_EXT_EN > 0    void            *OSTCBExtPtr;      /* Pointer to user definable data for TCB extension             */    OS_STK          *OSTCBStkBottom;  

2010-09-26 20:57:00 801

原创 UCOSii事件总结2

初始化事件列表 3.1.1信号量,互斥信号量,消息邮箱,消息队列,,信号量集,内存块。初始化创建链表,static void  OS_InitEventList (void){        INT16U i;#if (OS_MAX_EVENTS > 1)        OS_EVENT *pevent1;        OS_EVENT *pevent

2010-09-26 20:49:00 906

原创 ucosII事件总结1

<br />                                                                                一,事件和相关的结构体总结<br />1、  在ucosii中事件主要有五种<br />A、信号量     OS_EVENT_TYPE_SEM<br />B、互斥信号量 OS_EVENT_TYPE_MUTEX<br />C、消息邮箱   OS_EVENT_TYPE_MBOX<br />D、消息队列   OS_EVENT_TYPE_Q<br

2010-09-26 20:41:00 490

原创 UCOSii事件总结

一,事件和相关的结构体总结1、 在ucosii中事件主要有五种A、信号量    OS_EVENT_TYPE_SEMB、互斥信号量 OS_EVENT_TYPE_MUTEXC、消息邮箱  OS_EVENT_TYPE_MBOX D、消息队列  OS_EVENT_TYPE_QE、信号量集  OS_EVNET_TYPE_FLAG2、事件的结构体。

2010-09-26 20:34:00 1119

原创 UCOS 内核2.83学习总结——互斥型信号量

一: 互斥型信号量的理解    互斥型信号量首先是二值信号量,实现对共享资源的独占式处理,其次互斥型信号量可以在应用程序代码中用于降解优先级的反转问题,这个是它和普通信号量的最本质的区别。二: 优先级反转的问题    假设现在有三个任务分别是Task1,Task2,Task3,优先级从大到小。程序在运行过程中,Task1和Task2处于挂起(pend)的状态,等待某个事件的发生。这样优

2010-09-21 22:50:00 2120

原创 ucos事件总结1

<br />对UCOSII事件的总结<br />1、  在ucosii中事件主要有五种<br />A、信号量     OS_EVENT_TYPE_SEM<br />B、互斥信号量 OS_EVENT_TYPE_MUTEX<br />C、消息邮箱   OS_EVENT_TYPE_MBOX<br />D、消息队列   OS_EVENT_TYPE_Q<br />E、信号量集   OS_EVNET_TYPE_FLAG<br />2、事件的结构体。<br />OS_EVENT_TYPE_SEM  OS_EVENT_TY

2010-09-20 22:27:00 852

原创 ucos事件总结1

<br />对UCOSII事件的总结<br />1、  在ucosii中事件主要有五种<br />A、信号量     OS_EVENT_TYPE_SEM<br />B、互斥信号量 OS_EVENT_TYPE_MUTEX<br />C、消息邮箱   OS_EVENT_TYPE_MBOX<br />D、消息队列   OS_EVENT_TYPE_Q<br />E、信号量集   OS_EVNET_TYPE_FLAG<br />2、事件的结构体。<br />OS_EVENT_TYPE_SEM  OS_EVENT_TY

2010-09-20 22:26:00 2892

原创 函数的全局变量

<br />1、全局变量的作用域<br />     全局变量的适用范围是:定义全局变量的文件和申明全局变量的文件。<br />     例如:<br />            文件abc:<br />                       int  overall;<br />                      abc()<br />                      {<br />                           overall++;<br />       

2010-09-18 10:23:00 746

原创 浅析μCOS/II v2.85内核OSFlagPend()和OSFlagPost()

<br />浅析μCOS/II v2.85内核OSFlagPend()和OSFlagPost()函数工作原理<br />http://gliethttp.cublog.cn<br />//对于flag--"事件组"的使用,可以用一个简单的例子做说明:<br />// 比如,我现在用迅雷下载一部10集的连续剧,我打算10集全部下载完成之后,<br />//才开始正式看,现在3~10集因为种子原因,先早下完了,现在第1集下到了82%,<br />//第2集下到了97%,因为我的计划是10集全部下完才开始看,而第

2010-09-16 21:34:00 6470

原创 浅析μCOS/II v2.85内核OSQPend()和OSQPost()函数工作原理

//----------------------------------------------------------------------//1.OSQPend()函数void*OSQPend(OS_EVENT*pevent, INT16U timeout, INT8U*perr){    void*pmsg;    OS_Q*pq;

2010-09-16 21:12:00 6666

原创 ucosII消息队列创建函数

/*****************************************************************************函数名:*OSQCreate 函数的参数:void **start 消息队列的首地址            INT16U size  消息队列的长度函数的返回值:指向消息队列的指针函数实现的过程:              一,从空的事件链表中取一个事件           pevent = OSEventFreeList     if(pevnet !

2010-09-16 20:45:00 1315

原创 信号量流程图 UCOSII

<br />

2010-09-14 20:18:00 1665

原创 非常完美的函数

<br />非常完美的函数<br />#if OS_EVENT_EN > 0<br />INT8U  OS_EventTaskRdy (OS_EVENT *pevent, void *msg, INT8U msk)<br />{<br />    OS_TCB *ptcb;<br />    INT8U   x;<br />    INT8U   y;<br />    INT8U   bitx;<br />    INT8U   bity;<br />    INT8U   prio;<br />y =

2010-09-13 22:10:00 977

原创 在程序中经常容易出错的地方

<br />1,关于>>和<<的操作数<br />     在左移和右移的运算中记住:被移位的数是放在操作码的左边的,移动的位数是放在操作码的右边的。

2010-09-13 20:58:00 629

原创 c语言嵌入式系统编程修炼之软件构架

<br />模块划分<br /><br />  模块划分的"划"是规划的意思,意指怎样合理的将一个很大的软件划分为一系列功能独立的部分合作完成系统的需求。C语言作为一种结构化的程序设计语言,在模块的划分上主要依据功能(依功能进行划分在面向对象设计中成为一个错误,牛顿定律遇到了相对论),C语言模块化程序设计需理解如下概念:<br /><br />  (1) 模块即是一个.c文件和一个.h文件的结合,头文件(.h)中是对于该模块接口的声明;<br /><br />  (2) 某模块提供给其它模块调用的外部函数及

2010-09-12 14:49:00 715

原创 UCOSII信号量的三个主要的函数

一,信号量创建函数OS_EVENT  *OSSemCreate (INT16U cnt){    OS_EVENT  *pevent;#if OS_CRITICAL_METHOD == 3                          /* Allocate storage for CPU status register */    OS_CPU_SR  cpu_sr = 0;#endif    if (OSIntNesting > 0) {                               

2010-09-12 14:12:00 4187

原创 多线程编程

<br />一、问题的提出<br />编写一个耗时的单线程程序:<br />  新建一个基于对话框的应用程序SingleThread,在主对话框IDD_SINGLETHREAD_DIALOG添加一个按钮,ID为IDC_SLEEP_SIX_SECOND,标题为“延时6秒”,添加按钮的响应函数,代码如下:<br />void CSingleThreadDlg::OnSleepSixSecond() <br />{<br />       Sleep(6000); //延时6秒<br />}<br />  编译并

2010-09-05 14:52:00 483

原创 多线程编程

<br />一、问题的提出<br />编写一个耗时的单线程程序:<br />  新建一个基于对话框的应用程序SingleThread,在主对话框IDD_SINGLETHREAD_DIALOG添加一个按钮,ID为IDC_SLEEP_SIX_SECOND,标题为“延时6秒”,添加按钮的响应函数,代码如下:<br />void CSingleThreadDlg::OnSleepSixSecond() <br />{<br />       Sleep(6000); //延时6秒<br />}<br />  编译并

2010-09-05 14:50:00 356

原创 多线程编程

<br />一、问题的提出<br />编写一个耗时的单线程程序:<br />  新建一个基于对话框的应用程序SingleThread,在主对话框IDD_SINGLETHREAD_DIALOG添加一个按钮,ID为IDC_SLEEP_SIX_SECOND,标题为“延时6秒”,添加按钮的响应函数,代码如下:<br />void CSingleThreadDlg::OnSleepSixSecond() <br />{<br />       Sleep(6000); //延时6秒<br />}<br />  编译并

2010-09-05 14:49:00 499

原创 c语言描述生产者消费者问题

<br />#include   <windows.h>   <br />#include   <stdio.h>   <br />#include   <stdlib.h>   <br />    <br />typedef   HANDLE   Semaphore;   //信号量的Windows原型  <br /> <br />#define   P(S)   WaitForSingleObject(S, INFINITE)   //   定义Windows下的P操作   <br />#define 

2010-09-05 11:42:00 5627

saej2534 2534

Introduction to J2534 and Flash Reprogramming 共同学习

2017-08-05

cp2102 usb驱动

本资源是usb驱动,本资源呢是USB驱动,在usb转串口中常用的驱动

2012-12-13

OBD数据流解析

该文本描述了SAEJ1979中的数据的一些实际的运用,主要是通过数据来来判断汽车的当前状态

2012-12-10

FATs文件系统

fat32文件系统在cortexM3内核上的移植

2012-06-03

MINI2440启动程序

MINI2440启动程序MINI2440启动程序MINI2440启动程序MINI2440启动程序MINI2440启动程序MINI2440启动程序MINI2440启动程序MINI2440启动程序MINI2440启动程序MINI2440启动程序MINI2440启动程序MINI2440启动程序MINI2440启动程序MINI2440启动程序

2011-01-22

uboot readme 中文注释

uboot readme 中文注释 uboot readme 中文注释uboot readme 中文注释uboot readme 中文注释uboot readme 中文注释uboot readme 中文注释uboot readme 中文注释uboot readme 中文注释uboot readme 中文注释uboot readme 中文注释uboot readme 中文注释uboot readme 中文注释uboot readme 中文注释uboot readme 中文注释

2010-12-25

C++ Builder 程序设计实用教程.pdf

c++build 程序 图像 C++ Builder 程序设计实用教程C++ Builder 程序设计实用教程 C++ Builder 程序设计实用教程.pdf C++ Builder 程序设计实用教程.pdfC++ Builder 程序设计实用教程.pdfC++ Builder 程序设计实用教程.pdfC++ Builder 程序设计实用教程.pdf

2010-12-20

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除