•第一讲o什么叫操作系统♣计算机操作系统是指控制和管理计算机的软、硬件资源,合理组织计算机的工作流程,方便用户使用的程序集合。
o操作系统的三个作用管理者……虚拟机♣计算机系统软硬件资源的管理者。
♣为用户提供一台等价的扩展机器或虚拟机。
♣最重要、最基本、最复杂的系统程序,控制应用程序执行的程序。
o操作系统的发展历史每一代思想特别是分时系统(现代的都是分时)定义特点优缺点♣第一代:手工操作•1945-1955•使用机器语言•无操作系统•用于数学计算•输入输出:插件版、纸带、卡片•计算机处理能力日益提升,而手工操作效率低下,造成了资源浪费。
♣第二代:单批道处理系统•1955-1965•用于大型机•使用汇编语言,FORTRAN,作业•FMS(FortranMonitorSystem),IBSYS(IBM为7094机配备的操作系统)•用于较复杂的科学工程计算o联机批处理o脱机批处理•机时在走来走去中浪费掉•优点:同一批作业自动依次更替,改善了主机CPU和I/O设备的使用效率,提高了吞吐量。
•主要问题:CPU和I/O设备使用忙闲不均,取决于作业特性。
o计算为主的作业,外设空闲;
oI/O为主的作业,CPU空闲。
♣第三代:多批道处理系统•1965-1980•使用集成电路•操作系统:庞大、复杂•多道:内存中同时存放几个作业。
•几项新技术:Multiprogramming,Spooling•优点:o资源利用率高(CPU、内存、I/O)o作业吞吐量大•缺点:o用户交互性差o作业平均周转时间长♣第四代:分时系统•70年代中期至今•多个用户分享使用同一台计算机。
多个程序分时共享硬件和软件资源。
•通常按时间片分配:各个程序在CPU上执行的轮换时间。
•操作系统:CTSS(M.I.T.)、Multics(computercommunity)•特征:o同时性♣也称多路性。
若干用户同时与一台计算机相连,宏观上看各个用户在同时使用计算机,他们是并行的;
微观上看各个用户在轮流使用计算机。
o交互性♣用户通过终端设备(如键盘、鼠标)向系统发出请求,并根据系统的响应结果再向系统发出请求,直至得到满意的结果。
o独立性♣每个用户使用各自的终端与系统交互,彼此独立、互不干扰o及时性♣指用户向系统发出请求后,应该在较短的时间内得到响应。
♣新发展:个人计算机、实时系统、网络与分布式系统、移动计算……o什么叫中断♣中断:指CPU在收到外部中断信号后,停止原来工作,转去处理该中断事件,完毕后回到原来断点继续工作。
♣通道:用于控制I/O设备与内存间的数据传输。
启动后可独立与CPU运行,实现CPU与I/O的并行。
o中断的处理机制
2025/4/29 12:58:18 5.38MB 操作系统
1
《IntroductionTo3DGameProgrammingWithDirectX12》是一本专为游戏开发人员设计的教程,专注于使用DirectX12这一先进的图形API进行3D游戏编程。
这本书由FrankD.Luna撰写,是“龙书”系列的最新版,旨在帮助读者深入理解3D图形编程的核心概念,并掌握DirectX12的实用技术。
DirectX12是微软推出的一个低级图形接口,允许开发者更直接地控制硬件资源,从而提高游戏性能和效率。
与前几代DirectX相比,DirectX12提供了更低级别的硬件抽象,让开发者能够实现更精细的多线程优化,降低CPU开销,并提高GPU利用率。
本书首先介绍了3D图形学的基本原理,包括向量和矩阵运算、光照模型、纹理贴图以及图形渲染管线等。
这些基础知识对于理解DirectX12的工作原理至关重要。
随后,作者详细讲解了DirectX12API的使用,包括设备创建、交换链设置、命令队列和命令列表的管理、资源的分配与绑定,以及深度缓冲和多重采样抗锯齿等技术。
在3D场景的构建方面,书中涵盖了顶点缓冲和索引缓冲的使用,以及如何通过顶点着色器和像素着色器实现复杂的图形效果。
同时,作者还讲解了如何利用DirectX12进行高效的资源管理和内存管理,确保游戏运行的稳定性和流畅性。
对于现代游戏开发来说,多线程编程是必不可少的。
《IntroductionTo3DGameProgrammingWithDirectX12》详细阐述了如何利用DirectX12的多线程特性,将渲染工作负载分散到多个处理器核心上,从而提升游戏的并发处理能力。
此外,书中还涵盖了同步机制,如事件、信号量和fence,以确保多线程环境中的数据一致性。
为了帮助读者更好地理解和实践,本书提供了丰富的示例代码,这些代码可以直接在Windows平台上编译运行。
通过跟随这些示例,读者可以逐步建立起自己的3D游戏引擎,掌握DirectX12的实际应用。
《IntroductionTo3DGameProgrammingWithDirectX12》是一本深入浅出的DirectX12学习指南,适合有一定编程基础的游戏开发爱好者和专业人员。
通过阅读本书,读者不仅可以掌握DirectX12的使用,还能深入了解3D图形编程的精髓,为开发高质量的3D游戏奠定坚实的基础。
2025/4/28 22:31:06 24.47MB DirectX12
1
在嵌入式行业,随着微控制单元MCU的发展,涌现出一大批集成度高,速度快,功能强,可靠性好的控制系统及智能仪器仪表产品。
这得益于单片机可以有效处理采样信号的功能。
此外,较低的开发成本和较高的开发效率也不断吸引开发人员让其在低成本和短时间的条件下设计出性能优秀的电子产品。
特别是搭配传感器与调理电路,可以将物理量转化成数字信号,使单片机的处理能力得以充分发挥。
旋转设备,例如发动
2025/4/27 0:36:08 207KB 89C52单片机
1
【算法设计与分析】是计算机科学中的核心课程,主要探讨如何有效地解决问题并设计高效计算过程。
这门课程由中国大学MOOC提供,由北京航空航天大学(北航)的专家讲授,旨在帮助学生理解和掌握基础算法及其分析方法。
通过学习这门课程,学生将能够运用所学知识解决实际问题,提升编程能力,以及对复杂度理论有深入的理解。
课程内容可能涵盖以下几个方面:1.**排序算法**:包括经典的冒泡排序、插入排序、选择排序、快速排序、归并排序和堆排序等,以及更高效的算法如计数排序、桶排序和基数排序。
这些算法的比较和分析有助于理解不同情况下的最佳选择。
2.**搜索算法**:如深度优先搜索(DFS)、广度优先搜索(BFS)、Dijkstra算法和Floyd-Warshall算法,用于解决图论问题和最短路径寻找。
3.**动态规划**:这是解决多阶段决策问题的有效方法,例如斐波那契序列、背包问题、最长公共子序列和最短编辑距离等。
4.**贪心算法**:在每一步都选择局部最优解,以期达到全局最优。
典型应用如霍夫曼编码和Prim或Kruskal的最小生成树算法。
5.**分治策略**:将大问题分解为小问题,然后递归地解决。
典型的例子有归并排序、快速排序和大整数乘法。
6.**回溯法与分支限界**:用于在大规模搜索空间中找到解决方案,如八皇后问题和N皇后问题。
7.**图论与网络流**:包括最大流问题、最小割问题,以及Ford-Fulkerson和Edmonds-Karp算法。
8.**数据结构**:如链表、队列、栈、树(二叉树、平衡树如AVL和红黑树)、哈希表等,它们是算法的基础。
9.**复杂度理论**:介绍时间复杂度和空间复杂度的概念,以及P类和NP类问题,理解算法效率的重要性。
课程链接提供的博客可能包含课程的代码实现,这对于理解算法的实际操作和优化至关重要。
实践是检验和加深理论知识的最好方式。
学生可以通过这些代码实现来锻炼编程技能,同时理解算法在真实场景中的表现。
"中国大学MOOC-算法设计与分析"是一门全面介绍算法和分析技巧的课程,对于计算机科学专业的学生以及对算法感兴趣的任何人都极具价值。
通过学习,不仅可以掌握多种算法,还能培养问题解决和分析能力,为未来的学术研究或职业发展奠定坚实基础。
2025/4/26 11:14:57 30.82MB 算法设计与分析 基础算法
1
数据结构课程设计,学生成绩管理系统,版本:0.1,具有特性:具有一定的权限管理系统,不需要安装数据库,使用txt文本文件存储数据,使用Java语言编写链表进行对数据处理,拥有增,删,查,改,显示,排序等多种功能,通过编写的Jsp页面进行链表类的调用。
页面较为美观,有验证码验证机制,对于输入的非法数据有检查能力。
2025/4/24 6:25:18 1.94MB 数据结构 课程设计 成绩管理
1
2018通信工程师考试综合能力学习笔记,pdf版本,超级全面的知识点总结,分享给大家,希望大家都可以通过测试。
2025/4/23 21:47:12 3.16MB 通讯工程师 综合能力
1
国际标准SFR算法,标准文档ISO12233,SFR(spatialfrequencyresponse)表示空间频率响应,表示的也是相机的解像能力
2025/4/23 21:40:34 283KB SFR 12233
1
属于CNAS实验室认可规范文件清单中类别之一-实验室基本认可准则,包含全部10个最新的标准文件CNAS-CL01~10,如·CNAS-CL012018检测和校准实验室能力认可准则;
CNAS-CL09:2019科研实验室认可准则;
CNAS-CL10:2020生物样本库质量和能力认可准则等等,同时这10个标准文件所等效或参考的ISO(包含国标)也上传,大家可以查询或在我的资源目录查找,如没有找到也可留言给我!关于CNAS实验室认可规范文件清单,请见:https://download.csdn.net/download/Johnho130/15350585
2025/4/22 16:53:18 46.49MB cnas cl10 cl01 实验室
1
针对目前单片机理论教学和实训教学中存在的问题,介绍一种基于仿真软件的单片机串行通信教学系统的设计。
首先,确定串行通信控制系统的设计方案,按照功能划分为控制模块、通信模块、显示模块和测试模块4个部分。
然后,根据设计方案使用Proteus仿真软件搭建虚拟仿真的硬件平台。
再使用KEIL软件编辑编译软件程序代码。
最后使用Proteus软件自带的虚拟仪器验证系统通信数据正确性、通信数据格式正确性和通信动作正确性。
该教学系统不仅可以完成内容难度较大的串行通信理论知识的讲解,同时也能完成多种串行通信的实践,进一步培养学生设计实践和拓展应用的能力。
1
支持我建造状态概述SupportMeSystem是作为练习开发的Web应用程序,尚不具备生产准备能力。
此应用程序可以促进提供支持的公司与其客户之间的通信。
主要实体是:公司,位置,用户(以不同的角色),联系人,地址,故障单,消息,团队公司在很多地方(分公司)公司有联系方式位置有很多用户位置已联系用户已联系用户有很多票联系人有地址用户具有许多角色门票有很多留言机票有州,类型和优先权主要用户角色是管理员,支持,公司经理和员工####Demo屏幕截图这是主页视图位置的管理视图可从授权用户访问的用户信息页面。
头像上传页面为角色为支持的用户创建新的票证页面票证编辑/详细信息/添加消息页面
2025/4/22 7:42:24 10.17MB C#
1
共 1000 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