自己花钱买的电子书,高清完整版!很实用的教材,读起来一点也不晦涩。
目录译者序前言第1章概论1.1推动因素1.2基本计算机组成1.3分布式系统的定义1.4我们的模型1.5互连网络1.6应用与标准1.7范围1.8参考资料来源参考文献习题第2章分布式程序设计语言2.1分布式程序设计支持的需求2.2并行/分布式程序设计语言概述2.3并行性的表示2.4进程通信与同步2.5远程过程调用2.6健壮性第3章分布式系统设计的形式方法3.1模型的介绍3.1.1状态机模型3.1.2佩特里网3.2因果相关事件3.2.1发生在先关系3.2.2时空视图3.2.3交叉视图3.3全局状态3.3.1时空视图中的全局状态3.3.2全局状态:一个形式定义3.3.3全局状态的“快照”3.3.4一致全局状态的充要条件3.4逻辑时钟3.4.1标量逻辑时钟3.4.2扩展3.4.3有效实现3.4.4物理时钟3.5应用3.5.1一个全序应用:分布式互斥3.5.2一个逻辑向量时钟应用:消息的排序3.6分布式控制算法的分类3.7分布式算法的复杂性第4章互斥和选举算法4.1互斥4.2非基于令牌的解决方案4.2.1Lamport算法的简单扩展4.2.2Ricart和Agrawala的第一个算法4.2.3Maekawa的算法4.3基于令牌的解决方案4.3.1Ricart和Agrawala的第二个算法4.3.2一个简单的基于令牌环的算法4.3.3一个基于令牌环的容错算法4.3.4基于令牌的使用其他逻辑结构的互斥4.4选举4.4.1Chang和Roberts的算法4.4.2非基于比较的算法4.5投标4.6自稳定第5章死锁的预防、避免和检测5.1死锁问题5.1.1死锁发生的条件5.1.2图论模型5.1.3处理死锁的策略5.1.4请求模型5.1.5资源和进程模型5.1.6死锁条件5.2死锁预防5.3一个死锁预防的例子:分布式数据库系统5.4死锁避免5.5一个死锁避免的例子:多机器人的灵活装配单元5.6死锁检测和恢复5.6.1集中式方法5.6.2分布式方法5.6.3等级式方法5.7死锁检测和恢复的例子5.7.1AND模型下的Chandy,Misra和Hass算法5.7.2AND模型下的Mitchell和Merritt算法5.7.3OR模型下的Chandy,Misra和Hass算法第6章分布式路由算法6.1导论6.1.1拓扑6.1.2交换6.1.3通信类型6.1.4路由6.1.5路由函数6.2一般类型的最短路径路由6.2.1Dijkstra集中式算法6.2.2Ford的分布式算法6.2.3ARPAnet的路由策略6.3特殊类型网络中的单播6.3.1双向环6.3.2网格和圆环6.3.3超立方6.4特殊类型网络中的广播6.4.1环6.4.22维网格和圆环6.4.3超立方6.5特殊类型网络中的组播6.5.1一般方法6.5.2基于路径的方法6.5.3基于树的方法第7章自适应、无死锁和容错路由7.1虚信道和虚网络7.2完全自适应和无死锁路由7.2.1虚信道类7.2.2逃逸信道7.3部分自适应和无死锁路由7.4容错单播:一般方法7.52维网格和圆环中的容错单播7.5.1基于局部信息的路由7.5.2基于有限全局信息的路由7.5.3基于其他故障模型的路由7.6超立方中的容错单播7.6.1基于局部信息的模型7.6.2基于有限全局信息的模型:安全等级7.6.3基于扩展安全等级模型的路由:安全向量7.7容错广播7.7.1一般方法7.7.2使用全局信息的广播7.7.3使用安全等级进行广播7.8容错组播7.8.1一般方法7.8.2基于路径的路由7.8.3使用安全等级在超立方中进行组播第8章分布式系统的可靠性8.1基本模型8.2容错系统设计的构件模块8.2.1稳定存储器8.2.2故障-停止处理器8.2.3原子操作8.3节点故障的处理8.3.1向后式恢复8.3.2前卷式恢复8.4向后恢复中的问题8.4.1检查点的存储8.4.2检查点方法8.5处理拜占庭式故障8.5.1同步系统中的一致协议8.5.2对一个发送者的一致8.5.3对多个发送者的一致8.5.4不同模型下的一致8.5.5对验证消息的一致8.6处理通信故障8.7处理软件故障第9章静态负载分配9.1负载分配的分类9.2静态负载分配9.2.1处理器互连9.2.2任务划分9.2.3任务分配9.3不同调度模型概述9.4基于任务优先图的任务调度9.5案例学习:两种最优调度算法9.6基于任务相互关系图的任务调度9.7案例学习:域划分9.8使用其他模型和目标的调度9.8.1网络流量技术:有不同处理器能力的任务相互关系图9.8.2速率单调优先调度和期限驱动调度:带实时限制的定期任务9.8.3通过任务复制实现故障安全调度:树结构的任务优先图9.9未来的研究方向第10章动态负载分配10.1动态负载分配10.1.1动态负载分配的组成要素10.1.2动态负载分配算法10.2负载平衡设计决策10.2.1静态算法对动态算法10.2.2多样化信息策略10.2.3集中控制算法和分散控制算法10.2.4移植启动策略10.2.5资源复制10.2.6进程分类10.2.7操作系统和独立任务启动策略10.2.8开环控制和闭环控制10.2.9使用硬件和使用软件10.3移植策略:发送者启动和接收者启动10.4负载平衡使用的参数10.4.1系统大小10.4.2系统负载10.4.3系统交通强度10.4.4移植阈值10.4.5任务大小10.4.6管理成本10.4.7响应时间10.4.8负载平衡视界10.4.9资源要求10.5其他相关因素10.5.1编码文件和数据文件10.5.2系统稳定性10.5.3系统体系结构10.6负载平衡算法实例10.6.1直接算法10.6.2最近邻居算法:扩散10.6.3最近邻居算法:梯度10.6.4最近邻居算法:维交换10.7案例学习:超立方体多计算机上的负载平衡10.8未来的研究方向第11章分布式数据管理11.1基本概念11.2可串行性理论11.3并发控制11.3.1基于锁的并发控制11.3.2基于时戳的并发控制11.3.3乐观的并发控制11.4复制和一致性管理11.4.1主站点方法11.4.2活动复制11.4.3选举协议11.4.4网络划分的乐观方法:版本号向量11.4.5网络分割的悲观方法:动态选举11.5分布式可靠性协议第12章分布式系统的应用12.1分布式操作系统12.1.1服务器结构12.1.2八种服务类型12.1.3基于微内核的系统12.2分布式文件系统12.2.1文件存取模型12.2.2文件共享语义12.2.3文件系统合并12.2.4保护12.2.5命名和名字服务12.2.6加密12.2.7缓存12.3分布式共享内存12.3.1内存相关性问题12.3.2Stumm和Zhou的分类12.3.3Li和Hudak的分类12.4分布式数据库系统12.5异型处理12.6分布式系统的未来研究方向附录DCDL中的通用符号列表
2024/12/20 22:56:08 29.64MB 分布式系统设计 jie wu著 高传善
1
该数据集为博主所整理的花卉数据集的第二部分,由于上传空间的限制共分为三部分上传,该部分共有玫瑰、梅花、茉莉花、牡丹、蒲公英、牵牛花、桃花共7个分类,每个类别有1000张图片集合,详情见https://blog.csdn.net/qq_37972530/article/details/81363934
2024/12/20 11:33:57 192.63MB 数据集 花卉
1
#include#include#include#includeusingnamespacestd;intw=0;//尾数累加器intp=0;//指数累加器intj=0;//十进制小数位数计数器inte=1;//用来记录十进制数的符号,当指数为正时为1,为负时为-1inti=0;//用来标志元素位置intd=0;//用来表示每个数值型元素对应的数值constintN=40;//用来确定输入识别符的最大长度chardata[N];//存放输入的识别符boolis_digit;//标志是否是数字stringCJ1;//确定是整形还是实型doubleCJ2;//记数值//函数声明voidcheck(charc);//检查首字母是否是数字的函数voiddeal_integer(charc);//处理识别符的整数部分voiddeal_point(charc);//用来处理小数部分voiddeal_index(charc);//用来处理指数部分voids_next();//确定实型voidz_next();//确定整型voidlast();//计算CJ2voiderror();//程序中错误处理程序voiddeal();//处理函数主体intmain(){//主函数coutdata;deal();//处理函数主体last();//计算CJ2system("pause");return0;}voidcheck(charc)//判断输入的首字母是否是数字{is_digit=isdigit(c);while(is_digit!=true){//输入的首字母不是数字时coutdata;check(data[0]);}}voiddeal_integer(charc){//处理识别符的整数部分d=(int)c-48;w=w*10+d;i++;if(isdigit(data[i])!=0)//下一个仍是数值时,调用程序本身deal_integer(data[i]);}voiddeal_point(charc){//用来处理小数部分inttemp=i;if(isdigit(c)!=0)//是数值字符时deal_integer(c);else{error();//错误处理程序deal();//处理函数主体}j=i-temp;//记录十进制小数位数}voiddeal_index(charc){//用来处理指数部分if(c=='-'){e=-1;i++;}//是'-'号时else{if(c=='+')i++;//是'+'号时else{if(isdigit(c)==false)//非数值字符时{error();//错误处理程序deal();//处理函数主体}else
2024/12/19 11:09:24 33KB 无符号数的词法分析程序
1
1.实现了对文件、文件夹的复制、粘贴、剪切、删除功能;
2.实现了对文件夹的双击打开、对多种类型的文件的双击打开查看功能;
3.实现了主窗体左边驱动器树形视图(显示各驱动器及内部各文件夹列表)、右边文件列表视图(显示当前文件夹下所包含的文件和下一级文件夹)的显示,以及两者的联动显示。
左右窗体间设有分隔条,拖动可改变左右窗体大小。
文件列表视图中包含了名称、修改日期、类型、大小四个字段;
4.实现了在主窗体右边文件列表视图进行右键时弹出的上下文菜单,该菜单会根据当前是否选中某一文件项而将菜单项加以调整。
例如,右键时,若当前没有选中文件项,则可以显示出“查看”、“新建文件”、“新建文件夹”等菜单项;
但是若当前选中了某一文件项,则可以显示出“复制”、“剪切”、“重命名”等菜单项;
5.实现了主窗体地址栏、状态栏的显示和隐藏可以由用户控制;
6.实现了文件、文件夹属性的查看;
7.实现了对当前计算机的进程、线程简单管理功能;
8.实现了在当前路径下“返回上一级目录”的功能;
9.实现了在主窗体上方地址栏直接输入文件路径,然后直接回车查看该路径下的文件列表的功能;
10.实现了对当前计算机文件、文件夹的监控功能。
可定制化程度较高,既可以实现对特定路径的监控,也可以实现对具体磁盘驱动器的监控,甚至是全盘监控。
监控过程中的日志均高亮显示在监控窗口中,也支持将日志保存到特定路径;
11.将重命名功能加以改进,实现了类似windows的”选定->再单击->出现重命名状态->进行重命名“功能;
12.实现了对当前计算机的文件/文件夹的权限管理功能。
权限管理包括:完全控制、修改、读取和执行、列出文件夹内容、读取、写入共6个模块;13.实现了”最近访问“的功能,用户可以在该功能区找到最近使用的文件,并双击打开查看;
14.实现了新建文件功能,用户可以根据自己的需要在弹出的窗口中输入文件的全名(包括“文件名+拓展名”),从而新建各种类型的文件;
15.实现了用户在主窗体右边文件列表中的历史访问路径的前进、后退功能;
16.实现了对文件/文件夹的快速搜索功能(基于多线程)。
使用时先在地址栏输入特定文件路径(或者直接进入特定文件路径),然后直接在主窗体上方搜索框中输入你所要搜索的文件名或关键字,最后回车即可在当前文件列表区中显示出搜索到的结果,搜索到的文件/文件夹支持直接双击查看或编辑。
实测时,比windows自带的文件/文件夹搜索功能快一点。
.......支持开源精神,需要详细了解这个Demo的朋友可以移步:https://github.com/Yuziquan/MyFileManager欢迎star~~~
2024/12/19 5:25:25 19.35MB C# 资源管理器 权限管理 文件监控
1
运筹学优化领域,多目标优化算法,多目标自适应粒子群优化算法;
并简要介绍了开源多目标优化算法框架jMetal。
原文参见https://blog.csdn.net/dkjkls/article/details/88364570
2024/12/18 15:58:08 18.85MB 运筹学 多目标优化 多目标粒子群 jMetal
1
基于Qt实现的猜数字游戏,先在主界面设置猜数字的时间。
使用进度条来显示剩余时间。
当输入数字过大提示数字过大,反之提示数字过小。
如果输入正确则跳出成功动画。
2024/12/18 4:44:20 4.35MB Qt C++ 定时器 动画
1
Javaweb案例,新闻系统主要以提供新闻信息为主,是独立网站。
并有新闻后台管理系统。
主要功能有:供用户发布新闻,游客浏览新闻。
用于登录后,进入新闻管理后台,可创建新闻内容,查询新闻,浏览新闻信息等
2024/12/17 16:25:58 51.61MB java ssh mysql
1
昆仑通泰McgsPro软件是一款在工业自动化领域广泛应用的触摸屏组态软件,也被称为昆仑通态触摸屏。
以下是McgsPro软件的基本使用教程及一个样例工程的简单介绍。
一、McgsPro软件基本使用教程安装软件下载并安装McgsPro组态软件及其模拟器(如果没有触摸屏设备,则使用模拟器进行模拟运行)。
新建工程打开McgsPro软件,点击“文件”菜单下的“新建工程”选项,开始创建新的组态工程。
工程配置在新建工程界面,配置HMI设备的分辨率、网格效果图、构件风格等参数。
这些配置应与购买的触摸屏设备相匹配。
组态界面McgsPro组态软件主要由主控窗口、设备窗口、用户窗口、实时数据库和运行策略五个部分组成。
主控窗口:设置系统运行流程及特征参数等。
设备窗口:用于实现数据的采集,通过添加设备驱动和设置设备通道来与外部设备进行通信。
用户窗口:用于设计人机交互界面,包括添加各种图形元素(如按钮、标签、输入框等)和设置它们的属性。
实时数据库:用于管理变量,可以自定义变量或通过采集得到变量,并在变量与设备通道之间建立连接。
运行策略:用于编写脚本程序,以实现更复杂的控制逻辑和
2024/12/17 16:01:53 11.22MB
1
 随着石油和天然气水合物调查工作的深入开展,为了对海底勘探区地温场的结构、状态需要有更细致的了解,设计一种高分辨、高精度的海底沉积物地温梯度测量系统。
