搜档网
当前位置:搜档网 › Windows CE嵌入式高级编程及其实例详解10

Windows CE嵌入式高级编程及其实例详解10

Windows CE嵌入式高级编程及其实例详解10
Windows CE嵌入式高级编程及其实例详解10

第10章串口编程

串口是计算机与外部串行设备之间的数据传输通道,由于串行通信方便易行,因此应用非常广泛。例如在工业自动化中,很多智能采集设备都是采用串口方式和PC机进行通讯。在

Windows CE嵌入式电脑中,串口依然是和外部设备进行通讯的重要方式,例如GPS设备。目

前很多PDA都集成了蓝牙通讯功能,可以通过设置蓝牙通讯方式为串口方式,来和另外一端蓝牙设备进行通讯。作为一名Windows CE程序编写人员,掌握串口编程知识,将会为日后工

作提供极大的便利。

本章主要包括如下内容:

· 串口概述

· 串口编程APl函数介绍

· 串口综合示例

·’GPS编程示例

10.1 串口概述

“串行通信”是指外设和计算机间使用两根数据信号线(另外需要地线,可能还需要控制

线),数据在一根数据信号线上一位一位地进行传输,每一位数据都占据一个固定的时间长度。

这种通信方式使用的数据线较少,在远距离通信中可以节约通信成本,而且其传输速度也不比

并行传输的速度慢。相反的,“并行通信”是指一条信息的各位数据被同时传送。并行通讯的

特点是:各数据位同时传送、传送速度快、效率高,但由于有多少数据位就需多少根数据线,因此传送成本较高,比较适用于近距离(相距数米)的通讯。

目前较为常用的串口有9针串口(DB9)和25针串口(DB25),当通信距离较近时(<12m),可以使用电缆线直接连接标准RS232端口(RS422和RS485较远),若通信距离较远,则需附加调制解调器(Modem)。

表10.1将简要说明DB9常用信号脚定义。

表10.1 DB9常用信号脚说明表

续表

最简单且常用的接线方式是三线制接法,即地、接收数据和发送数据三脚相连,即只要有接

收数据针脚和发送针脚就能实现串口数据传输;对于同一个串口,只要接收脚和发送脚直接用线

相连,那么在此串口发送什么数据,该串口就可以接收什么数据。对于两个不同串口(不论是同

一台计算机的两个串El或分别是不同计算机的串13),均可以采用如表l0.2所示的接线方式。

对于

口硬件介

1.打

在访肛

开串口,有

函数打开目

码中,将赫

HANDL

第10章串口编程

353

在此需要说明的是,在CreateFile函数的参数中,共享参数必须设置为0,表示独占方式;

安全参数必须设置为NULL值;模板文件参数也必须被设置成NULL。

由于在Windows CE中,不支持重叠I/O模式,因此不能在参数dwFlagsAndAttributes 中

传递FILE FLAG OVERLAPPED。’

如果打开串口成功,将返回打开串口的句柄,否则将返回INVALID HANDLE VALUE。

打开串口之后,串口就已经被独占了,因此当不再使用已打开的串口时,应及时关闭串口,此时可以使用CloseHandle函数关闭串口。例如可以使用以下代码来关闭上面打开的串口:

BOOL bResult=CloseHandle(hComm);

2.配置串口

在使用串口和另外一个设备进行通讯时,一定要先设置串口的参数(波特率、奇偶校验、数据位等),这些参数设置正确与否将直接影响是否能够和串口设备进行通讯。串口参数信息

一般由串口设备厂家提供。Windows CE中提供了GetCommState和SetCommState函数,分别

用于获取串口的当前参数和设置串口的参数,它们的定义如下:

B00L GetCommState(

HANDLE hFile,

LPDCB IpDCB);

BOOlJ SetCommState f

HANDLE hFile,

LPDCB IpDCB)j

这两个函数都包含了相同的参数,其中参数hFile是输入参数,指向已打开的串口句柄;参数IpDCB指向DCB结构的指针,在GetCommState函数中,它属于输出参数,在SetCommState 函数中,它属于输入参数。DCB结构完全描述了串口的使用参数,它的定义如下:

typedef s

DWORD DC

I

DWORD Ba

DWORD fB

truct DCB{

B1enqth

udRate;

inary:1

//DCB结构大小

//波特率

//_-进制模式

DWORD fParity:1;//进行奇偶校验

DWORD fOutxCtsFlow:1;//使CTS信号进行输出流量控制

DWORD fOutxDsrFlow:1 j //使DSR信号进行输出流量控制

DWORD fDtrControl:2;//DTR流量控制

DWORD fDsrsensitivitv:1;//DSR敏感度DWORD fTXContinueOnXoff:b//XOFF后是否继续发送DWORD fOutX:1;//使得输出XON/XOFF有效DWORD fInX:l;//使得输入XON/XOFF有效

DWORD fErrorChar:1 j //允许奇偶错误替换DWORD fNull:l;//允许删除NULL

DWORD fRtsControl:2 j //RTS流量控制

DWORD fAbortOnError:1 j//出错时是否终止读写操作DWORD fDummy2:17;//保留

WORD wReserved;//当前未用,必须置为0 WORD XonLim;//XON阈值

WORD XoffLim;//XOFF阈值

char EvtChar; j f萼懈导符

WORD wReservedl;//保留,未用

)DCB;

·成员DCBlength指定了DCB结构大小。

·成员BaudRate指定了串口设备的传输速率。波特率的范围一般是从每秒110位到每秒256000位。

·成员fBinary必须被设置TRUE,因为在CE中不支持非二进制的串行传输模式。

·成员fParity表示启用奇偶校验,该值一般被设置TRUE,以便启用奇偶校验。、·成员fOutxCtsFlow用于指定CTS(Clear—T0.Send)信号是否被监视并作为输出流量控制信号。如果此成员被设置为TRUE并且CTS信号被关闭,则输出被挂起,直到CTS信号重新发出。

·成员fOutxDsrFlow用于指定DSR(Data—Set—Ready)信号是否监视并作为输出流量控制信号。若此成员被设置TRUE,并且DSR信号被关闭,则输出被挂起,直到

DSR信号重新发出。

·成员fDtrControl指定DTR(Data—Terminal.Ready)信号作为流量控制,此成员可以是表l0.3中列出的值。

第10章串口编程

355

输入缓冲区中存有数据的空间达到XoffLim定义的字节数时,XoffChar将被发送;

当输入缓冲区中可用的空间达到XonLim定义的字节数时,XonChar被发送。

成员fErrorChar指定当收到的字符发生奇偶校验错误时,是否使用ErrorChar成员定义的字符代替。若此成员设为TRUE且fP撕够成员为TRUE,将会发生替换。

成员fNull指定null是否被丢弃。若此成员设为TRUE,则接收到的NULL字符被放弃。成员fRtsControl指定RTS(request-to-send)流量控制。若此值为0,则缺省值为RTS CONTROL HANDSHAKE。表l0—4歹0出了该成员的可用值。

表10-4 fRtsControl成员的可用值表

成员fAbortOnError指定当错误发生时,读写操作是否终止。若此成员设置为TRUE,则当错误发生时,所有的读写操作将终止,直到应用程序识别错误并调用ClearCommError函数后,驱动程序才进行更深层次的通讯。

成员fDummy2保留,未用。

成员wReserved未用,必须置为0。

成员XonLim指定发送XON字符前输入缓冲区允许的最小字节数。

成员XoffLim指定发送XOFF字符前输入缓冲区允许的最大字节数。最大允许接收

字符数可以用定义的全部输入缓冲区字节数减去此值得到。

成员ByteSize指定每字节发送接收的位数。

成员Parity指定奇偶校验方法。表l0—5列出了该成员的可用值。

表10-5 Parity成员的可用值表

·成员StopBits用于指定停止位的位数。该成员的可用值如表l0-6所示。

·成员XonChar指定发送接收的XON字符。

·成员XoffChar指定发送接收的XOFF字符。

·成员ErrorChar指定当接收的奇偶校验错误时被代替的接收字符。

356 Windows CE嵌入式高级编程及其实例详解(用c++实现)

表10-6 StopBits成员可用值表

·成员EofChar指定某字符作为数据结束标记。

·成员EvtChar指定某字符作为事件标记。

· 成员wReserved被保留,未用。

在设置串口参数时,最好先用GetCommState函数得到串口的当前参数,然后再修改需要

设置的成员。

3.读、写串口

