Windows体系编程重点、答案及提示

Windows体系编程重点、答案及提示

ID:39470070

大小:33.50 KB

页数:5页

时间:2019-07-04

Windows体系编程重点、答案及提示_第1页
Windows体系编程重点、答案及提示_第2页
Windows体系编程重点、答案及提示_第3页
Windows体系编程重点、答案及提示_第4页
Windows体系编程重点、答案及提示_第5页
资源描述:

《Windows体系编程重点、答案及提示》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、Windows体系编程考试重点、答案及提示(仅供参考)说明:本文档由xxxxxxx整理完成,在此向他们表示感谢。如有发现错误,请及时向xxxx提出,以便修改。第一章1.API简介和组成API——ApplicationProgramInterface,应用程序编程接口。Win32环境下的任何语言都是建立在win32API基础上,MFC,VB,VF等对其进行了封装。API是最底层的服务。SDK(softwaredevelopmentkit)编程就是直接调用API函数进行编程。API组成:包括一组函数、结构、宏定义。2.API调

2、用方法API的调用方法:在文件的开头包含相应的头文件,然后在程序中直接调用它们就可以了。在自己的程序中调用API函数:1)包含要调用函数的声明文件;2)连接到指定库文件(即lib文件)(a)VC默认已经连接了常用的库文件(b)在工程设置link设定要连接的库文件,或者#pargmacomment(lib,”mylib.lib”)3)在API函数前加”::”符号,表示是一个全局函数第二章1.80386处理器三种工作模式(windows运行在保护模式下)80386处理器有三种工作模式:实模式、保护模式和虚拟86模式。wi

3、ndows系统运行在保护模式下。2.进程和线程之间的区别联系Ø进程是正在运行的应用程序的实例,拥有自己的代码、数据和其他系统资源,包含一个或多个线程Ø线程是进程内执行代码的独立实体。占有cpu时间片执行指令的是线程Ø进程至少包含一个主线程,主线程会创建其他线程。所有线程共享所属进程的内存空间和资源,且仅能访问属于它的进程内存3.虚拟内存和分配(用户空间,系统空间)在保护模式下,32位的Windows系统可寻址4GB的地址空间。机器上大小通常小于4GB,Windows使用虚拟内存技术将磁盘空间当作内存空间来使用。各进程的地址

4、空间被分成了用户空间和系统空间两部分.用户空间就是进程的私有地址空间.系统空间部分放置操作系统的代码,包括内核代码、设备驱动代码、设备缓冲区等.系统空间部分在所有的进程中是共享的。32位os可寻址4GB的地址空间,也就是os的虚拟内存空间为4G,win98下,4M——2G给应用程序预留,win2000下,64K——2G给应用程序预留,2G——4G为OS预留,0——64k不被映射,目的是为了捕捉程序中的错误。Windows采用分页机制管理内存,每页的大小为4k(x86处理器上),也就是说windows以4k为单位为应用程序分

5、配内存。4.内核模式和用户模式(创建进程不考)Windows使用了两种访问模式:内核模式与用户模式Ø用户程序在用户模式下运行,系统程序(服务、驱动)在内核模式下运行Ø内核模式——操作的一种高特权模式,其中的程序代码能直接访问所有内存(包括所有的用户模式进程和应用程序的地址空间)和硬件。也称为“管理员模式”、“保护模式”或“Ring0”。如果再细致地对此进行分类:它又可以被分为单内核模式和微内核模式两种。单内核模式代码结构紧凑、执行速度快,但是缺乏层次;微内核正好相反。单内核模式的代表如Linux;微内核模式的代表如Wind

6、ows.第三章1.创建线程的函数和参数的作用(编程题)看课件和例子重点2.线程内核对象的组成及作用线程上下文CONTEXT:每个线程自己的一组CPU寄存器,即线程上下文,反映该线程上次运行时CPU寄存器的状态使用计数Usagecount:记录线程内核对象的使用计数,值为0时,内核对象撤销;暂停计数Suspendcount:指明线程的暂停计数;0表示可调度,非0表示暂停退出代码Exitcode:指定线程的退出代码,即线程函数的返回值;运行期间,值为STILL_ACTIVE是否受信Signaled:指示线程对象是否为受信,状态

7、运行期间,值为FALSE,未受信,线程结束,值为TRUE,等待函数返回。3.线程终止方法线程函数自然返回使用ExitThread函数终止线程执行使用TerminateThread函数在一个线程中终止另一个线程的执行进程终止运行,系统会自动终止此进程中的所有线程的运行4.线程优先级的设置参考课件和例子5.线程同步方法,特点和比较临界区对象:能够很好的保护共享数据,但是它不能够用于进程之间资源的锁定,因为它不是内核对象互锁函数:为同步访问多线程共享变量提供了一个简单的机制。如果变量在共享内存,不同进程的线程也可以使用此机制。事

8、件内核对象:事件内核对象主要用于线程间通信。因为它是一个内核对象,所以可以跨进程使用,依靠通信,使各线程的工作协调进行,达到同步的目的。信号量内核对象:允许多个线程在同一时刻访问同一资源,但是需要限制在同一时刻访问此资源的最大线程数目;互斥内核对象:确保一个线程独占地访问资源,互斥内核对象的行为特征和关

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。