• 操作系统读者写者问题源程序

    #include <windows.h> #include <conio.h> #include "fstream.h" //全局变量 int readcount=0; //读者数目 int writecount=0; //写者数目 /* 关键代码段是指一个小代码段,在代码能够执行前,它必须独占对某些共享资源的访问权。 这是让若干行代码能够“以原子操作方式”来使用资源的一种方法。 */ CRITICAL_SECTION RP_Write; //临界区 CRITICAL_SECTION cs_Write; CRITICAL_SECTION cs_Read; struct ThreadInfo //线程信息 { int Threadhao; //线程序号 char ThreadClass; //线程类别 double ThreadStartTime; //线程开始时间 double ThreadRunTime; //线程读写持续时间 }; void ReaderFun(char* file);//读者优先函数 void R_ReaderThread(void *p);//处理读者优先读者线程 void R_WriterThread(void *p);//处理读者优先写者线程 void WriterFun(char* file); void W_ReaderThread(void *p); void W_WriterThread(void * 这个程序可以供大家参考,完全可以正确运行,得到自己想要的结果。

    5
    581
    1.33MB
    2011-07-02
    10
  • 读者写者问题课程设计

    初始条件: 1操作系统:Linux 或者 windows 2程序设计语言:C,java语言 3设有20个连续的存储单元,写入/读出的数据项按增序设定为1-20这20个字符。 要求完成的主要任务: (包括课程设计工作量及其技术要求,以及说明书撰写等具体要求) 1.技术要求: 1)为每个读者/写者产生一个线程,设计正确的同步算法 2)每个读者/写者对该存储区进行操作后,即时显示该存储区的全部内容、当前指针位置和读者/写者线程的自定义标识符。。 3)读者应有3个以上,写者应有有两个以上。 4)多个读者/写者之间须共享对存储区进行操作的函数代码。 2. 设计说明书内容要求: 1)设计题目与要求 2)总的设计思想及系统平台、语言、工具等。 3)数据结构与模块说明(功能与流程图) 4)给出用户名、源程序名、目标程序名和源程序及其运行结果。(要注明存储各个程序及其运行结果的主机IP地址和目录。) 5)运行结果与运行情况 (提示: (1)连续存储区可用数组实现。 (2)编译命令可用:     cc -lpthread -o  目标文件名  源文件名 (3)多线程编程方法参见附件。) 3. 调试报告: 1) 调试记录 2) 自我评析和总结 上机时间安排: 19周一 ~ 五 下午14:00 - 18:00 (6月27日开始) 指导教师签名: 年 月 日 系主任(或责任教师)签名: 年 月 日 五、源代码 #include <windows.h> #include <conio.h> #include "fstream.h" int readcount=0; //读者数目 int writecount=0; //写者数目 CRITICAL_SECTION RP_Write; //临界区 CRITICAL_SECTION cs_Write; CRITICAL_SECTION cs_Read; struct ThreadInfo //线程信息 { int Threadhao; //线程序号 char ThreadClass; //线程类别 double ThreadStartTime; //线程开始时间 double ThreadRunTime; //线程读写持续时间 }; void ReaderFun(char* file);//读者优先函数 void R_ReaderThread(void *p);//处理读者优先读者线程 void R_WriterThread(void *p);//处理读者优先写者线程 void WriterFun(char* file); void W_ReaderThread(void *p); void W_WriterThread(void *p); int main()//主函数 { char select; while (true) { cout<<"***************本程序实现读者-写者问题*******\n"<<endl; cout<<" 1:读者优先"<<endl; cout<<" 2:写者优先"<<endl; cout<<" 3:退出"<<endl; cout<<"\n*********************************************"<<endl; cout<<"请选择要进行的操作:"<<endl; do { cin>>select; if(select!='1' && select!='2' && select!='3') cout<<"你操作有误,请重试!"<<endl; }while (select!='1' && select!='2' && select!='3'); system("cls"); if (select=='3') return 0;//退出 else if (select=='1')//调用读者优先 ReaderFun("peizhi.txt"); else if(select=='2')//调用写者优先 WriterFun("peizhi.txt"); cout<<"\n是否还有继续? 1. 继续 2.退出"<<endl;; do { cin>>select; if(select!='1' && select!='2' ) cout<<"你操作有误,请重试!"<<endl; }while (select!='1' && select!='2'); if(select=='2') return 0;// 退出 system("cls"); } return 0; }

    2
    707
    168KB
    2011-07-02
    19
  • 酒店信息管理系统 需求工程

    目 录 中文摘要 I 1 概论 1 1.1 背景 1 1.2 应用系统开发工具简介 1 1.3 目标 1 2 系统需求分析 2 2.1 可行性分析 2 2.2 需求分析 2 2.3 功能需求 2 2.3.1功能划分 2 2.3.2功能描述 2 2.4 安全性需求 3 2.5 系统业务流程分析 3 2.6 本章小结 3 3 系统总体设计 3 3.1系统简介 3 3.2系统开发原则 4 3.3 系统模块图 4 3.4 本章小结 4 4 系统数据库设计 5 4.1客人实体 5 4.2查询实体 5 4.3客房实体 6 4.4退房实体 6 4.5系统实体E-R图 6 4.6 本章小结 7 5 系统功能模块实现 7 5.1 数据库的实现 7 5.2 主要功能模块 7 5.2.1用户登录 8 5.2.2系统主界面 9 5.2.3 客房入住登记 9 6 系统前台界面设计 10 6.1 主界面设计 10 6.2 来宾接待界面设计 11 6.3查询统计界面设计 12 6.4 客房管理界面设计 18 6.5退房模块界面设计 18 6.6 本章小结 15 7 系统测试 15 7.1 登陆测试 15 使用说明 15 总 结 16 参考文献 16 致 谢 16 附录1 管理员登录设置部分代码 17 使用说明 该系统的使用说明大致分为:运行环境、性能说明和操作说明三部分。 (1) 运行环境 硬件平台:硬盘空间:5G以上; 内存:256M以上; CPU:PIII500以上; 操作系统:Windows 2000/windows XP 其它软件:浏览器:IE浏览器 5.0以上 数据库:SQL Sever 2005 Visual Basic 6.0 (2) 性能说明 时间特性 响应时间:用户应该在1s-1min时间内得到服务器的响应。 更新处理时间:2s可能受到网络状况影响 运行时间:依据网络状况决定 适应性 可以在windows的任何版本的操作系统下运行。软件接口主要通过用户浏览器实现。 (3) 操作说明 前台主要是提供用户登陆,用户在用户主界面通过选择需要进行的操作,点击确定按钮,系统将用户信息同时存入数据库。其使用比较简单,和普通系统的使用方法相同。要注意的是用户在记录和执行查询客户信息操作时,请按照要求进行,否则将无法成功。 后台则是提供管理员对酒店信息进行操作的,管理员的登陆账号是admini;密码123456,而用户必须先获得用户名和密码之后登录进行操作。 管理员通过登录进入管理员系统首页,再通过选择,进入客户登记页面。首先填写客户信息,若需要增加新的信息,则先进入修改界面。其删除、修改和查询功能类似将不再一一解释。

    4
    184
    4.9MB
    2011-06-30
    10
  • 酒店管理系统的分析与设计

    第一章绪论 1 1.1引言 1 1.2研究背景及目的 1 1.3课题研究意义 2 第二章酒店管理系统需求调查 3 2.1系统基本需求调查 3 2.2系统功能需求分析 3 第三章酒店管理系统的系统分析 4 3.1开发背景分析 4 3.2系统的可行性分析 5 3.2.1技术可行性 5 3.2.2经济可行性 5 3.2.3管理可行性 5 3.3数据库需求分析 6 3.4系统的业务流程分析 7 第四章酒店管理系统的系统设计 9 4.1设计思想 9 4.2设计原则 9 4.3系统功能结构设计 9 4.4系统数据库设计 10 第五章系统实施 12 5.1开发技术的选择 12 5.1.1开发工具 12 5.1.2软件环境 12 5.1.3数据库开发语言 12 5.2建立C/S机制 13 5.2.1 C/S的应用形式 13 5.2.2实现C/S系统的基本原则 14 第六章系统测试 15 6.1测试概要 15 6.1.1测试目的 15 6.1.2测试分类 15 6.2测试结果 15 第七章心得体会 16 参考文献 18

    0
    440
    122KB
    2011-06-30
    17
  • 网络应用系统设计技术 asp.net论文

    1 引言 1.1设计目的: 1 . 熟练掌握ASP.NET技术; 2. 熟练编写质量好的WEB应用程序。 1.2设计任务: 掌握容器panel的用法,熟练的掌握ASP.NET.web应用程序。 1.3设计内容: ⑴动态添加控件。 ⑵单击按钮显示对应内容,另一个Panel隐藏。 2正文: 2.1开发环境 panel容器的使用是用C#语言在Microsoft Visual Studio 2008中开发制作的,通过IE8这个浏览器联网工作完成的。 2.1.1 Microsoft Visual Studio 2008简介 Visual Studio 是微软公司推出的开发环境。是目前最流行的 Windows 平台应用程序开发环境。目前已经开发到 9.0 版本,也就是 Visual Studio 2008。   Visual Studio 可以用来创建 Windows 平台下的 Windows 应用程序和网络应用程序,也可以用来创建网络服务、智能设备应用程序和 Office 插件。 .NET 的通用语言框架机制(Common Language Runtime, CLR),其目的是在同一个项目中支持不同的语言所开发的组件。 2008 年,微软发布了 Visual Studio 2008.NET 字眼从各种语言的名字中被抹去,但是这个版本的 Visual Studio 仍然还是面向 ASP.NET 框架的(版本2.0)。 此文档中有截图,可以供大家学习参考用。

    0
    158
    662KB
    2011-06-30
    9
  • 数据仓库的多BOM管理系统的研究与实现

    数据仓库管理系统的详细介绍,适合大家仔细的了解。从中吸取自己需要的东西。BOM的数据结构及其管理的介绍,有兴趣的可以去参考这个。

    0
    160
    1.99MB
    2011-06-23
    32
  • 数据库概念的复习总结

    1、数据库 2、数据: 3、数据库管理系统(DBMS): 4、数据库系统(Data Base System. DBS 5、数据库系统的特点 6、关系数据模型的优缺点 7、数据库系统的三级模式结构: 模式, 外模式,内模式 8、候选码、主码、主属性、非主属性的概念 9、实体完整性规则: 10、关系三类完整性约束 11、等值连接、自然连接区别与联系 12、SQL特点 16、数据模型根据应用的不同目的可以分为两类 14、外模式/模式映像(逻辑独立性) 15、模式/内模式映像(物理独立性) 13、使用视图的优点: …………很适合考试突击用。 28、触发器:是用户定义在关系表上的一类由事件驱动的特殊过程 29、为什么用触发器?:因为它由服务器自动激活,可以进行更为复杂的检查和操作,具有更精细和更强大的数据控制能力 。 30、什么时候用触发器?:要强制引用完整性时 31、触发器的作用:(1) 触发器可以查询其它表,而且可以包含复杂的 SQL 语句。它们主要用于强制复杂的业务规则或要求;(2) 触发器还有助于强制引用完整性,以便在添加、更新或删除表中的行时保留表之间已定义的关系。 32、函数依赖概念:设有关系模式R(U),X和Y都是U的子集。若对于R(U)的任一可能的关系r,r中不可能存在两个元组在X上的属性值相等,而在Y上的属性值不等,则称X函数确定Y或Y函数依赖于X,记作X→Y。 33、游标怎么使用:游标是系统为用户开设的一个数据缓冲区,存放SQL语句的执行结果,每个游标区都有一个名字,用户可以用SQL语句逐一从游标中获取记录,并赋给主变量,交由主语言进一步处理。 必须使用游标的SQL语句:查询结果为多条记录的SELECT语句;CURRENT形式的UPDATE语句;CURRENT形式的DELETE语句。 34、使用游标的步骤 (1)说明游标 EXEC SQL DECLARE <游标名> CURSOR FOR <SELECT语句>; (2)打开游标 EXEC SQL OPEN <游标名>; (3)推进游标指针并取当前记录 EXEC SQL FETCH [[NEXT|PRIOR| FIRST|LAST] FROM] <游标名> INTO <主变量>[<指示变量>][,<主变量>[<指示变量>]]...; (4)关闭游标 EXEC SQL CLOSE <游标名>; 35、存储过程的优点和概念 区别主变量 存储过程的优点:(1)运行效率高;(2)降低了客户机和服务器之间的通信量;(3)方便实施企业规则。 存储过程:由PL/SQL语句书写的过程,这个过程经编译和优化后存储在数据库服务器中,使用时只要调用即可。 动态参数与主变量的区别:动态参数的输入不是编译时完成绑定。而是通过 (prepare)语句准备主变量和执行(execute)时绑定数据或主变量来完成 36、关系代数表达式等价变换规则:(看书)(1)连接、笛卡尔积交换律(2)连接、笛卡尔积的结合律(3)投影的串接定律(4)选择的串接定律(5)选择与投影操作的交换律(6)选择与笛卡尔积的交换律(7)选择与并的分配律(8)选择与差运算的分配律(9)选择对自然连接的分配律(10)投影与笛卡尔积的分配律 (11) 投影与并的分配律 37、事务的定义:用户定义的一个数据库操作序列,这些操作要么全做要么全不做,是一个不可分割的工作单位。恢复和并发控制的基本单位。 38、事务的ACID特性:(1)原子性(Atomicity):事务是数据库的逻辑工作单位。(2)一致性(Consistency):事务执行的结果必须是使数据库从一个一致性状态变到另一个一致性状态。(3)隔离性(Isolation):一个事务的执行不能被其他事务干扰。即一个事务内部的操作及使用的数据对其他并发事务是隔离的,并发执行的各个事务之间不能互相干扰。(4)持续性(Durability ):指一个事务一旦提交,它对数据库中数据的改变就应该是永久的。接下来的其他操作或故障不应该对其执行结果有任何影响。 39、起始结束标志:通常是以BEGIN TRANSACTION开始,以COMMIT或ROLLBACK结束。 40、故障的种类:(1)事务内部的故障:有的是可以通过事务程序本身发现的,有的是非预期的。事务故障的恢复:撤消事务(UNDO)。(2)系统故障:称为软故障,是指造成系统停止运转的任何事件,使得系统要重新启动。恢复:发生系统故障时,事务未提交;恢复策略:强行撤消(UNDO)所有未完成事务;发生系统故障时,事务已提交,但缓冲区中的信息尚未完全写回到磁盘上。恢复策略:重做(REDO)所有已提交的事务(3)介质故障;指外存故障。装入数据库发生介质故障前某个时刻的数据副本,重做自此时始的所有成功事务,将这些事务已提交的结果重新记入数据库。(4)计算机病毒:一种人为的故障或破坏,是一些恶作剧者研制的一种计算机程序,可以繁殖和传播。

    5
    423
    49KB
    2011-06-23
    10
  • 数据库实验报告 SQL查询 ,子查询组合

    2008数据库实验 1.SQL SEVER 2000的系统工具、使用交互方式建库、建表 2.T—SQL的简单查询、连接查询 3.子查询及组合 4.数据控制、数据导入/导出、数据备份和恢复 实验1 SQL SEVER 2000的系统工具、使用交互方式建库、建表实验 实验目的和要求:了解SQL SEVER 2000的功能及组成,熟练掌握利用SQL SEVER 2000企业管理器和查询分析器创建数据库、表、索引和修改表结构及向数据库输入数据、修改数据和删除数据的操作方法和步骤,掌握定义数据约束条件的操作。 实验内容和步骤: (1)熟悉SQL SEVER 2000的界面和操作。 (3)熟悉企业管理器和查询分析器的界面和操作。 (3)创建数据库和查看数据库属性。 (4)创建表、确定表的主码和约束条件。 (5)查看和修改表的结构。 (6)向数据库输入数据,观察违反列级约束时出现的情况。 (7)修改数据。 (8)删除数据,观察违反表级约束时出现的情况。 实验2 T—SQL的简单查询、连接查询 实验目的和要求:,了解SQL语句的数据定义与数据更新功能,了解SQL语句的查询功能,掌握SQL中的数据定义语句的用法,熟练掌握SQL中的插入、修改和删除语句的操作,熟练掌握使用SQL语句进行数据库的简单查询、连接查询。 实验内容和步骤: (1)在SQL SEVER 2000的查询分析器里,用SQL语句建库、建表并插入记录。 (2)修改表结构,包括修改属性列的数据类型,增加新的属性列,删除已有的属性列。 (3)使用单个元组和多元组插入。 (4)简单查询操作,包括投影、选择、数据排序、模糊匹配查询等。如果结果不正确,要进行修改,直至正确为止。 (5)连接查询操作,包括等值连接、自然连接、一般连接、自身连接、外连接。 实验3 子查询及组合 实验目的和要求:了解SQL语句的查询功能,理解视图的概念。熟练掌握使用SQL语句进行数据库的嵌套查询及组合查询的操作;掌握视图创建语句和视图的使用方法,加深对视图作用的理解。 实验内容和步骤: (1)在DBMS的交互式环境里,用SQL语句建库、建表并插入记录。 (2)使用In、比较符和Exists操作符进行嵌套查询操作。 (3)分组查询,包括分组条件表达、选择组条件表达的方法。 (4)集合查询。 (5)使用视图创建语句建视图,通过视图查询数据 (6)带子查询的修改和删除 (7)通过视图修改和删除数据 实验4 数据控制、数据的导入/导出、数据库备份和恢复 实验目的和要求:掌握数据控制(安全性)的方法,了解SQL SEVER 2000的数据备份和恢复机制,掌握SQL SEVER 2000中数据库备份和恢复的方法。 实验内容和步骤: (1)使用SQL对数据进行安全性控制,包括授权和权利收回。 (2)查看授权和权利收回后的结果 (3)SQL SEVER 2000工具对表中的数据导出到其它格式的文件。 (4)将其它格式的文件数据导入到数据库中。 (5)使用SQL SEVER 2000工具创建一个数据库的备份(海量备份、增量备份)。 (6)使用SQL SEVER 2000工具及所创建的数据库备份恢复这个数据库。

    3
    1222
    545KB
    2011-06-23
    21
  • 数据挖掘的复习总结( APRIORI算法 ,OLAP操作)

    数据挖掘提纲 1. 数据挖掘的概念:(商业及学术方面) 2. 数据挖掘的模式 3. OLAP技术,多维数据模型,数据立方体概念,构建星型数据库模型 4. 度量分类与计算 5. K均值分配方法 6. OLAP操作有哪些 7. 数据预处理(最小-最大规范化和小数定标规范化) 8. 知识度与精确度的概念 9. T权值与D权值计算 10. 目标类与对比类(得到一些最终的描述) 11. APRIORI算法(用apriori算法找出频繁项集) 12. 由关联挖掘到相关分析,强关联规则未必有趣,通过例子进行说明 13. 分类的步骤有哪些 14. 分类的方法有哪些 15. 预测中的线性回归是怎么计算的 16. 聚类的概念,分类方法有哪些,开均值方法要掌握 17. 描述数据离散程度的统计度量 18信用卡欺骗检测 19星型模式图 20量化特征规则、量化判别规则和量化描述规则的区别 21SQL Server Analysis Services来建立一个数据仓库 22强关联规则一定是有趣的吗 ?看P172例题 23通过面向属性的归纳后得到的训练样本集合,要求用信息增益的办法判断其某些属性是否为强相关属性

    4
    380
    1.85MB
    2011-06-16
    31
  • 数据挖掘考试知识要点总结

    数据挖掘考试知识要点总结 数据挖掘 要点包括: 数据挖掘定义、模式类型 OLAP操作 描述数据离散程度的统计度量 apriori算法描述 星型模式图 t-权和d-权 用apriori算法找出频繁项集 量化特征规则、量化判别规则和量化描述规则的区别

    3
    291
    22KB
    2011-06-15
    9
关注 私信
上传资源赚积分or赚钱