正如使用CreateFile函数打开串口一样,开发人员同样可以使用ReadFile和WriteFile函

数读取串口数据和向串口中写入数据。关于ReadFile和writeFile函数的介绍,请参考第6章

文件编程中的介绍。

这里需要注意的是,由于从串口中读写数据的速度比较慢,因此不要试图在主线程中读写大量数据,这样会阻塞主线程中处理主窗体的消息队列,最好的方法就是用单独的线程来读

写数据。在下面的串口综合使用示例中将会介绍ReadFile和WriteFile函数的具体用法。 4.异步串口I/O

虽然Windows CE中不支持重叠I/O操作,但还是可以分别用单独的线程去读写串口,通

过多线程来模拟重叠操作。同时Windows CE还提供了WaitCommEvent函数,该函数将阻塞线程,直到预先设置的串口事件中的某一事件发生。在后面的串口综合使用示例中将会介绍WaitCommEvent函数的使用。

在使用串口事件前,还需要了解如下三个函数:.

BOOL GetCommMask(HANDLE hFile,LPDWORD ipEvtMask);

BOOL SetCommMask(HANDLE hFile,DWORD dwEvtMask);

BOOLWaitCommEvent(HANDLE hFile,LPDWORD IpEvtMask,LPOVERLAPPED lpOVerlapped);

· GetCommMask函数用于得到串口已经设置了的串口事件,参数hFile指定已打开的串口句柄,参数lpEvtMask用于存取得到串口事件集。

· SetCommMask函数的功能与GetCommMask函数相反,用于设置串口事件集。

· WaitCommEvent函数用于等待预先设置的串口事件中的某一事件发生。参数

lpEvtMask用于存储已经的发生事件;参数lpOverlapped必须被设置NULL,因为在

Windows CE中不支持重叠结构。

上面三个函数中的第2个参数,即串口事件集,它可以是表l0—7中的某个值或其中组合。

表10.7串口事件表

第10章串口编程

357

续表

5.设置端口读写超时

在调用ReadFile和WriteFile函数从串口读取数据和写入数据时,Windows CE提供了超时

机制,也即是设置了等待它们返回的时间长度。设置串口超时函数SetCommTimeouts的定义如下所示:

BOOL SetCommTimeoutS(

HANDLE hFile,

LPCOMMTIMEOUTS lpCommTimeouts)j

· 参数llFile指向已经打开的串口句柄。

· 参数lpCommTimeouts指向COMMTIMEOuTS结构,设置新韵超时值。

COMMTIMEOUTS结构定义如下:

typedef struct—COMMTIMEOUTS{

DWORD ReadIntervalTimeout;

DWORD ReadTotalTimeoutMultiplier;

DWORD ReadTotalTimeoutConstant;

DWORD WriteTotalTimeoutMultiplier;

DWORD WriteTotalTimeoutConstant;

)COMMTIMEOUTS,+LPCOMMTIMEOUTS;

读超时的计算方法有两种,一种超时是ReadIntervalTimeout指定了在接收字符间的最大

时间间隔,如果超过了这个时间,ReadFile函数立刻返回;另一种超时是基于要接收的字符数

量,ReadTotalTimeoutMultiplier表示平均读一字节的时间上限,ReadTotalTimeoutConstant表

示读数据总超时常量。

第二种读数据超时可用如下等式表示:

读数据总超时=ReadTotalTimeoutConstant+(ReadTotalTimeoutMultiplier*要读的字节数)

写超时计算方法与读超时的第2种计算方法相似,WriteTotalTimeoutMultiplier表示平均写

一字节的时间上限,WriteTotalTimeoutConstant表示写数据总超时常量,总超时计算方法如下:

写数据总超时=WriteTotalTimeoutConstant+(WriteTotalTimeoutMultiplier*要写的字节数)

对于读数据超时,第一种超时(间隔超时)和第二种超时(总超时)同时有效,当出现

任何一种超时时,都将返回。下面是详细的超时值设置:

· 有读间隔超时、读总超时和写总超时:将COMMTIMEOUTS结构中的五个成员设置为相应值。

· 有读总超时和写总超时,但没有读间隔超时:将ReadIntervalTimeout设置为0,将其

黔——叩一

358 windows cE嵌入式高级编程及其实例详解(用c++实现)——

————_——————————————_—————————————————————————————————————————————————————一

他字段设置为相应值。

· 不管是否有数据要读取,ReadFile立刻返回:将ReadIntervalTimeout设置成

MAX DWORD,将ReadTotalTimeoutMultiplier和ReadTotalTimeoutConstant都设置成0。

· ReadFile没有超时设置,直到有适当的字符数返回或错误发生,该函数才返回:将

ReadInteⅣalTimeout、ReadTotalTimeoutMultiplier和ReadTotalTimeoutConstant 值都设

置为0。

·writeFile没有超时设置:将WriteTotalTimeoutMultiplier和WriteTotalTimeout_Constant

都设置成0。

对于串口读写,以上所介绍到的超时操作是至关重要的。读者可以根据实际情况考虑采用何种超时操作。如果从串口读取数据和写入数据都采用超时,最好采用单独的线程负责读取

和写入,以使不会阻塞主线程。

Windows CE还提供了SetupComnl函数来设置接收和发送数据的缓冲区的大小。它的定义如下:。

BOOL SetupComm(

HANDLE hFile,

DWORD dwInQueue,

DWORD dwOutQueue);

· 参数hFile指定已经打开的串口句柄。

· 参数dwlnQueue和dwOutQueue指定接收和发送缓冲区的大小。

SetupConlm并不推荐使用,因为系统会推荐一个适合的默认值。

6.控制串口

Windows CE提供了SetCommBreak函数,用于停止传输字符并将串口置于中断状态,还提供了ClearC0删:llBreak用于重新传输字符。SetCommBreak和ClearCommBreak函数的定义

如下:

BOOL SetCommBreak(

HANDLE hFile);

BOOL ClearCommBreak(

HANDLE hFile);

以上两个函数都只有唯一的入口参数hFile,表示已打开的串口句柄。

7.清空串口缓冲区

Windows cE提供了PurgeComm函数用于清空串口的发送缓冲区和接收缓冲区,PurgeComm函数的定义如下:

BOOL PurgeComm(

HANDLE hFile,

DWORD dwFlags)j

· 参数hFile表示打开的串口句柄。

· 参数dwFlags表示操作类型,在Windows CE下该参数有如下两种取值。 >PURGE TXCLEAR:清空发送缓冲区。

>PURGE RXCLEAR:清空接收缓冲区。

第10章串口编程

359

这两个值可以组合使用,表示同时执行清空发送缓冲区和接收缓冲区的功能。

8.清除错误并查询状态

Windows CE还提供了一个非常有用的函数ClearCommError,用于清除驱动程序产生的任

何错误状态并返回当前窗口状态,该函数定义如下:

BOOL ClearCommError(

HANDLE hFile,

LPDWORD ipErrors,

LPCOMSTAT ipStat);

· 参数hFile指向已经打开的串口句柄。

· 参数lpErrors表示发生的错误码,它的值将是表10.8中的任意一个值或组合。表10—8 IpErrors参数取值表

·参数lpStat指向COMSTAT结构,用于存储当前窗口的状态。COMSTAT结构的定义如下所示:

tvPedef Struct COMSTAT{

DWORD fCtSH01d:1;

DWORD fDsrH01d:1;

DWORD fRlSdH01d:1;

DWORD fXOffH01d:1;

DWORD fXoffSent: 1;

DWORD fEof:1;

DWORD fTxim:1j

DWORD fReserved:25;

DWORD cbInQue;

DWORD cbOutQue;

}COMSTAT,+LPCOMSTATj

前5个字段表示串口传输是否因为它的原因而等待。

字段fCtsHold表示是否等待CTS信号。

字段ff)srHold表示是否等待DSR信号。

字段fRlsdHold表示是否等待“接收线路信号检测,也叫载波检测”。

字段tXoffHold表示是否等待XOFF字符。

字段fXoffSent表示是否因为驱动程序发送XOFF字符而等待。

字段fEof表示是否收到串口尾部字符。

字段fTxim如果是1,表示队列中的字符是由TransmitCommChar函数写入的而不

WriteFile函数。

· 字段cblnQue表示接收缓冲区存储的待读取的字符数。

· 字段cbOutQue表示发送缓冲区中存储的待发送的字符数。

在下面的串口综合示例中,将利用ClearCommError函数来得到串口接收缓冲区待读取的

字符数。

10.3 CE串口综合示例

