nachos实验七实验报告
nachos系统实验报告:实验二

实验二一.实验目的将nachos 中的lock 和condition 类的实现补充完整,并利用这些同步机制实现两个基础功能。
二.实验内容1) 实现syncy.h 中的Lock 和Condition 类,并利用这些同步机制将实验一中所双向有序链表类修改成可以在多线程线程环境下运行。
2) 实现一个线程安全的Table 。
Table 有一个固定大的Entery 数组。
3) 实现一个大小受限的BoundBuffer ,可以完成读.写功能,其中读写的size 可以超过设定的buffer 大小,当读的东西太快或写的太慢时,就将其挂起。
当buffer 里重新有写的空间或读的空间时在将其线程放入就绪队列中。
三.实验结果1.锁机制的实现 **因为lock 和condition 都有两个版本,所以当调用取得锁和释放锁的函数时我 用的是GetLock()和ReleaseLock(),而不是lock->Acquire(),Condition 同理用的是Signal ()和Wait ()。
这些函数会根据运行程序时输入的参数来决 定用哪个版本的锁或者不用锁。
a)主要代码分析 Lock 类的主要成员{public : void Acquire(); // 得到锁 void Release(); // 解放锁private: Thread *LockedThread ; // 用于储存现在拥有 lock 的线程 LockStatus status ; // 表示此时lock 的状态(Busy ,Free ) List *queue // 用于保存挂起的 线程}Lock 类中Acquire 函数得到锁,如果此时别的线程拥有锁,则此时线程被 挂起放在queue 队列中,直到有人释放锁时,Release 函数将queue 中的一 个线程加入就绪队列,每次只能由一个线程得到锁。
Condition 类主要成员{ public: void Wait(LockO *conditionLock); void Signal(LockO *conditionLock); private:List *queue ; char* name;}Condition 类的所有操作都在线程得到锁时进行操作,且运行其函数时,都 先检测 lock 是否被currentThread 锁拥有。
nachos实验报告

nachos实验报告nachos实验报告一、引言操作系统是计算机系统中的核心软件之一,它负责管理计算机的硬件资源和提供各种服务。
为了更好地理解操作系统的原理和设计,我们在课程中进行了一系列的实验,其中之一就是使用nachos操作系统进行实验。
本报告将对我们在nachos实验中的学习和体验进行总结和分享。
二、nachos简介nachos是一个教学用的操作系统,它是为了帮助学生更好地理解操作系统的原理和设计而开发的。
nachos的设计简单、模块化,易于理解和扩展。
通过使用nachos,我们可以深入了解操作系统的各个组成部分,如进程管理、内存管理、文件系统等,并通过实验来加深对这些概念的理解。
三、实验一:进程管理在第一个实验中,我们学习了进程管理的基本原理和实现。
通过使用nachos,我们可以创建和管理多个进程,并学习它们之间的通信和同步机制。
我们了解了进程的状态转换、进程调度算法以及进程间通信的方法,如共享内存和消息传递等。
通过实验,我们更深入地理解了进程管理的重要性和挑战。
四、实验二:内存管理在第二个实验中,我们学习了内存管理的原理和实现。
nachos提供了虚拟内存的支持,我们可以通过设置页表和实现页面置换算法来管理内存。
我们了解了内存分页和分段的概念,以及常见的页面置换算法,如FIFO、LRU等。
通过实验,我们深入了解了内存管理的工作原理和性能优化方法。
五、实验三:文件系统在第三个实验中,我们学习了文件系统的原理和实现。
nachos提供了一个简单的文件系统接口,我们可以通过创建、读取和写入文件来学习文件系统的操作。
我们了解了文件系统的组织结构,如目录、文件和索引节点等,并学习了文件系统的一致性和恢复机制。
通过实验,我们更好地理解了文件系统的工作原理和性能优化方法。
六、实验四:网络通信在第四个实验中,我们学习了网络通信的原理和实现。
nachos提供了一个简单的网络模拟器,我们可以创建和管理多个网络节点,并通过网络进行通信。
第七次实验报告

第七次实验报告在科学的探索之路上,实验是我们获取真理、验证假设的重要手段。
每一次实验都像是一场未知的冒险,充满了挑战与惊喜。
而这第七次实验,更是给我留下了深刻的印象。
这次实验的主题是关于物质的化学反应速率。
实验的目的是探究不同因素对化学反应速率的影响,并通过精确的测量和观察,得出具有科学性和可靠性的结论。
实验开始前,我们进行了充分的准备工作。
首先,对实验所需的仪器和药品进行了仔细的检查和清点,确保没有遗漏和损坏。
我们这次用到的仪器有容量瓶、量筒、温度计、秒表、玻璃棒等等,而药品则包括了常见的化学试剂,如盐酸、氢氧化钠溶液等。
实验过程中,我们设计了多组对比实验。
第一组是改变反应物的浓度,通过控制加入的试剂的量,来观察反应速率的变化。
第二组是改变反应的温度,利用恒温槽将反应体系分别设置在不同的温度条件下,记录反应完成所需的时间。
第三组则是加入催化剂,观察其对反应速率的加速效果。
在改变反应物浓度的实验中,我们发现,随着反应物浓度的增加,反应速率明显加快。
以盐酸和氢氧化钠的中和反应为例,当盐酸的浓度增大时,与相同量的氢氧化钠反应的速度显著提升,溶液的温度升高也更为迅速,这表明反应放出的热量更多,反应进行得更剧烈。
而在改变温度的实验中,结果更是一目了然。
温度升高,分子的运动速度加快,有效碰撞的几率增加,从而大大提高了反应速率。
当我们将反应体系的温度从室温提升到 50 摄氏度时,原本需要几分钟才能完成的反应,在几十秒内就接近完成。
在加入催化剂的实验里,催化剂的神奇作用让我们惊叹不已。
它就像是化学反应中的“助推器”,能够显著降低反应的活化能,使反应能够在更温和的条件下快速进行。
然而,实验并非一帆风顺。
在操作过程中,我们也遇到了一些问题。
比如,在测量反应时间时,由于秒表的操作不够熟练,导致记录的数据出现了一些误差。
还有在配置溶液的过程中,因为对量具的读数不准确,使得溶液的浓度与预期有所偏差。
但这些问题并没有让我们气馁,反而激发了我们更加严谨和认真的态度。
氰化钠的测定

一、实验原理
在碱性介质中,银离子与氰离子生成络合物,用试银灵为指示剂,过量的银离子使溶液变为粉红色,指示终点。
反应式 Ag + + 2CN —→〔Ag (CN )2〕—
二、溶液试剂的配置
(1) AgNO 3滴定液
称取1.74g (分析纯)硝酸银,稀释至1000ml 的容量瓶中,摇匀。
此溶液为标准滴定液。
(2)NaCN 实验液
称取17.21g 的氰化钠固体样放置于烧瓶中,用蒸馏水溶解后全部移入100ml 容量瓶A 中,再移取1mlA 溶液放至100ml 容量瓶B 中,摇匀。
B 溶液为实验溶液。
三、分析步骤
移取10ml 试验溶液置于锥形瓶中,加入一滴试银灵指示剂,用AgNO3 标准滴定液滴定到刚好出现粉色为终点,记录消耗Ag NO 3的体积。
四、结果记录(平行测定两次)
NaCN 实验液 10ml 10ml
AgNO 3滴定液 16.7ml 16.67ml
五、结果计算
W% = 21n n = 1000
/1/2/p 22111⨯⨯⨯M m V M 其中:w%表示实验样品NaCN 中CN —的纯度;
n 1表示实验样品NaCN 中CN —的摩尔质量;
n 2表示纯度为100%的NaCN 中CN —的摩尔质量;
p1表示AgNO3溶液的浓度;
M1表示AgNO3的相对分子质量;
V1表示实验耗掉AgNO3溶液的体积;
m2表示试验样品的质量;
M2表示NaCN的相对分子质量;
将两次实验的数据(只有AgNO3溶液用量不同)带入公得:W1%=97.33%
W2%=97.16%。
探究7溶液酸碱性的检验实验报告

探究7溶液酸碱性的检验实验报告实验目的:通过多种方法检验7个不同溶液的酸碱性质,观察酸碱指示剂和电极的使用,并比较不同方法的准确性和适用性。
实验原理:酸碱性质指溶液中氢离子(H+)和氢氧根离子(OH-)的浓度。
在溶液中,如果H+离子浓度大于OH-离子浓度,则溶液为酸性;反之,溶液为碱性。
酸碱性质可通过化学试剂的颜色变化、电极测量溶液的pH值等进行检验。
实验步骤:1.将7个不同溶液标记为A、B、C、D、E、F、G,并记录其组成物质。
2.使用酸碱指示剂蓝矾指示剂,滴加2滴至每个溶液中,观察颜色变化。
3.使用酸碱指示剂酚酞指示剂,滴加2滴至每个溶液中,观察颜色变化。
4.使用pH计,将电极插入每个溶液,并记录测得的pH值。
5.使用酸碱指示剂溴酸溴甲酯,滴加2滴至每个溶液中,观察颜色变化。
6.使用酸碱指示剂红石蕊试剂,滴加2滴至每个溶液中,观察颜色变化。
实验结果与讨论:1.对于不同溶液,在使用蓝矾指示剂时,观察到颜色变化的情况如下:溶液A:无变化溶液B:无变化溶液C:由蓝色变为红色溶液D:无变化溶液E:由蓝色变为红色溶液F:由蓝色变为红色溶液G:由蓝色变为红色2.对于不同溶液,在使用酚酞指示剂时,观察到颜色变化的情况如下:溶液A:由无色变为红色溶液B:由无色变为红色溶液C:由深红变为无色溶液D:由蓝色变为红色溶液E:由无色变为红色溶液F:由无色变为红色溶液G:由无色变为红色3.使用pH计测量每个溶液的pH值,结果如下:溶液A:pH4.5溶液B:pH5.0溶液C:pH2.0溶液D:pH7.5溶液E:pH8.0溶液F:pH8.5溶液G:pH9.04.对于不同溶液,在使用溴酸溴甲酯指示剂时,观察到颜色变化的情况如下:溶液A:由浅黄变为红色溶液B:由浅黄变为红色溶液C:由黄绿变为浅黄溶液D:由浅蓝变为红色溶液E:由浅黄变为红色溶液F:由浅黄变为红色溶液G:由浅黄变为红色5.对于不同溶液,在使用红石蕊试剂时,观察到颜色变化的情况如下:溶液A:由无色变为红色溶液B:由无色变为红色溶液C:由黄色变为红色溶液D:由无色变为红色溶液E:由无色变为红色溶液F:由无色变为红色溶液G:由无色变为红色通过以上观察,可以得出以下结论:-溶液A、B无法通过颜色变化确认酸碱性质,需要使用其他方法检测;-溶液C为酸性;-溶液D为中性,其pH值为7.5;-溶液E、F、G为碱性;-在本实验中,使用蓝矾指示剂、酚酞指示剂、溴酸溴甲酯指示剂以及红石蕊试剂均能较好地区分酸碱性质。
实验报告初中化学

实验报告初中化学实验名称:化学实验,制备硫化氢气体一、实验目的:1.了解硫化氢气体的制备方法及与氧气的反应特性。
2.掌握实验操作技能,培养实验观察和记录能力。
3.认识硫化氢气体的危险性,并学会正确的安全操作方法。
二、实验仪器:试管、导管、滴管、试剂瓶等。
三、实验原理:硫化氢气体是一种无色、剧毒、具有刺激性气味的气体,同时也是一种有毒、易燃、易爆的物质。
硫化氢气体可以通过以下反应制备:FeS+2HCl→FeCl2+H2S↑四、实验步骤:1.取适量的硫化亚铁粉末,放入试管中。
2.用滴管滴加稀盐酸至试管中,注意滴加时要小心,避免溅出。
3.在滴加的同时,将试管的口用导管接通试管装置的另一端。
4.收集生成的气体,可以用滴管插入一小瓶水中,观察气泡的形成。
五、实验注意事项:1.操作过程中要戴上防护眼镜和手套,避免对皮肤和眼睛产生伤害。
2.实验结束后要及时清洗实验器材,避免积存危险物质。
3.在实验过程中避免将硫化氢气体直接吸入,应保持实验室通风良好。
4.硫化氢气体具有有毒性,实验过程中应远离人群,并放置在通风处,避免气体积聚。
六、实验结果:在实验过程中,观察到试管中加入稀盐酸后,产生了大量白色气泡,其气味具有刺激性,味道酸臭。
根据实验现象可以得知,实验制备了硫化氢气体。
七、实验分析:硫化氢气体是一种常见的化学气体,它具有刺激性气味和剧毒性。
它常见于工业生产和实验室操作中。
它是一种具有还原性的物质,在与氧气接触时会发生爆炸。
八、实验总结:通过这次实验,我们了解到了硫化氢气体的制备方法和性质,并掌握了实验操作技能。
在实验过程中,我们也明白了硫化氢的危险性,以及正确的安全操作方法。
实验过程中要注意戴上防护眼镜和手套,避免对皮肤和眼睛造成伤害。
同时,在实验操作结束后要及时清洗实验器材,保持实验室的卫生环境。
硫化氢气体具有有毒性,因此实验时要远离人群,并将其置于通风处,避免气体的积聚。
实验过程中观察到了制备硫化氢气体的过程,了解到了化学反应的基本原理。
初中化学报告范本参考

初中化学报告范本参考一、实验目的本实验旨在探究酸碱中和反应的性质和特点,了解中和反应的应用以及其在日常生活中的意义。
二、实验原理酸碱中和反应是指酸和碱溶液混合后,生成盐和水的反应。
其中,酸溶液可采用盐酸溶液,碱溶液可采用氢氧化钠溶液。
三、实验器材1.烧杯2.滴管3.玻璃棒4.试剂瓶四、实验步骤1.取一定量的盐酸溶液倒入烧杯中。
2.将适量的氢氧化钠溶液逐滴加入盐酸溶液中,并用玻璃棒搅拌均匀。
3.继续滴加氢氧化钠溶液,直至溶液中酸味消失,出现中性溶液。
4.记录滴加的氢氧化钠溶液的体积。
五、实验结果在本实验中,倒入10 mL的盐酸溶液,滴加氢氧化钠溶液直至溶液呈中性时,记录滴加的氢氧化钠溶液体积为20 mL。
六、实验讨论通过本实验,我们观察到了酸碱中和反应的过程。
酸和碱溶液混合后,产生盐和水的反应符合化学方程式:酸 + 碱→ 盐 + 水。
在本实验中,盐是氯化钠(NaCl),生成的水则是无色透明的。
根据实验结果,我们得知滴加20 mL的氢氧化钠溶液可以与10 mL的盐酸溶液完全中和。
这表明两者的摩尔比为1:1,即盐酸和氢氧化钠的摩尔量相等。
根据摩尔比,我们可以计算出反应物的摩尔浓度,进一步计算反应的化学反应式。
中和反应是一种重要的化学反应,在日常生活中被广泛应用。
例如,当我们使用洗衣粉洗衣服时,洗衣粉中的成分能够与污渍发生中和反应,使衣物变得干净。
此外,在身体内部,胃酸和胃壁中的碱性物质之间也会发生中和反应,以维持胃的正常pH值。
七、实验结论本实验通过观察酸碱中和反应,探究了中和反应的性质和特点。
实验结果显示,在摩尔比为1:1的情况下,滴加20 mL的氢氧化钠溶液可以与10 mL的盐酸溶液完全中和。
通过实验,我们深入了解了中和反应的应用和意义。
总之,中和反应在日常生活中扮演着重要的角色。
通过学习和了解中和反应的性质,我们可以更好地理解化学反应的机理,并将其应用于实际生活中解决问题。
氰酸钠合成实验报告

实验名称:氰酸钠合成实验一、实验目的1. 了解氰酸钠的合成原理和方法。
2. 掌握氰酸钠的制备过程及操作步骤。
3. 熟悉实验操作技能,提高实验操作能力。
二、实验原理氰酸钠(NaCNO)是一种重要的有机化工原料,广泛应用于制药、农药、印染等行业。
氰酸钠的合成方法主要有:氨氰法、氰化钠法、氰酸钾法等。
本实验采用氨氰法合成氰酸钠。
实验原理:氨气与二氧化碳在催化剂的作用下,生成氰氨化钙,再与氢氧化钠反应生成氰酸钠。
化学方程式如下:2NH3 + CO2 + Ca(OH)2 → Ca(CN)2 + 2H2OCa(CN)2 + 2NaOH → 2NaCNO + Ca(OH)2三、实验仪器与试剂1. 仪器:反应釜、搅拌器、温度计、压力计、冷凝器、过滤器、储罐、计量泵、管道等。
2. 试剂:氨气、二氧化碳、氢氧化钠、氰氨化钙、催化剂等。
四、实验步骤1. 准备氨气、二氧化碳、氢氧化钠、氰氨化钙、催化剂等试剂。
2. 将氰氨化钙加入反应釜中,加入适量的水,搅拌均匀。
3. 启动搅拌器,调节温度至40-50℃。
4. 开始通入氨气和二氧化碳,控制反应压力为0.5-0.6MPa。
5. 持续通入氨气和二氧化碳,观察反应釜内溶液的变化,直至溶液呈淡黄色。
6. 停止通入氨气和二氧化碳,加入适量的氢氧化钠,搅拌均匀。
7. 继续搅拌反应釜内的溶液,观察溶液的变化,直至溶液呈深棕色。
8. 停止搅拌,将反应釜内的溶液过滤,得到氰酸钠溶液。
9. 将氰酸钠溶液浓缩,结晶,得到氰酸钠固体。
10. 清洗实验设备,回收未反应的试剂。
五、实验结果与分析1. 实验结果:本实验成功合成了氰酸钠,产率为85%。
2. 结果分析:实验过程中,氨气和二氧化碳的通入量、反应温度、反应压力等条件对氰酸钠的产率有较大影响。
本实验通过优化实验条件,得到了较高的产率。
六、实验总结1. 本实验成功合成了氰酸钠,掌握了氰酸钠的合成原理和方法。
2. 通过实验,提高了实验操作技能,积累了实验经验。
元素分析仪测定C H N S

实验项目4:元素分析仪测定炼焦煤中C、H、N、S元素含量一、实验目的1、了解元素分析仪的基本原理和仪器CHNS模式和O模式管路的物理连接及不同作用。
2、熟悉元素分析仪的微量称重处理、自动进样、方法设置、定量分析。
二、实验原理vario EL III元素分析仪分为CHNS模式和O模式两种,CHNS模式是将样品在高温下的氧气环境中经催化氧化使其燃烧分解,而O模式要将样品在高温的还原气氛中通过裂解管分解,含氧分子与裂解管中活性碳接触转换成一氧化碳。
生成气体中的非检测气体被去除,被检测的不同组分气体通过特殊吸附柱分离,再使用热导检测器对相应的气体进行分别检测,氦气作为载气和吹扫气。
三、仪器与药品vario EL III元素分析仪1台;预装有vario EL III程序计算机1台;METTLER TOLEDO高精度天平1台,打印机1台。
氨基苯磺酸(Sulfanilic Acid,sul)标准样品;苯甲酸(Benzoic Acid,ben)标准样品;炼焦煤样品。
四、实验步骤1、开机步骤:开机前应打开操作程序菜单,检查Options>Maintenance中提示的各更换件测试次数的剩余是否还能满足此次测试,通常最应该注意的是还原管、干燥管(可通过观察其颜色变化判断)以及灰份管。
检漏前请在未开主机前将操作程序中Options>Parameters中Furnace 1、Furnace 2的温度都设置为0,退出操作程序,再按照以下步骤进行正常的开机。
(1)开启计算机,进入Windows状态。
(2)堵上主机后面尾气的堵头。
(3)将主机的进样盘拿开后,开启主机电源。
(4)待进样盘底座自检转动完毕(即自转至零位)后,将进样盘样品孔位手动调到0位后放回原处。
(5)打开He气,将气体钢瓶上减压阀输出压力调至:He:0.125 Mpa。
(6)启动varioel操作软件。
(7)调节He气减压阀,使软件状态栏压力显示为:1.05bar以上(不超过1.25bar)。
nachos 实验报告

nachos 实验报告
《Nachos 实验报告》
在计算机科学领域,操作系统是一个非常重要的概念。
它是计算机系统的核心组成部分,负责管理计算机的资源并提供用户和应用程序之间的接口。
为了更好地理解操作系统的工作原理,我们进行了一项名为Nachos的实验。
Nachos是一个用于教学目的的操作系统内核。
它是在加州大学伯克利分校开发的,旨在帮助学生学习操作系统的基本概念和原理。
在这个实验中,我们使用Nachos来深入了解操作系统的各个方面,包括进程管理、内存管理、文件系统和网络通信等。
首先,我们学习了Nachos的基本结构和架构。
它由多个模块组成,每个模块负责不同的功能。
通过阅读Nachos的源代码和文档,我们逐渐理解了操作系统内核的组成和工作原理。
接着,我们进行了一系列的实验,来探索Nachos的各种功能。
我们实现了进程管理模块,通过创建和调度多个进程来理解进程的概念和调度算法。
我们还实现了内存管理模块,通过分配和释放内存来了解内存管理的重要性。
此外,我们还实现了文件系统和网络通信模块,以便更好地理解操作系统对外部设备和网络的支持。
通过这些实验,我们不仅加深了对操作系统的理解,还提高了编程和调试的能力。
Nachos实验让我们从理论知识转化为实际操作,让我们更加深入地理解了操作系统的工作原理。
总的来说,Nachos实验为我们提供了一个宝贵的学习机会,让我们对操作系统有了更深入的了解。
通过这个实验,我们不仅学到了知识,还培养了解决问题
的能力和团队合作精神。
希望未来能够继续深入研究操作系统,为计算机科学领域做出更多的贡献。
操作系统实验报告一

实验报告课程名称:操作系统(nachos)Array实验项目名称:进程调度实验时间:2010-09-08班级:姓名:学号:实验目的:用高级语言编写和调试一个有 N个进程并行的进程调度程序,以加深对进程的概念及进程调度算法的理解。
实验环境:PC机、windows XP 操作系统、Visual C++6.0开发工具/Win-TC实验内容及过程:实验内容:设计一个有N个进程并行的进程调度程序。
进程调度算法:采用最高优先数优先的调度算法(即把处理机分配给优先数最高的进程)和先来先服务算法。
具体描述如下:每个进程有一个进程控制块( PCB)表示。
进程控制块可以包含如下信息:进程名、优先数、到达时间、需要运行时间、已用CPU时间、进程状态等等。
分析:进程的优先数及需要的运行时间可以事先人为地指定(也可以由随机数产生)。
进程的到达时间为进程输入的时间。
进程的运行时间以时间片为单位进行计算。
每个进程的状态可以是就绪 W(Wait)、运行R(Run)、或完成F(Finish)三种状态之一。
就绪进程获得 CPU后都只能运行一个时间片。
用已占用CPU时间加1来表示。
如果运行一个时间片后,进程的已占用 CPU时间已达到所需要的运行时间,则撤消该进程,如果运行一个时间片后进程的已占用CPU时间还未达所需要的运行时间,也就是进程还需要继续运行,此时应将进程的优先数减1(即降低一级),然后按照优先数的大小把它插入就绪队列等待CPU。
每进行一次调度程序都打印一次运行进程、就绪队列、以及各个进程的 PCB,以便进行检查。
重复以上过程,直到所要进程都完成为止。
调度算法的参考流程图如下:实验过程:1.在win-tc环境中编写一个有N个进程并行的进程调度程序,包括最高优先数优先的调度算法和先来先服务算法,代码见附录中。
2.在上机环境中编译、调试程序。
3.设计输入数据,得出程序的执行结果。
实验结果及分析:1、选择最高优先数优先的调度算法调度两个进程:输出进程名、进程cpu时间、进程还需时间、进程优先数及进程状态,最高优先数优先的调度算法调度三个进程:2、选择先来先服务算法调度两个进程:输出进程名、进程开始时间及结束时间,先来先服务算法调度三个进程:实验心得:操作系统第一份实验刚开始确实有点没头绪,而且也刚接触一点儿进程调度的,对它只是大概了解些。
铯的反应实验报告(3篇)

第1篇实验名称:铯的反应实验实验目的:1. 观察铯与水反应的现象。
2. 了解铯与水反应的化学性质。
实验原理:铯是一种碱金属元素,具有较强的还原性。
当铯与水反应时,会生成氢气和氢氧化铯,并放出大量的热。
反应方程式如下:2Cs + 2H2O → 2CsOH + H2↑实验仪器:1. 铯金属2. 烧杯3. 滴管4. 水槽5. 玻璃棒6. 酒精灯7. 铁架台8. 试管夹9. 纸张10. 研钵11. 研杵实验步骤:1. 在烧杯中加入适量的水。
2. 用研钵将铯金属研磨成粉末状。
3. 将研磨好的铯粉末倒入烧杯中的水中。
4. 观察并记录反应现象。
5. 将反应后的溶液过滤,得到氢氧化铯溶液。
6. 将氢氧化铯溶液滴入试管中,加入适量的稀盐酸,观察现象。
实验现象:1. 铯与水反应时,会产生剧烈的化学反应,放出大量的热,并产生氢气。
2. 反应过程中,烧杯内产生大量气泡,溶液逐渐变得浑浊。
3. 将氢氧化铯溶液滴入试管中,加入适量的稀盐酸后,溶液会产生白色沉淀。
实验数据:1. 反应时间:约1分钟。
2. 反应温度:约40℃。
实验结果分析:1. 铯与水反应放出大量的热,说明铯具有较强的还原性。
2. 反应过程中产生氢气,说明铯与水反应生成了氢氧化铯和氢气。
3. 氢氧化铯溶液与稀盐酸反应产生白色沉淀,说明氢氧化铯是一种碱性物质。
实验结论:1. 铯与水反应是一种剧烈的化学反应,放出大量的热,并产生氢气。
2. 铯具有较强的还原性,可以与水反应生成氢氧化铯。
3. 氢氧化铯是一种碱性物质,可以与稀盐酸反应产生白色沉淀。
实验注意事项:1. 铯是一种易燃物质,实验过程中应避免接触火源。
2. 实验过程中应佩戴防护眼镜和手套,防止化学物质溅入眼睛或皮肤。
3. 实验结束后,应及时清理实验场地,避免污染环境。
实验总结:本实验通过观察铯与水反应的现象,了解了铯的化学性质。
实验结果表明,铯具有较强的还原性,可以与水反应生成氢氧化铯和氢气。
实验过程中,应注意安全,避免意外事故的发生。
操作系统nachos课程设计实验报告

一题目project1:实现nachos操作系统的project1中的join()方法,condition2类,Alarm类,Communicator类,PriorityScheduler类和Boat类project2:实现nachos操作系统的project2中的creat open read write close unlink 文件系统调用,修改UserProcess.readVirtualMemory 和UserProcess.writeVirtualMemory使操作系统能够运行多用户程序,实现exec join exit系统调用,实现LotteryScheduler类二实验目的熟悉nachos操作系统,深入理解操作系统内核了解用户程序的加载过程以及多用户进程的内存分配机制三实验要求完成nachos,提交设计文档和你的代码四实验说明,程序代码及测试结果Project1:1 join()要求实现join()方法,注意,其他线程没必要调用join函数,但是如果它被调用的话,也只能被调用一次。
join()方法第二次调用的结果是不被定义的,即使第二次调用的线程和第一次调用的线程是不同的。
无论有没有被join,一个进程都能够正常结束(a)设计思想当线程B执行A.join()时,将B放入A的等待队列,直到A完成时,唤醒在等待队列中的所有线程,因此需要实现join()方法和修改finish方法(b)源代码public void join() {Lib.debug(dbgThread, "Joining to thread: " + toString());Lib.assertTrue(this != currentThread);Lib.assertTrue(join_counter == 0);join_counter++;boolean status = Machine.interrupt().disable();if (this.status != statusFinished) {waitQueue.waitForAccess(KThread.currentThread());currentThread.sleep();}Machine.interrupt().restore(status);}public static void finish() {Lib.debug(dbgThread, "Finishing thread: " +currentThread.toString());Machine.interrupt().disable();Machine.autoGrader().finishingCurrentThread();Lib.assertTrue(toBeDestroyed == null);toBeDestroyed = currentThread;currentThread.status = statusFinished;KThread thread = currentThread().waitQueue.nextThread();if (thread != null){thread.ready();}sleep();}(c)程序截图线程1每次执行打出执行的次数,每次执行过后放弃cpu,线程2打出successful,线程2执行thread1.join().通过截图可以看出代码正确2 Condition2通过使用开关中断提供原子性来直接实现条件变量,我们利用信号量提供了一个简单的实现方式,你的工作就是不直接使用信号量提供相同的实现(你或许使用锁,即使它们也间接的使用了信号量)。
NachOS实验报告(4个全)

四川大学操作系统课程设计报告学院:软件学院专业:软件工程专业年级:08级组编号:组成员:提交时间:2010年6月24日指导教师评阅意见:.. . . .指导教师评阅成绩:::实验项目一项目名称:开发Shell程序试验背景知识Shell此处的shell是指命令行式的shell。
文字操作系统与外部最主要的接口就叫做shell。
shell是操作系统最外面的一层。
shell管理你与操作系统之间的交互:等待你输入,向操作系统解释你的输入,并且处理各种各样的操作系统的输出结果。
shell提供了你与操作系统之间通讯的方式。
这种通讯可以以交互方式(从键盘输入,并且可以立即得到响应),或者以shell script(非交互)方式执行。
shell script是放在文件中的一串shell和操作系统命令,它们可以被重复使用。
本质上,shell script是命令行命令简单的组合到一个文件里面。
Shell基本上是一个命令解释器,类似于DOS下的。
它接收用户命令(如ls等),然后调用相应的应用程序。
较为通用的shell有标准的Bourne shell (sh)和C shell (csh)。
交互式shell和非交互式shell交互式模式就是shell等待你的输入,并且执行你提交的命令。
这种模式被称作交互式是因为shell与用户进行交互。
这种模式也是大多数用户非常熟悉的:登录、执行一些命令、签退。
当你签退后,shell也终止了。
shell也可以运行在另外一种模式:非交互式模式。
在这种模式下,shell不与你进行交互,而是读取存放在文件中的命令,并且执行它们。
当它读到文件的结尾,shell也就终止了。
实验目的:Shell是一个命令处理器(command processor)——是一个读入并解释你输入的命令的程序,它是介于使用者和操作系统之核心程序(kernel)间的一个接口。
它是一个交互性命令解释器。
shell 独立于操作系统,这种设计让用户可以灵活选择适合自己的shell。
七年级化学实验探索酸碱中和反应

七年级化学实验探索酸碱中和反应酸碱中和反应实验的探索在七年级的化学课程中,我们将学习有关酸碱中和反应的实验。
酸碱中和反应是一种化学反应,发生在酸和碱之间的混合物中。
本文将探索七年级化学实验中酸碱中和反应的相关内容。
实验一:酸碱中和反应的观察材料:- 盐酸- 碳酸钠- 碳酸氢钠- 白纸- 酚酞指示剂- 蓝色石蕊试纸- 滴管步骤:1. 在三个试管中分别加入2 mL的盐酸、碳酸钠和碳酸氢钠。
2. 将试管倾斜,并一滴一滴地向其中加入酚酞指示剂。
观察颜色变化。
3. 取一小块白纸,在上面滴上一滴盐酸,然后将滴管中的碳酸钠滴入同一位置,再加入几滴酚酞指示剂。
观察颜色变化。
4. 用蓝色石蕊试纸分别测试盐酸、碳酸钠和碳酸氢钠的溶液的性质。
记录观察结果。
结果及讨论:- 盐酸溶液是无色的,加入酚酞指示剂后会变为粉红色。
- 碳酸钠溶液是无色的,加入酚酞指示剂后会变为淡粉红色。
- 碳酸氢钠溶液是无色的,加入酚酞指示剂后会变成深粉红色。
- 当盐酸与碳酸钠混合时,可以观察到酸碱中和反应,同时酚酞的颜色也会变为无色。
- 用蓝色石蕊试纸测试盐酸和碳酸钠的溶液时,试纸会由蓝色变为红色,说明盐酸为酸性物质,而碳酸钠为碱性物质。
实验二:酸碱中和反应的气体产生材料:- 醋酸- 苏打粉- 气球- 漏斗- 小瓶子步骤:1. 取一小瓶子,加入一定量的醋酸。
2. 在漏斗中放入适量的苏打粉。
3. 将漏斗口慢慢地放入小瓶子里,然后将苏打粉倒入瓶内。
4. 将一个气球套在小瓶子的口上。
5. 观察气球的膨胀情况。
结果及讨论:当醋酸与苏打粉发生酸碱中和反应时,生成了二氧化碳气体。
这些气体进入了气球,使其膨胀。
这个实验说明了酸碱中和反应不仅会产生颜色的变化,还会产生气体。
通过上述实验,我们可以得出以下几点结论:1. 酸碱中和反应是指酸性物质与碱性物质在适当条件下的反应。
2. 酸性物质溶液具有酸性,而碱性物质溶液具有碱性。
3. 酸碱中和反应会产生颜色变化,并且在某些情况下还会产生气体。
试验七铬和锰

实验七 铬和锰1. 实验目的(1)实验并掌握主要价态铬化合物的性质及相互转化的条件。
(2)实验并掌握主要价态锰化合物的性质及相互转化的条件。
(3)了解铬和锰化合物的氧化还原性与介质的关系。
2. 实验内容2.1 .三价铬化合物的生成和性质2.1.1 氢氧化铬 (Ⅲ )的生成和性质:往分别盛有1mL 0.1mol/L CrCl3 溶液的两支离心试管中逐滴加入 2mol/L NaOH 溶液至沉淀完全。
观察产物的颜色。
离心分离,弃去清夜,得两份沉淀。
在一份沉淀上加入加入 2mol/L HCl ,有何变化?往另一份沉淀上加入 2mol/L NaOH 溶液,沉淀是否溶解?把所得到的溶液煮沸, 又有什么变化?写出反应式,解释上述现象。
实 验 现 象 :先生成灰绿色沉淀。
往灰绿色沉淀上加入 2mol/L NaOH 溶液,沉淀 溶解,生成黄绿色溶液;往灰绿色沉淀上加入 2mol/L HCl溶液,沉淀溶解,生成绿色溶液。
反应方程式: CrCl3 + 3NaOH (适量) → Cr(OH)3 ↓+ 3NaCl Cr(OH) 3 + 3HCl → CrCl 3 +3H 2O Cr(OH) 3 + NaOH (过量) →NaCrO 2 + 2H2O2.1.2 三价铬盐的水解:使 0.1mol/L Na 2S 溶液与 0.1mol/L CrCl 3 溶液作用,证明得到的产物是 Cr(OH) 3,而不是 Cr 2S 3,并解释之。
实 验 现 象 :生成灰绿色沉淀,分离沉淀。
往灰绿色沉淀上加入 2mol/L NaOH 溶 液,沉淀溶解,生成黄绿色溶液;往灰绿色沉淀上加入2mol/L HCl溶液,沉淀溶解,生成绿色溶液,无臭鸡蛋气味。
反应方程式: 2 CrCl 3 + 3Na 2S + 3H 2O → 2 Cr(OH)3↓+ 3H 2S ↑ + 6NaCl2.1.3 Cr3+离子的鉴定:取 1~2滴含有 Cr 3+(0.1mol/L CrCl 3) 的溶液,加入6mol/LNaOH 使Cr 3+转化为 NaCrO 2 后,再过量 2 滴,然后加入 3 滴 3%H 2 2,微热至O 溶液呈浅黄色, 待试管冷却后, 加入 0.5mL 乙醚,然后慢慢滴加 6mol/L HNO 3 酸化摇动试管,在乙醚层出现深蓝色 (CrO 5 ,表示有 Cr 3+存在。
苯妥英钠的实验报告

苯妥英钠的实验报告竭诚为您提供优质文档/双击可除苯妥英钠的实验报告篇一:苯妥英钠设计性实验报告设计性实验报告实验名称:苯妥英钠的制备与分析姓名:闫洁班级:1220422学号:39日期:20XX.11.2设计性实验报告一、实验目的1.学习安息香缩合反应的原理和应用维生素b1及氰化钠为催化剂进行反应的实验方法。
2.学习有害气体的排出方法。
3.学习二苯羟乙酸重排反应机理。
4.掌握用硝酸氧化的实验方法。
二、实验方案一1、实验原理1.安息香缩合反应(安息香的制备)Vitb1choornacnh2.氧化反应(二苯乙二酮的制备)hno3oh3.二苯羟乙酸重排及缩合反应(苯妥英的制备)o1.h2nconh2/naohh5c62.hclh5c6o4.成盐反应(苯妥英钠的制备)ooh5c6naohh5c6ohh5c6h5c6h2onhhnonhonanh2、实验仪器与药品仪器:烧杯(500ml250ml)量筒、锥形瓶、三颈瓶、抽滤瓶、球形冷凝管、干燥管、水浴锅、布氏漏斗、温度计、玻璃棒、抽滤器、药品:苯甲醛、盐酸硫胺、氢氧化钠、无水乙醇、硝酸、浓盐酸4、实验装置图5、实验步骤(一)安息香的制备(盐酸硫胺催化)1.原料规格及用量配比名称规格用量摩尔数摩尔比苯甲醛cpd1.050bp179.9℃20ml0.2盐酸硫胺原料药3.5g氢氧化钠cp10ml2.操作在100ml三口瓶中加入3.5g盐酸硫胺(Vit.b1)和8ml 水,溶解后加入95%乙醇30ml。
搅拌下滴加2mol/Lnaoh溶液10m1。
再取新蒸苯甲醛20ml,加入上述反应瓶中。
水浴加热至70℃左右反应1.5h。
冷却,抽滤,用少量冷水洗涤。
干燥后得粗品。
测定熔点,计算收率。
mp136—l37℃注:也可采用室温放置的方法制备安息香,即将上述原料依次加入到100ml三角瓶中,室温放置有结晶析出,抽滤,用冷水洗涤。
于燥后得粗品。
测定熔点,计算收率。
(二)二苯乙二酮(联苯甲酰)的制备1.主要原料规格及用量比名称规格用量摩尔数摩尔比安息香自制8.5g0.041硝酸(65%-68%)cpd1.40bp122℃25ml0.379.252.操作取8.5g粗制的安息香和25ml硝酸(65%-68%)置于100ml圆底烧瓶中,安装冷凝器和气体连续吸收装置,低压加热并搅拌,逐渐升高温度,直至二氧化氮逸去(约1.5—2h)。
实验七 非水溶液滴定法测定含氮碱性药物的含量

实验七非水溶液滴定法测定含氮碱性药物的含量实验目的:1、掌握非水溶液滴定法的原理和测定方法。
2、掌握电位滴定的数据处理与终点确定。
3、熟悉常用非水指示剂的变色原理和终点颜色的确定。
实验原理:1、氧氟沙星含量测定C18H20FN3O4+HClO4→ C18H20FN3O4·HClO42、马来酸氯苯那敏含量测定C16H19ClN2·C4H4O4+2HClO4→C16H19ClN2·2HClO4+C4H4O4实验器材:试药:氧氟沙星,马来酸氯苯那敏仪器:pH酸度计,电磁搅拌器,10mL滴定管,自动电位滴定仪。
实验内容与方法:(一)氧氟沙星含量测定本品为(土)-9-氟-2,3-二氢-3-甲基-10-(4-甲基-1-哌嗪基)-7-氧代-7H-吡啶并[1,2,3-de]-[1,4]苯并恶嗪-6-羧酸。
按干燥品计算,含C18H20FN3O4不得少于98.5%。
[含量测定]取本品0.2g,精密称定,加冰醋酸50mL,使溶解,照电位滴定法(附录A),用高氯酸滴定液(0.1mol/L)滴定,并将滴定的结果用空白试验校正。
每1mL高氯酸滴定液(0.1mol/L)相当于36.14mg的C18H20FN3O4(附录B)。
C18H20FN3O4+HClO4→ C18H20FN3O4·HClO4(二)马来酸氯苯那敏含量测定本品为N,N-二甲基-γ-(4-氯苯基)-2-吡啶丙胺顺丁烯二酸盐。
按干燥品计算,含C16H19ClN2·C4H4O4不得少于98.5%。
[含量测定]取本品约0.15g,精密称定,加冰醋酸10mL溶解后,加结晶紫指示液1滴,用高氯酸滴定液(0.1mol/L)滴定,至溶液显蓝色,并将滴定的结果用空白试验校正。
每1mL高氯酸滴定液(0.1mol/L)相当于19.54mg的C16H19ClN2·C4H4O4(B)。
C16H19ClN2·C4H4O4+2HClO4→C16H19ClN2·2HClO4+C4H4O4实验注意事项:1、所用仪器必须干燥。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
nachos实验报告七
实验题目: Extension of AddrSpace 学号:201200301057
日期:2014-11-29 班级:计软12-3 姓名:高鹏辉
实验目的:
在了解了Nachos 装入并执行单个用户进程的情况后,我们就需要进一步完成用户内存空间的扩充以便多用户程序同时驻留内存,进而使多用户进程并发执行。
硬件环境:
Mem:3.9G
CPU:Intel® Core™2 Quad CPU Q9500 @ 2.83GHz × 4
Disk:15.5 GB
软件环境:
System:ubuntu12.04LST i386
gcc: (Ubuntu 4.6.3-1ubuntu5) 4.6.3
nachos system
实验步骤:
要在Nachos中实现多用户程序同时驻留内存并发执行,首先涉及到Nachos的两个系统调用:Exec()和Exit()。
这两个系统调用也是构造父子进程并发执行的基础。
假设我们有以下两个用户程序:../test/exec.c和../test/halt.c
../test/halt.c
第65页
用户进程管理设计
1 #include "syscall.h"
2 int
3 main()
4 {
5 Halt()
6 }
../test/exec.c
1 #include "syscall.h"
2 int
3 main()
4 {
5 SpacId pid;
6 pid = Exec("../test/halt.noff");
7 Halt()
8 }
在文件../test/exec.c第5行上的语句Exec是一条Nachos的系统功能调用,它的功能为装入并执行以其参数为名的可执行文件,即创建一个新的用户进程。
假设我们先执行../test/exec.noff 程序,则../test/exec.noff 会在它还没有执行结束时又装入并执行另外一个程序halt.noff,并与它同时驻留内存.
pageTable[i].physicalPage=usermap-->Find();避免从头开始物理存储覆盖了前一个用户程序的内存内容
利用Nachos在../userprog/bitmap.h 中文件定义的Bitmap类。
利用bitmap 记录和申请内存物理帧,使不同的程序装入到不同的物理空间中去,下面是对新的内存分配存储算法,改进了对多个用户程序的同时进驻内存的支持
这是对BitMap的代码修改,每次分配的时候要找到bitmap中的空闲页进行分配,而不能从0页开始分配在AddressSpace类中声明bitmap对象
static BitMap *mbitmap=new BitMap(NumPhysPages);
运行./nachos –x ../test/exec.noff
结论分析与体会:
nachos无法运行多个用户程序的原因在于物理页的分配,那么改变物理页的分配,使多个程序的物理页不会相互覆盖,每个程序都能分配到对应的独立的物理页,那么不就可以同时执行多个用户程序了吗。
物理页的分配算法在BitMap类中有实现,使用一个数组作为物理页的数据结构。
在给用户程序分配物理页时,不再使用与逻辑页相同的数值,而是使用Find()方法查找下一个可用的物理页。