以高精度NTC型热敏电阻为传感器,选用16位高性能、多通道、低能耗的MSP430F123芯片作为主处理器,通过直流不平衡电桥的测量方式间接测量热敏电阻的阻值,在硬件方面和软件方面都采用滤波技术,克服电压源的干扰、仪器温漂和时漂带来的偏差,采用STEINHART&HART方程来进行R-T转换,经过零点漂移和温度漂移的修正,进而得到更精确的海底沉积物地温梯度曲线。
系统测试结果表明,测量系统的分辨率可达1mK,精度可达±3mK(0~25℃),该系统具有可靠性高、功耗小、体积小、操作方便等特点,具有很高的实用价值。
1
本资源是基于Android的智能聊天机器人的源代码。
它的运行逻辑就是将用户输入的文字,调用复旦nlp算法分词后,得到主谓宾三个关键词,然后分别按照主谓宾的的顺序与数据库(SQLite)中的三个表匹配,匹配得到一个id,然后根据这个id到语料表中找到对应的回答,反馈给用户。
它有学习功能,即用户可教它说话,其原理也使通过分词,将分词结果存入到主谓宾三个表中。
数据库在assets文件夹中。
若有其它疑问可与我私信。
2024/12/15 7:41:42 4.12MB Android SQLite数据库 智能聊天
1
共 1000 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