前一节中介绍了串口编程的基本知识,本节将封装一个Windows CE串口使用类CCESeries。基于此类,可以方便地开发基于串口方面的通讯应用。下面就逐步介绍Windows CE

串口综合示例的创建过程。

(1)建立新项目。

使用vS20051vC++1智能设备IMFC智能设备应用程序向导创建一个基于对话框的应用程序SerialSample,编译环境设置为Windows Mobile 6 Professional SDK(ARMV4I),设备选择CHS

Windows Mobile 6 Classic Emulator,把窗口字体改成宋体小五号。.

(2)新建CCESeries类,用于封装串1:3通讯。

CCESeries类是一个通用c++类,无基类。其类图如图10—1所示。

图10-1 串口类类图

CCESeties类将提供4个公有方法和一个回调函数接口。这4个公有方法分别为0penPort、

closePort、writesyncPort和SetSeriesTimeOuts。其中OpenPort方法用于根据其指定的参数打

开串口,并创建读线程来异步接收数据;ClosePort方法与OpenPort方法相对应,用于关闭串

口释放相关资源,同时也将关闭读线程;SetSeriesTimeOuts方法用于设置串口读写超时;writeSyncPort方法用于向串口写入数据;至于回调函数m—OnSeriesRead,是当读线程检测到

串口有可读数据时,通过它来通知用户读取数据。CCESeries类的使用流程如图l0—2所示。

下面就来介绍CCESeries类的具体实现过程。

1)为CCESeries类添加如下私有变量,用于CCESeries类内部使用,代码如程序清单10—1

所示。

第10章串口编程

361

图10.2 CCESeries类使用流程图

/+★★★★★★★★★★★★★★★★★★★★★★★★★★程序清单l0—1+★★★★★★★★★★★★★★★★★★★★★+/

private:

//已打开的串口句柄。

HANDLE m_hComm;

//读线程句柄

HANDLE m_hReadThread;

//读线程ID标识

DWORD m_dwReadThreadID;

//读线程退出事件

HANDLE m_hReadCloseEvent;

BOOL m bOpened;//串口是否打开

void+m pOwner j//指定父对象指针

’/+++++++★+++++★+++++++★+★★★★★★++★★++★++★★★+★★★★★★+★★+★++★+★★★/

a 2)定义串口接收数据回调函数,该回调函数供外部使用者调用。执行该回调函数时,表示

接收到了串口数据,请求做出相应处理。

首先在CCESeries类定义外部定义串口接收数据函数类型,代码如下:

//定义串口接收数据函数类型

