- 1、本文档共45页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
操作系统实验教案1(打印版).doc
《操作系统原理》
实 验 教 案
(基于Windows2000/XP平台)
讲授人: 谢士春
安排授课时间:2011-2012(一)
授课对象:09计算机科学与技术
实验项目列表
实验一 多线程的创建与撤销
实验二 线程的同步
实验三 线程的互斥
实验四 生产者-消费者问题
实验五 进程通信
实验六 动态链接库的建立和调试
实验七 页面置换算法模拟
实验八 文件的三种传输模式及性能比较
实验九 磁盘的读写
附录部分(可扩充)
附录1 读者-写者问题
附录2 梨子苹果之PV操作
附录3 命名管道编程规范
附录4 DLL编程规范
实验一 线程的创建与撤销
一、实验目的
通过本实验熟悉Windows系统提供的线程创建与撤销等API系统调用,掌握Windows系统环境下线程的创建与撤销方法。
二、实验内容
1. 熟悉开发环境Visual C++ 6.0;
2. Windows系统环境下线程的创建与撤销方法;
3.编程:在主线程中调用CreateThread( )创建1个子线程,并在子线程中显示类似“Thread is running !”等字样。
三、实验准备知识1. 线程创建函数 HANDLE CreateThread();HANDLE CreateThread(
LPSECURITY_ATTRIBUTES lpThreadAttributes, // pointer to security attributes
DWORD dwStackSize, // initial thread stack size
LPTHREAD_START_ROUTINE lpStartAddress, // pointer to thread function
LPVOID lpParameter, // argument for new thread
DWORD dwCreationFlags, // creation flags
LPDWORD lpThreadId // pointer to receive thread ID
);
线程函数原型 DWORD WINAPI Thread1Proc(LPVOID lpParameter )
2. 线程撤销函数VOID ExitThread(
DWORD dwExitCode // exit code for this thread
);
功能:撤销一个线程。该函数将终止线程的运行,并导致操作系统清除该线程使用的所有操作系统资源。但是,C + +资源(如C + +类对象)将不被撤消。说明:如果在主线程函数(main函数)中调用ExitThread,那么应用程序的主线程将停止运行但是,如果进程中至少有一个线程还在运行,该进程将不会终止运行。
3. 线程终止函数TerminateThread();
4. 线程挂起函数Sleep();
5. 关闭句柄函数CloseHandle( )。四、程序源代码及注释
【主要源代码参考】
#include windows.h
#include iostream.h
static HANDLE hThread1=NULL; //存放创建的子进程的句柄
DWORD dwThreadID1; //存放创建的子进程的ID
DWORD WINAPI Thread1Proc( LPVOID ); //子线程函数的声明
int main() // 主线程
{//创建子线程
hThread1 = CreateThread(NULL,0, Thread1Proc,
NULL, 0, dwThreadID1);
Sleep(5000);
CloseHandle(hThread1); // 关闭句柄
ExitThread(0); // 撤销本线程
return 0;
}
//子线程的实现
DWORD WINAPI Thread1Proc(LPVOID lpParameter )
{
coutThread is running!endl;
return 0;
}
五、实验结果输出
排版说明(小、小、)
实验二 线程的同步
一、实验任务
该实验完成Windows中多线程同步运行的验证。首先在主线程中创建一个子线程,成功创建后进入阻塞状态,直到子线程运行完毕后唤醒主线程。
二、实验目的
1.进一步掌握Windows系统环境下线程的创建与撤消。 2.熟悉Windows系统提供的线程同步API。
您可能关注的文档
- 手术科室.doc
- 手术科室需填报的7种表.doc
- 执业药师报考附件.doc
- 技术人员如何管控供方班组的技术工作.ppt
- 护士节礼物.ppt
- 招标公告(常州市新北区薛家镇奥园小学室外市政配套工程).pdf
- 改革年代侨乡社区的宗族组织与政治过程.pdf
- 教你如何正确鉴别分辨天然琥珀.pdf
- 教师资格《幼儿综合素质》命题点:教育观.pdf
- 数据库权限设置.ppt
- 河北省沧衡八校2023-2024学年高二上学期期中考试历史试卷 .pdf
- 河南省豫东名校2023-2024学年高三上学期10月月考物理试题含答案.pdf
- (完整版)部编版八年级下册《道德与法治》期末考试(附答案) .pdf
- 精编新版2020银行从业人员消费者权益保护完整题库158题(含答案).pdf
- 数据收集整理 教学设计 -【完整版】 .pdf
- 新人教版小学数学五年级下册期末试卷练习题及答案全整合打印可用.pdf
- 特种设备作业人员理论考试习题集-电梯机械安装维修2 .pdf
- 湖北省鄂州市、黄冈市2024届高考物理三模试卷含解析 .pdf
- 第7课《回忆我的母亲》教学设计 2023-2024学年统编版语文八年级上册.pdf
- (全)电工(初级)模拟考试附答案 .pdf
文档评论(0)