typedef void(CALLBACK+ONSERIESREAD)(void+pOwner/+父对象指针+/,BYTE*buf/*接收到的缓冲区+/

,DWORD dwBufLen/★接收到的缓冲区长度+/);

接着,为CCESeries类添加一个串口接收数据函数变量,此变量声明为共有,供外部使用。定义如下:

public:

ONSERIESREAD m onseriesRead;//串口读取回调函数

3)实现CCESeries类构造函数和析构函数,在构造函数里将m hComm初始化为无效句睛;在析构函数中,如果检测到串口是打开的,则关闭串口。CCESeries类构造函数和析构函

牧的实现如程序清单10.2所示。

/★★★★★★★★★★★★★★★★★★★★★★★★★★★程序清单l0—2★★★★★★★★★★★★★★★柑★★★★★★/

//构造函数

CCESeries::CCESeries()

//初始化内部变量

_

m hComm=INVALID HANDLE V ALUE;

m_OnSeriesRead 2 NULL;

m_bOpened 20;

//析构函数。

CCESeries::一CCESeries()

{

if(m bOpened)

{

//关闭串口.

ClosePort();

‘ }

}

★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★+++++++++ ++++++++++++++++++/

4)为CCESeries类添加串口接收数据线程函数ReadThreadFunc,该线程用于异步接

口数据。读者应仔细理解该线程的具体实现过程?该线程通过循环调用WaitCommEvent

来检测串口状态,.当发现有数据时,调用:ReadFile函数读取数据,并触发给回调函数,实现串口数据的实时异步读取。’

ReadThreadF岫c函数被定义成私有静态。定义如下:

Private:

//串口读线程函数

static DWORD WINAPI ReadThreadFunc(LPVOID iparam);

读线程函数的实现如程序清单10-3所示。

/★★★★★★★★★★★★★★★★妥★★★★★★★★★★程序清单l0-3★★★★★★★★★★★★★★★++★★★★★★/

//串口读线程函数

DWORD CCESeries::ReadThreadFunc(LPVOID iparam)

(

CCESeries*ceSeries=(CCESeries+)iparam;

DWORD eVtMaskj

BYTE+readBuf=NULL;//读取的字节

DWORD actualReadLen=0;//实际读取的字节数

DWORD wiliReadLen;’

DWORD dwReadErrors;

cOMSTAT cmstate;

//清空缓冲,并检查串口是否打开

ASSERT('ceSeries一>m_hComm!=INVALID—HANDLE—V

第10章串口编程 363

PurgeComm(ceSeries一>m_hComm,PURGE—RXCLEAR I PURGE—TXCLEAR)j SetCommMask(ceSeries一>m hComm,EV RXCHAR l EV CTS l EV DSR)j while(TRUE)

{

if(WaitCommEvent(ceSeries一>m hComm,&evtMask,0))

{

SetCommMask(ceSeries一>m hComm,EV RXCHAR I EV CTS I EV DSR);

//表示串口收到字符

if(evtMask

f

&EV—RXCHAR)

ClearCommError(ceSeries一>m_hComm,&dwReadErrors,&cmState)j

wi l iReadLen=cmState.cbInQue;

if(wiliReadLen<=0)

continue;

//分配内存

readBuf=new BYTE[wilIReadLen];

ZeroMemory(readBuf,willReadLen);

//读取串口数据

ReadFile(ceSeries一>m_hComm,readBuf,willReadLen,

&actualReadLen,0);

//如果读取的数据大于0

if(actualReadLen>0)

readBuf,actualReadLen)j

//触发读取回调函数

if(ceSeries->m_OnSeriesRead)

{

黧麓豳薯■—圈豳

ceSeries一>m_OnSeriesRead(ceSeries一>m_pOwner,

//释放内存

delete[】readBufj

readBuf=NULLj

}

//如果收到读线程退出信号,则退出

囊煳

霜翻豳圜圈豳黼翩醺黼

if(WaitForSingleObject(ceSeries一>mhReadCloseEvent,500)。。break;

操作系统知识点整理

第一章操作系统引论 操作系统功能: 1. 资源管理:协调、管理计算机的软、硬件资源,提高其利用率。 2. 用户角度:为用户提供使用计算机的环境和服务。 操作系统特征:1.并发性:指两个或多个事件在同一时间间隔内发生。 2.共享性:资源可供内存中多个并发执行的进程(线程)共同使用 3.虚拟性:是指通过某种技术把一个物理实体变为若干个逻辑上的对应物 在操作系统中,虚拟的实现主要是通过分时使用的方法。 4.异步性:进程是以人们不可预知的速度向前推进,此即进程的异步性 客户/服务器模式的优点: 1.提高了系统的灵活性和可扩充性 2.提高了OS的可靠性 3.可运行于分布式系统中 微内核的基本功能: 进程管理、进程间通信、存储器管理、低级I/O功能。 第二章进程 程序和进程区别:程序是静止的,进程是动态的,进程包括程序和程序处理的对象 程序顺序执行:顺序性,封闭性,可再现性 程序并发执行:间断性,无封闭性,可再现性 进程:1.进程是可并发执行的程序的一次执行过程; 2.是系统进行资源分配和调度的一个独立的基本单位和实体; 3.是一个动态的概念。 进程的特征: 1.动态性: 进程是程序的一次执行过程具有生命期; 它可以由系统创建并独立地执行,直至完成而被撤消 2.并发性; 3.独立性; 4.异步性; 进程的基本状态: 1.执行状态; 2.就绪状态; 3.阻塞状态; 进程控制块PCB:记录和描述进程的动态特性,描述进程的执行情况和状态变化。 是进程存在的唯一标识。 进程运行状态: 1.系统态(核心态,管态)具有较高的访问权,可访问核心模块。 2.用户态(目态)限制访问权 进程间的约束关系: 1.互斥关系 进程之间由于竞争使用共享资源而产生的相互约束的关系。

安装操作系统的步骤

安装操作系统的步骤::: 一】 . XP操作系统的安装 操作系统好比是一个舞台,只有建好了它,各种硬件和软件才能相互配合、相互作用地进行表演而又不产生相互的干扰和冲突;它又象导演,指挥整个剧组有条不紊地工作。 〔1〕.如何设置从光盘起动 当要从光盘上进行系统安装时,就必须保证电脑支持可以从光盘来启动,否则,必须进行以下设置: 1.)开机,在屏幕左下角出现反亮“Del”时,迅速按下小键盘处的Del键,随后即进入了BIOS界面; 2.)将光标移动到BIOS表格第一列的第二项“Advanced BIOS Features”上,按回车键“Enter”即进入下一层列表; 3.)用↑↓键选择光标到“First Boot Device”项,按回车进入下一层列表,分别代表了不同的启动设备,用↑↓键将光标定在“CDROM”项上,按回车键回到上一层列表; 4.)接按F10键,则出现一行红框,最后一个是闪动着的“Y”字母,再按回车键退出,这样就设置成了支持光盘启动;此时电脑将重启; 各种电脑的BIOS进入方法可能不同,设置或有差别,但基本大同小异,一般应参看主板说明书;(注:在进行以上第4步操作前,应该先打开光驱托盘,装入支持光启的系统盘。)〔2〕 .系统的安装 5.)BIOS设定后,重启(当然这时光驱中应放入支持启动的系统光盘),当屏幕上出现press any key boot from CD.._字样时或者选择刚重启时即快速按主键盘区的任意键——如空格键方法,则光驱读取系统光盘上的引导程序并开始进行安装;这步很重要,否则不能启动光盘安装; 6.)启动后出现“欢迎使用安装程序”界面及安装选项,如;全新安装、修复系统等,这里选全新安装! 7.)进入分区选项后,可根据自己的需要或喜好确定分区数和分区大小,一般C盘是操作系统和很多应用程序及各种软件安装的首选,故应适当选择!(注意:如果是同样的系统只进行操作系统的全新安装,则只要重新格式化C盘即可,可不必改动其余分区的大小,这样其它盘中的数据仍然可用。)C盘的格式化可选FAT32文件格式,也可选NTFS文件格式,当然,采用NTFS文件系统格式可节约磁盘空间和提高安全性; 8.)当出现区域和语言设置选项时,选默认即可,接下来出现姓名、单位、产品密钥选项,姓名和单位可以任意输入,但产品密钥--即序列号(HCQ9D-TVCWX-X9QRG-J4B2Y-GR2TT)则必须正确输入,下一步若设置了管理员密码,则必须牢记!因为每次开机都要求输入,输错或不输都进不电脑!也可以选择什么也不输——跳过!(注:此时只有系统自带的几种输入法,一般用shift+ctrl键选择); 9.)日期和时间选北京、重庆、香港时区这项就行了; 10.)网络安装选项时,选默认即可; 注:至此,人为参与安装系统的过程结束,剩下的便自动完成,一般安装结束后系统会重启,这段时间较长,需耐心等待,当出现未重启或淡黄(或淡兰)色屏很长时间而无变化时,可人为强制重启; 〔三〕.驱动程序安装

WinCE操作系统

WinCE操作系统 WinCE操作系统是通用型的嵌入式操作系统,它是一个开放的、可升级的32位嵌入式操作系统,是基于掌上型电脑类的电子设备操作系统,它是精简的Windows 95,Windows CE的图形用户界面相当出色。它1996年开始发布Windows CE 1.0版本,2004年7月发布了Windows CE .NET 5.0版本,目前用得最多的是Windows CE .NET 4.2版本,其发展速度也是很快的,功能上自不必描述,它的主要应用领域有PDA市场、Pcket PC、Smartphone、工业控制、医疗等。 就WinCE来讲,你无法买到WinCE这个操作系统,你买到的是Platform Builder for https://www.sodocs.net/doc/9f6046444.html, 4.2的集成开发环境,我们也简称为PB,利用它你可以剪裁和定制出一个符合你自己需要的https://www.sodocs.net/doc/9f6046444.html, 4.2的操作系统,因此,我们说的操作系统实际上完全是由自己定制出来的,这就是嵌入式操作系统最大的特点。 Windows CE具有模块化、结构化和基于Win32应用程序接口和与处理器无关等特点。Windows CE不仅继承了传统的Windows图形界面,并且在Windows CE平台上可以使用Windows 95/98上的编程工具(如Visual Basic、Visual C++等)、使用同样的函数、使用同样的界面风格,使绝大多数的应用软件只需简单的修改和移植就可以在Windows CE平台上继续使用。Windows CE并非是专为单一装置设计的,所以微软为旗下采用Windows CE作业系统的产品大致分为三条产品线,Pocket PC(掌上电脑)、Handheld PC(手持设备)及Auto PC。 WindowsCE版本主要有1.0、2.0、3.0、4.0、4.2、5.0 和6.0 WINCE1.0是一种基于Windows95的操作系统,其实就是单色的Windows95简化版本。技术支持、直接资助等手段聚集了大量合作厂商,使WinCE类的PDA 阵容越来越强大。 WinCE2.0不仅比CE1.0快的多,而且的彩色显示,又众多新型PDA采用新的WinCE2.0系统,大有取代Pilot的趋势,成为PDA操作系统新的标准。尽管CE2.0仍然要比Pilot的操作系统需要的空间要大的多,但它具有Windows的界面,会用PC的人小编估计没有多少人不会使用微软的操作系统。 WinCE3.0是微软的Windows Compact Edition,是一个通用版本,并不针对掌上产品,标准PC、家电和工控设备上也可以安装运行,但要做许多客户化工作,当然也可以做掌上电脑。WinCE3.0把Pocket Word和Pocket Excel等一些日常所需的办公软件的袖珍版装了进去Pocket PC,同时在娱乐方面的性能做很大的加强。 https://www.sodocs.net/doc/9f6046444.html,(即WinCE 4.0)是微软于2002年1月份推出的首个以.Net为名的操作系统,从名字上我们就可以知道它是微软的.net的一部分。https://www.sodocs.net/doc/9f6046444.html,是WinCE3.0的升级,同时还加入.Net Framework精简版,支持蓝牙和.Net应用程序开发。 https://www.sodocs.net/doc/9f6046444.html, 4.2是https://www.sodocs.net/doc/9f6046444.html, 4.0/4.1的升级版,对Windows CE先前版本的强大功能进行了进一步的扩充和丰富,基于其开发的设备将从这些微小但重要的变化中获得更好的性能和更强的Windows集成功能。微软在WinCE4.2版时曾提供开放源代码,不过只针对研究单位,而程序代码较少,为200万行。WinCE5.0在2004年5月份推出,微软宣布WinCE5.0扩大开放程序源代码。在这个开放源代码计划授权下,微软开放250万行源代码程序作为评估套件(evaluationkit)。凡是个人、厂商都可以下载这些源代码加以修改使用,未来厂商OEM时,则再依执行时期(Run-time)授权,支付Win CE5.0核心每台机器3美元的授权费用,这也是微软第一个提供商业用途衍生授权的操作系统。

计算机操作系统复习知识点汇总(2)

《计算机操作系统》复习大纲 第一章绪论 1. 掌握用户程序的主要处理阶段; 1. 掌握进程与程序的区别和关系; 3.掌握分页存储管理技术的实现思想; 2. 掌握进程的基本状态及其变化; 4.掌握分段存储管理技术的实现思想; 6. 掌握临界资源、临界区; 2. 掌握常用设备分配技术;7. 掌握信号量,PV 操作的动作, 3. 掌握使用缓冲技术的目的;8. 掌握进程间简单同步与互斥的实现。 第六章文件管理 带权周转时间; 4. 掌握死锁;产生死锁的必要条件;死锁预 2.掌握系统调用的概念、类型和实施过程。 1.掌握操作系统的基本概念、主要功能、 第四章存储器管理 2.理解分时、实时系统的原理; 2.掌握存储器管理的功能;有关地址、重定 第二章进程管理 位、虚拟存储器、分页、分段等概念; 3.掌握进程控制块的作用; 4.掌握进程的同步与互斥; 5.掌握多道程序设计概念; 5.掌握页面置换算法。 第五章设备管理 1.掌握设备管理功能; 本特征、主要类型; 第三章处理机调度 1.掌握文件、文件系统的概念、文件的逻辑 1.掌握作业调度和进程调度的功能; 组织和物理组织的概念; 2.掌握简单的调度算法:先来先服务法、时 2.掌握目录和目录结构;路径名和文件链 间片轮转法、优先级法; 接; 3. 掌握评价调度算法的指标: 吞吐量、周转 3.掌握文件的存取控制; 对文件和目录的主 时间、平均周转时间、带权周转时间和平均 要操作 防的基本思想和可行的解决办法; 第七章操作系统接口 5.掌握进程的安全序列, 死锁与安全序列的 1.掌握操作系统接口的种类; 关系;

计算机操作系统复习知识点汇总 第一章 1、 操作系统的定义、目标、作用 操作系统是配置在计算机硬件上的第一层软件, 设计现代OS 的主要目标是:方便性,有效性, OS 的作用可表现为: a. OS 作为用户与计算机硬件系统之间的接口; b. OS 作为计算机系统资源的管理者;(资源管理的 观点) c. OS 实现了对计算机资源的抽象. 2、 脱机输入输出方式和SPOOLing 系统(假脱机或联机输入输出方式)的联系 和区别 脱机输入输出技术(Off-Line I/O)是为了解决人机矛盾及CPU 的高速性和I/O 设备 低速性间的矛盾而提出的.它减少了 CPU 的空闲等待时间,提高了 I/O 速度. 由于程序和数据的输入和输出都是在外围机的控制下完成的, 或者说,它们 是在脱离主机的情况下进行的,故称为脱机输入输出方式;反之,在主机的直接 控制下进行输入输出的方式称为联机( 假脱机输入输出技术也提高了 I/O 备,实现了虚拟设备功能。 3、 多道批处理系统需要解决的问题 处理机管理问题、内存管理问题、 管理问题 4 OS 具有哪几个基本特征?它的 最基本特征是什么? a. 并发性(Concurrenee)共享性(Sharing)虚拟性(Virtual),异步性(Asynchronism). b. 其中最基本特征是并发和共享. c. 并发特征是操作系统最重要的特征,其它三个特征都是以并发特征为前提的。 5、并行和并发 并行性和并发性是既相似又有区别的两个概念, 并行性是指两个或多个事 件 在同一时刻发生;而并发性是指两个或多少个事件在同一时间间隔内发生。 6、 操作系统的主要功能,各主要功能下的扩充功「 a. 处理机管理功能: 进程控制,进程同步,进程通信和调度. b. 存储管理功能: 内存分配,内存保护,地址映像和内存扩充等 c. 设备管理功能: 缓冲管理,设备分配和设备处理,以及虚拟设备等 d. 文件管理功能: 对文件存储空间的管理,目录管理,文件的读,写管理以及檔的共享和保 护 7、 操作系统与用户之间的接口 a. 用户接口:它是提供给用户使用的接口,用户可通过该接口取得操作系统 的服务 是对硬件系统的首次扩充。 可扩充性和开放性 . (一般用户的观点) SPOOLing)输入输出方式 的速度,同时还将独占设备改造为共享设 I/O 设备管理问题、文件管理问题、作业

windowsce操作系统简述

Windows CE 百科名片 WindowsCE是微软公司嵌入式、移动计算平台的基础,它是一个开放的、可升级的32位嵌入式操作系统,是基于掌上型电脑类的电子设备操作系统,它是精简的Windows 95,Windows CE的图形用户界面相当出色。 简介 Windows CE操作系统是Windows家族中的成员,为专门设计给掌上电脑(HPCs)以及嵌入式设备所使用的系统环境。这样的操作系统可使完整的可移动技术与现有的Windows桌面技术整合工作。Windows CE被设计成针对小型设备(它是典型的拥有有限内存的无磁盘系统)的通用操作系统, Windows CE可以通过设计一层位于内核和硬件之间代码来用设定硬件平台,这即是众所周知的硬件抽象层(HAL)(在以前解释时,这被称为OEMC(原始设备制造)适应层,即OAL;内核压缩层,即KAL。以免与微软的Windows NT操作系统的HAL混淆)。 与其它的微软Windows操作系统不同,Windows CE并不是代表一个采用相同标准的对所有平台都适用的软件。为了足够灵活以达到适应广泛产品需求,Windows CE可采用不同的标准模式,这就意味着,它能够从一系列软件模式中做出选择,从而使产品得到定制。另外,一些可利用模式也可作为其组成部分,这意味着这些模式能够通过从一套可利用的组份做出选择,从而成为标准模式。通过选择,Windows CE能够达到系统要求的最小模式,从而减少存储脚本和操作系统的运行,也为企业创造更大效益[1]。 Windows CE中的C代表袖珍(Compact)、消费(Consumer)、通信能力(Connectivity)和伴侣(Companion);E代表电子产品(Electronics)。与Windows 95/98、Windows NT不同的是,Windows CE是所有源代码全部由微软自行开发的嵌入式新型操作系统,其操作界面虽来源于Windows 95/98,但Windows CE是基于WIN32 API重新开发、新型的信息设备的平台。Windows CE具有模块化、结构化和基于Win32应用程序接口和与处理器无关等特点。Windows CE不仅继承了传统的Windows图形界面,并且在Windows CE平台上可以使用Windows 95/98上的编程工具(如Visual Basic、Visual C++等)、使用同样的函数、使用同样的界面风格,使绝大多数的应用软件只需简单的修改和移植就可以在

系列服务器windows操作系统安装步骤

IBM X系列服务器Windows操作系统安装步骤

引言 本文介绍采用IBM Server Guide光盘引导安装Windows操作系统,使用IBM Server Guide光盘安装会清除硬盘上的分区和数据,安装前请务必向客户说明,确认是否需要备份数据。 一、工具准备 IBM ServerGuide光盘一张, windows操作系统安装光盘一套(以windows2003为例), IBM ServeRAID Manager 安装光盘一张。 需要注意的是,根据服务器型号不同,所需要的IBM ServerGuide光盘 版本也不同,下面给出两者对应关系,请根据服务器型号选择合适版本。 二、具体安装步骤 1、设置服务器从光驱启动,开机按F1-startup进行设置。 2、用ServerGuide CD光盘启动服务器,光盘启动后,显示如下画面 选择使用本引导盘的语言(注意:此时语言为ServerGuide引导程序语言,与所要安装操作系统无关),出现如下画面,选择English) 3、选择键盘布局以及国家或地区画面,在这里全部选择United States,然后 点击Next 4、出现许可协议界面,阅读许可协议内容,点击I accept继续即可 中文用户可以在Language选项中选择Chinese 阅读中文协议 5、查看概述了解ServerGuide 功能,请在使用前仔细查看相关使用说明,点击Next继续 6、在这里可以选择要安装的操作系统,选择后点击Next 7、列表显示接下来将要做的配置,目前提示要设置日期和时间,点击Next 8、设置正确的日期和时间后点击Next 9、当出现清除硬盘信息界面时,请根据需要选择,如果需要保留已有的阵列信息,请选择Skip this task,但硬盘上的数据和分区仍然会被清除掉,选择clear all hard …会直接清除阵列及硬盘信息,如无特殊要求,我们一般选择第二项clear all hard disk drives and restore servraid to defaults,选择后点击Next继续

操作系统知识点总结

操作系统是一组控制和管理计算机硬件和软件资源,合理地对各类作业进行调度,以及方便用户使用的程序的集合。 虚拟机:在裸机的基础上,每增加一层新的操作系统的软件,就变成了功能更为强大的虚拟机或虚机器。 操作系统的目标:1. 方便性2. 有效性3. 可扩充性4. 开放性 操作系统的作用:OS作为用户与计算机硬件系统之间的接口;OS作为计算机系统资源的管理者;OS实现了对计算机资源的抽象(作扩充机器)。 操作系统的特征:并发性;共享性;虚拟性;异步性 推动操作系统发展的主要动力:不断提高计算机资源利用率;方便用户;器件的不断更新换代;计算机体系结构的不断发展。 人工操作方式的特点:用户独占全机;CPU等待人工操作;独占性;串行性。缺点:计算机的有效机时严重浪费;效率低 脱机I/O方式的主要优点:减少了CPU的空闲时间;提高I/O速度。 单道批处理系统的特征:自动性; 顺序性;单道性 多道批处理系统原理:用户所提交的作业都先存放在外存上并排成一个队列,称为“后备队列”;然后,由作业调度程序按一定的算法从后备队列中选择若干个作业调入存,使它们共享CPU和系统中的各种资源。 多道批处理系统的优缺点资源利用率高;系统吞吐量大;可提高存和I/O设备利用率;平均周转时间长;无交互能力 多道批处理系统需要解决的问题(1)处理机管理问题(2)存管理问题(3)I/O设备管理问题4)文件管理问题(5)作业管理问题 分时系统:在一台主机上连接了多个带有显示器和键盘的终端,同时允许多个用户通过自己的终端,以交互方式使用计算机,共享主机中的资源。 时间片:将CPU的时间划分成若干个片段,称为时间片,操作系统以时间片为单位,轮流为每个终端用户服务 实时系统与分时系统特征的比较:多路性;独立性;及时性;交互性;可靠性 操作系统的特征:并发性;共享性;虚拟性;异步性 操作系统的主要功能:处理机管理;存储器管理;设备管理;文件管理;作业管理 对处理机管理,可归结为对进程的管理:进程控制(创建,撤消,状态转换);进程同步(互斥,同步);进程通信;进程调度(作业调度,进程调度)。 存储器管理功能:存分配(最基本);存保护;地址映射;存扩充 设备管理功能:设备分配;设备处理(相当于启动);缓冲管理;虚拟设备 文件管理功能:文件存储空间管理;目录管理;文件读写管理;文件保护。 用户接口:命令接口;程序接口;图形接口 传统的操作系统结构:无结构OS;模块化OS结构;分层式OS结构 模块化操作系统结构:操作系统是由按其功能划分为若干个具有一定独立性和大小的模块。每个模块具有某个方面的管理功能,规定好模块之间的接口。 微核的基本功能:进程管理-存储器管理-进程通信管理-I/O设备管理 进程的特征:动态性(最基本);并发性;异步性;独立性;结构特征(程序段,数据段,进程控制块PCB) 进程的基本属性:可拥有资源的独立单位;可独立调度和分配的基本单位。 进程控制块的基本组成:进程标识符;处理机的状态;进程调度所需信息;进程控制信息。进程控制一般是由操作系统的核中的原语来实现 临界资源:如打印机、磁带机等一段时间只允许一个进程进行使用的资源。

从硬盘安装Linux操作系统的方法步骤(精)

从硬盘安装Linux操作系统的方法步骤来源: ChinaUnix博客日期:2007.04.22 18:30(共有0条评论我要评论从硬盘安装Linux操作系统,首先要准备安装包,Linux操作系统的安装包通常是一个或多个ISO镜像文件(一般通过网络下载就可以得到;其次,要通过某种手段启动镜像文件中的系统安装程序;接下来,按照安装程序的提示信息进行安装就可以了。安装过程中,需要指定Linux操作系统的安装位置,这主要涉及硬盘分区的一些知识。综合来看,学习Linux操作系统的安装,关键要学会两点:第一、如何为Linux操作系统准备硬盘空间?第二、如何启动ISO镜像文件中的安装程序。硬盘分区通常,在使用硬盘时,都要进行分区。如果把未分区的硬盘比做一张大白纸,那么分区后的硬盘就相当于这张大白纸被画上了几个大方框。一块硬盘被分成多个分区之后,各分区之间是相对独立的,每个分区都可以有自己的文件格式,例如 FAT16、FAT32、NTFS等等。Linux 操作系统需要的硬盘分区要安装一个操作系统,一般来讲都要为它准备专门的分区。专门,意味着不能与其他操作系统合用一个分区,也意味着不要与用户自己的数据文件合用一个分区,前者是因为不同的操作系统可能需要不同格式的磁盘分区,后者则更多地出于用户数据安全和系统维护方便的考虑。从最低配置角度讲,Linux 操作系统需要一个EXT2或EXT3格式的硬盘分区作为根分区,大小在2~5G就可以。另外还需要一个SWAP 格式的交换分区,大小与内存有关:如果内存在256M以下,交换分区的大小应该是内存的两倍;如果内存在256M以上,交换分区的大小等于内存大小即可。Linux 硬盘分区管理工具在安装Linux 操作系统时,如果选择了手工的分区方式,将启动硬盘分区工具Disk Druid。这个程序是安装程序自带的。下面讨论一下该软件的使用。Linux下硬盘分区的标识在Linux 下用hda、hdb 等来标识不同的硬盘;用hda1、hda2、hda5、hda6 来标识不同的分区。其中,字母a 代表第一块硬盘,b代表第二块硬盘,依次类推。而数字1 代表一块硬盘的第一个分区、2 代表第二个分区,依次类推。1到4 对应的是主分区(Primary Partition)或扩展分区(Extension Partition。从5开始,对应的都是硬盘的逻辑分区(Logical Partition)。一块硬盘即使只有一个主分区,逻辑分区也是从5开始编号的,这点应特别注意。系统上有一块硬盘,名字为/dev/hda,它上面有一个NTFS 格式的主分区hda1 以及

计算机操作系统知识点总结一

第一章 ★1.操作系统的概念:通常把操作系统定义为用以控制和管理计算机系统资源方便用户使用的程序和数据结构的集合。★2.操作系统的基本类型:批处理操作系统、分时操作系统、实时操作系统、个人计算机操作系统、网络操作系统、分布式操作系统。 ①批处理操作系统 特点: 用户脱机使用计算机 成批处理 多道程序运行 优点: 由于系统资源为多个作业所共享,其工作方式是作业之间自动调度执行。并在运行过程中用户不干预自己的作业,从而大大提高了系统资源的利用率和作业吞吐量。 缺点: 无交互性,用户一旦提交作业就失去了对其运行的控制能力;而且是批处理的,作业周转时间长,用户使用不方便。 批处理系统中作业处理及状态 ②分时操作系统(Time Sharing OS) 分时操作系统是一个联机的多用户交互式的操作系统,如UNIX是多用户分时操作系统。 分时计算机系统:由于中断技术的使用,使得一台计算机能连接多个用户终端,用户可通过各自的终端使用和控制计算机,我们把一台计算机连接多个终端的计算机系统称为分时计算机系统,或称分时系统。 分时技术:把处理机的响应时间分成若于个大小相等(或不相等)的时间单位,称为时间片(如100毫秒),每个终端用户获得CPU,就等于获得一个时间片,该用户程序开始运行,当时间片到(用完),用户程序暂停运行,等待下一次运行。 特点: 人机交互性好:在调试和运行程序时由用户自己操作。 共享主机:多个用户同时使用。 用户独立性:对每个用户而言好象独占主机。 ③实时操作系统(real-time OS) 实时操作系统是一种联机的操作系统,对外部的请求,实时操作系统能够在规定的时间内处理完毕。 特点: 有限等待时间 有限响应时间 用户控制 可靠性高 系统出错处理能力强 设计实时操作系统要考虑的一些因素: (1)实时时钟管理 (2)连续的人—机对话 (3)过载 (4) 高度可靠性和安全性需要采取冗余措施。 ④通用操作系统 同时兼有多道批处理、分时、实时处理的功能,或其中两种以上的功能。 ⑤个人计算机上的操作系统

WindowsCE编程的十点忠告

Windows CE 编程的十点忠告 最近两周我们花了大部分时间将已有的应用程序移植到Microsoft Windows CE中。一般说来,这个计划不是太难。我们起步于Microsoft Win32代码,当然Windows CE是基于Win32应用程序接口(API)的。有利的是,我们的应用程序(即Raima 数据管理器)有方便的使用接口,并包含一个大约由150个子函数组成的库,这些函数都是由C语言写成,可以用来创建、管理和访问数据库。 按建立应用程序的方式来说,我们原以为将它移植到Windows CE中是一项相对简单的C语言编程练习。然而,我们不久便遇到好些困难。从粗心大意的错误开始,比如在基于Windows NT 的Windows CE仿真器上使用Microsoft Windows NT库,接着又违背Windows CE的编程戒律,如"千万不要给Unicode(国际标准组织10646标准)字符分配奇数内存地址"。 大约有百分之九十的问题或多或少地与Unicode有关。尽管Unicode编程不难,但是,当给单字节字符编写代码时,很容易出错(我有过许多次错误)。 下面这些忠告是根据我们在Windows CE上编写Raima 数据管理器的经验总结出来的,但我相信,在做任何其它Windows CE程序之前,它们都值得借鉴。毕竟大多数Windows开发者,当他们创建第一个Windows CE应用程序时,真正运用的是已掌握的Win32知识。 1. 不要在仿真器上使用Windows NT库 这里所讨论的第一个错误实在太愚蠢了,但我还是陷了进去,也许你也会。当用Microsoft VC++(5.0版)创建一个Windows CE程序时,你会发现,包含路径(include)、库路径(library)、及可执行程序路径被自动调整以匹配反应目标环境的选择。因此,比如说为Windows CE模拟器建立应用程序时,你会发现,include路径没有指向Win32的包含文件(在VC目录下),而是指向Windows CE包含文件(在WCE目录下)。千万别去修改。 由于Windows CE在Windows NT下运行,所以仿真器上运行的程序能够调用任一Windows NT动态链接库(DLL)中的函数,即使这个DLL不是模拟器的成员也一样。显然,这不是很好的事,因为相同的函数也许在手持PC(H/PC)或Windows CE 设备上不可用,而你的软件最终要能在这些设备上运行。 第一次将非Unicode应用程序装入Windows CE仿真器时,你会发现,许多正在使用的函数它都不支持,例如美国国家标准协会(ANSI)定义的字符函数strcpy()。这也许引诱你去链接Windows NT 运行时间库,以便能解决所有问题。 如果你是刚开始用Windows CE编程,可能你能用的包含文件和库文件是明显的。答案就是,你不要采用那些在写普通Win32或非Windows CE程序时使用的包含文件和库文件。 2. 不要混淆TCHARs和bytes 如果你正在Windows CE上写非Unicode应用程序,你或许要将所有的字符串从单个字符(chars)转换为宽字符(widechars)(例如,C变量类型whcar_t)。几乎所有Windows CE支持的Win32和运行时间库函数都要求宽字符变量。Windows 95不支持Unicode,然而,为了使程序代码具有可移植性,你要尽可能采用tchar.h中定义的TCHAR类型,不要直接使用wchar_t。 TCHAR是定义为wchar_t还是char,取决于预处理器的符号UNICODE是否定义。同样,所有有关字符串处理函数的宏,如_tcsncpy宏,它是定义为Unicode函数wcsncpy还是定义为ANSI函数strncpy,取决于UNICODE是否定义。 在现存的Windows应用程序中,有些代码也许暗示字符长为单字节。这在给字符串分配内存时经常用到,例如:

安装操作系统教程

操作系统安装流程 YZF2(001B) —·杨昭飞·— —·Zhophy Young·— 一、启动盘制作。 常用的启动盘有两种:1.刻录盘;2.系统盘。 制作启动盘所用到的软件:UltraISO、电脑电、大白菜、老毛桃等,我用的是电脑店。 1.刻录盘 刻录盘是通过UltraISO软件制作的一种在U盘只有系统文件的启动盘,刻录盘一旦制作完成就不能再随便拷入或删减U盘内的文件,也不能再拷入和删减系统无关的文件,以确保文件的完整性。 2.系统盘 系统盘是把大白菜或者老毛桃软件小系统win PE安装在U盘,使U盘内的小系统具有独立显示的功能。这种启动盘的优点是在不挪用镜像文件的情况下可以随意拷入和删减其他文件,不影响文件的安装。只要存储空间足够,可以当做一般U盘使用。 二、刻录镜像文件。 Ultra软件制作刻录盘流程: (1)(System\启动盘\刻录盘\UltraISO 绿色免费版)解压,双击打开UltraISO_9.6.2.3059.exe,默认或者修改安装路径。安装完成输入注册码激活UltraISO软件。 (2)这里以安装win8系统为例,先制作win8刻录盘。 打开UltraISO软件,然后点击文件---打开---选择win8系统镜像文件(System\系统\win8\cn_windows_8_x86_dvd_915414),确认打开后就能在软件的界面内看到整个镜像文件的信息了。数据无价,先确认文件无误再继续下边的步骤。 接下来开始制作系统安装盘,点击启动---写入硬盘映像。

进入刻录界面后,在硬盘驱动器部分选择要写入的最小4G的U盘,确认无误后点击写入,等待一段时间就行了。

基于WindowsCE系统的模拟时钟设计

基于WindowsCE系统的模拟时钟设计 【摘要】本文介绍了一种基于Windows CE 6.0操作系统的模拟时钟的设计方法,该设计以三星公司的S3C2440为核心,基于MFC编程,实现了钟面上时分秒针的实时显示。本设计编译生成的.exe文件可做为Windows CE系统的一个应用程序使用。 【关键词】ARM;S3C2440;Windows CE;模拟时钟 1.引言 随着科学技术的发展,嵌入式设备广泛应用于商业管理和工业控制等领域。本设计以ARM9嵌入式微处理器S3C2440为核心,基于MFC编程,在开发板的液晶显示屏上显示模拟时钟,实现了时分秒针的实时显示。 2.硬件平台 本设计以ARM9嵌入式微处理器S3C2440开发板为核心,主要利用S3C2440内置的RTC模块,通过读取系统时间来实时绘制时针,实现模拟时钟的实时走动。 3.软件设计 3.1 对话框设计 建立工程之后,在Resource View中设计模拟时钟的界面,选定一个与S3C2440触摸屏相符的对话框界面。模拟时钟的显示用程序实现,在对话框下方放置从Toolbox中选择的控件。本设计总共用到九个控件:对话框控件,显示时分秒的静态文本控件,用于显示数字的动态控件,更改时间的控件和确定控件等。 3.2 程序设计 首先添加一个OnTimer()函数读取系统时间并用作计时器的消息处理函数,用于通知moniDlg类中的画表盘刻度和指针的函数重新绘图。添加设置时间按钮函数,用于导出软键盘,设置时间;确认按钮函数用于关闭软键盘,此时屏幕刷新。 3.2.1 表盘刻度画法 在moniDlg类中添加画表盘刻度的函数。程序创建两种画笔,设置不同的颜色和粗细,来区分整点时刻和分点时刻。 由于S3C2440开发板显示屏默认的原点在左上角,根据S3C2440触摸屏的大小确定圆心位置,这样就确定了表盘的位置,表盘上的刻度都在以圆心为中心的圆环上。其坐标可以通过三角函数推导出来。设圆心坐标为(X,Y),半径为R,表盘上其他点的坐标为(X1,Y1),该点与圆心X轴夹角为A(0~360度),该点坐标为(X1=X+RcosA,Y1=Y+RsinA)。 由于我们习惯上使用逆时针的角度,而表针是顺时针转动,即在S3C2440上,坐标跟我们实际用到的坐标方向不同,所以我们应先算出从12点开始的每个刻度的正余弦值,即有60个数组元素的正余弦数组,为计算每个刻度跟时分秒针在表盘中的位置做准备。校正后的角度值,按顺时针重新排列三角函数值,得到如下正余弦数组: 时钟表盘画法流程图:见图1。 画表盘核心代码: 3.2.2 指针画法 在moniDlg类中添加刻画指针的函数。时分秒针主要用长短和粗细区分,亦

操作系统原理知识点总结

第一章绪论 1、操作系统是一组控制和管理计算机硬件和软件资源、合理的对各类作业进行调度以方便用户的程序集合 ※2、操作系统的目标:方便性、有效性、可扩展性、开发性 ※3、操作系统的作用:作为计算机硬件和用户间的接口、作为计算机系统资源的管理者、作为扩充机器 4、单批道处理系统:作业处理成批进行,内存中始终保持一道作业(自动性、顺序性、单道性) 5、多批道处理系统:系统中同时驻留多个作业,优点:提高CPU利用率、提高I/O设备和内存利用率、提高系统吞吐量(多道性、无序性、调度性) 6、分时技术特性:多路性、交互性、独立性、及时性,目标:对用户响应的及时性 7、实时系统:及时响应外部请求,在规定时间内完成事件处理,任务类型:周期性、非周期性或硬实时任务、软实时任务 ※8、操作系统基本特性:并发、共享、虚拟、异步性 并行是指两或多个事件在同一时刻发生。 并发是两或多个事件在同一时间间隔内发生。 互斥共享:一段时间只允许一个进程访问该资源 同时访问:微观上仍是互斥的 虚拟是指通过某种技术把一个物理实体变为若干个逻辑上的对应物。 异步是指运行进度不可预知。 共享性和并发性是操作系统两个最基本的特征 ※9、操作系统主要功能:处理机管理、存储器管理、设备管理、文件管理、用户管理 第二章进程的描述和控制 ※1、程序顺序执行特征:顺序性、封闭性、可再现性 ※2、程序并发执行特征:间断性、失去封闭性、不可再现性 3、前趋图:有向无循环图,用于描述进程之间执行的前后关系 表示方式: (1)p1--->p2 (2)--->={(p1,p2)| p1 必须在p2开始前完成} 节点表示:一条语句,一个程序段,一进程。(详见书P32) ※4、进程的定义: (1)是程序的一次执行过程,由程序段、数据段、程序控制块(PBC) 三部分构成,总称“进程映像” (2)是一个程序及其数据在处理机上顺序执行时所发生的活动 (3)是程序在一个数据集合上的运行过程 (4)进程是进程实体的运行过程,是系统进行资源分配和调度的 一个独立单位 进程特征:动态性、并发性、独立性、异步性 由“创建”而产生,由“调度”而执行;由得不到资源而“阻塞”,

Windows CE系统软件移植流程

Windows CE系统软件移植流程 Windows CE(以下简称CE)是一个可定制的嵌入式操作系统,为了适应不同的硬件平台,需要对BSP、Device Driver、bootloader等进行修改、定制。本文主要讨论在BSP、driver 等已完成的基础上如何移植,关于BSP、driver等的定制在其他文档中详细描述。 Microsoft为定制CE平台提供了一个集成开发工具——Platform Builder(以下简称PB),我们的工作都是利用这个工具完成的。另需注意,本文是以X-Hyper255B开发板为例进行说明的。 1.安装BSP(Board Support Packet) 为了定制CE,BSP是必需的。BSP包括bootloader、kernel、Device driver和configuration。在利用PB生成特定平台的CE之前,必须先安装针对该平台的BSP。例如,在安装完X-Hyper255B开发板的BSP后,在PB的Third Party中会出现它的BSP。 2.为X-Hyper255B定制CE平台 2.1. 创建一个新平台 1.在PB中选择File->New Platform开始“New Platform Wizard”。

2.在BSP列表中选择“X-HYPER255B:ARMV4”。 3.后续步骤按向导的提示进行,比较简单,这里不再赘述。 2.2. 设置平台参数 在生成kernel image之前应该对平台进行一些设置。 1.如下图,右键单击选择“Settings…”(也可选择Platform->Settings)

2.在“Build Options”选择页中选中“Enable Eboot Space in Memory”和“Enable Full Kernel Mode”。 2.3. 生成Kernel Image 1.选择Build->Generate Platform Headers。 2.选择Build->Build Platform。

电脑系统安装步骤图解

系统安装步骤说明: 一、准备工作: 如何重装电脑系统 首先,在启动电脑的时候按住DELETE键进入BIOS,选择Advanced BIOS Features选项,按Enter键进入设置程序。选择First Boot Device 选项,然后按键盘上的Page Up或Page Down键将该项设置为CD-ROM,这样就可以把系统改为光盘启动。 其次,退回到主菜单,保存BIOS设置。(保存方法是按下F10,然后再按Y键即可) 1.准备好Windows XP Professional 简体中文版安装光盘,并检查光驱是否支持自启动。 2.可能的情况下,在运行安装程序前用磁盘扫描程序扫描所有硬盘检查硬盘错误并进行修复,否则安装程序运行时如检查到有硬盘错误即会很麻烦。 3.用纸张记录安装文件的产品密匙(安装序列号)。 4.可能的情况下,用驱动程序备份工具(如:驱动精灵2004 V1.9 Beta.exe)将原Windows XP下的所有驱动程序备份到硬盘上(如∶F:Drive)。最好能记下主板、网卡、显卡等主要硬件的型号及生产厂家,预先下载驱动程序备用。 5.如果你想在安装过程中格式化C盘或D盘(建议安装过程中格式化C盘),请备份C盘或D盘有用的数据。 二、用光盘启动系统: (如果你已经知道方法请转到下一步),重新启动系统并把光驱设为第一启动盘,保存设置并重启。将XP安装光盘放入光驱,重新启动电脑。刚启动时,当出现如下图所示时快速按下回车键,否则不能启动XP系统光盘安装。如果你不知道具体做法请参考与这相同的-->如何进入纯DOS系统: 光盘自启动后,如无意外即可见到安装界面,将出现如下图1所示 查看原图 全中文提示,“要现在安装Windows XP,请按ENTER”,按回车键后,出现如下图2所示

操作系统知识点

操作系统书本知识点 第一章操作系统引论 主要内容 操作系统的目标、作用和模型 操作系统的发展过程 操作系统的基本特征 OS(Operating Systems)的主要功能 OS的结构设计 本章要点 计算机系统结构:了解操作系统的地位 什么是操作系统:3种基本观点 现代操作系统的功能、特性、类型 基本概念:批处理、多道程序、作业、进程、任务、虚拟技术、并发性、异步性 操作系统的作用(1) 作为用户与计算机硬件系统之间的接口 作为计算机系统资源的管理者 处理机管理:分配和控制处理机 存储器管理:分配及回收内存 I/O(Input/Output)设备管理:I/O分配与操作 文件管理:文件存取、共享和保护 监视这些资源 实施某种资源分配策略 分配这种资源 回收这种资源 OS实现了对计算机资源的抽象 操作系统的发展过程 1.2.1无操作系统时的计算机系统 人工操作方式 ?如纸带输入机。 ?特点是用户独占全机及CPU等待人工操作。 脱机I/O方式(图1.3) ?引入I/O机的概念,解决前者的缺点。 ?特点是减少了CPU的空闲时间且提高I/O速度。 单道批处理系统 处理过程(图1.4) ?概念:系统对作业的处理都是成批进行的、且内存中始终只保持一道作业,称为单道批处理系统(simple batch system)。 ?批处理系统的引入是为了提高系统资源的利用率和吞吐量 ?概念:运行控制权 特征 ?自动性、顺序性、单道性 多道批处理系统(1)

优点 ?资源利用率高 ?系统吞吐量大 ?平均周转时间长 ?无交互能力 缺点 ?平均周转时间长、无交互能力 分时系统 分时系统的产生 ?概念:指一台主机上连接了多个带有显示器和键盘的终端,同时允许多个用户共享主机中的资源,各个用户都可通过自己的终端以交互方式使用计算 机。 分时系统在实现中的关键问题 ?及时接收:多终端卡、输入缓冲区 ?及时处理:交互作业应在内存、响应时间应短 分时系统的特征 ?多路性 ?独立性 ?及时性 ?交互性 ?可靠性 类型 ?实时控制 ?实时信息处理 实时系统(2) 实时任务类型 ?按任务执行是否呈现周期性来划分 ?周期性的(联系周期); ?非周期性的(联系开始或完成截止时间) ?根据对截止时间的要求来划分 ?硬实时任务 ?软实时任务 实时、分时的比较 ?多路性:相同 ?独立性:相同 ?及时性:实时系统要求更高 ?交互性:分时系统交互性更强 ?可靠性:实时系统要求更高 思考 试在交互性、及时性和可靠性方面,将分时系统和实时系统进行比较。 操作系统的基本特征(1) 并发性 ?并行是指两或多个事件在同一时刻发生。 ?并发是两或多个事件在同一时间间隔内发生。

Windows CE

Windows https://www.sodocs.net/doc/9f6046444.html,应用程序开发 作者: Paul Yao, Windows Embedded MVP Paul Yao的公司 20028月 使用于 Microsoft? Windows? https://www.sodocs.net/doc/9f6046444.html, application development Microsoft .NET Compact Framework 内容 简介 Win32 API Microsoft Foundation Class Library .NET Compact Framework 结语 简介 面对开发微软? Windows? CE .NET应用程序的众多选择可能会让你望之却步。想要建立传统图形使用者接口(GUI)的开发者可以选择微软Win32?应用程序接口(API)、对象导向式的微软基础类别库(Microsoft Foundation Class (MFC) library)或是.NET Compact Framework(有大量的程序模型及工具支持)。本份文件将会概述这些接口(API)的基本特征并使读者在选择时具有基本的知识背景。 本篇文件的主要目的是对比出在微软Windows CE(包括Pocket PC以及Windows CE .NET)上三种程序设计界面(API)的技术优点。通常,能拥有许多选择是件好事,但这也有可能导致我们要花更多时间在分析上。在选择应用程序接口的时候必须要深思熟虑,因为你所写下的程序代码不仅仅只是开发的时候要使用,也要考虑未来维护的便利性。 每个在本份文件中讨论到的应用程序接口(API)最初都是实作在微软桌上型(desktop)窗口上。实作在Windows CE .NET上的只是其子集合而已。如果你曾经在桌上型窗口下使用过其中任何一种接口,那么你将会发现其最核心的功能在掌上型窗口下一样支持。因此,你对前者具有的认知可能已足够你在后者作一个良

相关主题