首页 > 编程语言 >程序是怎样跑起来的第七章读书笔记

程序是怎样跑起来的第七章读书笔记

时间:2024-03-01 14:55:43浏览次数:29  
标签:Java 操作系统 读书笔记 Windows 不同 虚拟机 程序 硬件 第七章

第七章围绕程序是在和的环境中运行的来展开介绍7.1告诉我们运行环境等于操作系统加组件,操作系统和硬件是运行环境的重要组成部分不同的操作系统和硬件组合可能会导致,软件在不同的环境中表现出不同的行为。 Windows操作系统在一定程度上解决了CPU以外的硬件差异问题使得软件在不同的硬件设备上在不同的环境中表现出不同的行为,主要是通过以下几个方面实现的一驱动程序:Windows提供了丰富的驱动程序库驱动程序可以适应不同硬件的特性和功能,做使得不同型号和品牌的硬件设备在Windows系统上能够兼容使用。二硬件抽象层: Windows采用了硬件抽象层的概念将硬件的具体细节抽象出来为上层的操作系统和应用程序提供一个统一的接口。三标准接口和规范:Windows遵循一系列的硬件标准和规范,例如USB PCI sata等,
而不同操作系统的API不同则是应用程序编程接口确实存在差异,因为每个操作系统都有自己独特的设计和功能,为了与系统的内部机制和特性相匹配,它们的api也会有所不同。不同操作系统的api差异可能体现在以下几个方面一函数命名和参数二数据结构和类型三系统特性和限制在不同在同类型操作系统下不管硬件如何API基本没有差别。因而,针对某特定操作系统的api所编写的程序,在任何硬件上都可以运行。但是由于cpu种类不同,机器人也不相同,因此本地代码自然也不同。此情况,则需利用能生成个CPU专用的本地代码的编译器,来对源代码进行重新编译。
第七章第四小节告诉我们freebsd port对于使用源代码的帮助, freebsd上应用的源代码大部分是用C语言来计数的他们的操作系统中都带有标准的CB器全球很多站点都提供适用于freebsd的应用源代码这些代码还被按照不同的领域进行了分类整理
第五小节告诉我们通过虚拟机获得其他操作系统环境,通过虚拟机可以在一台物理机器上创建多个虚拟计算机,每个虚拟计算机都可以运行不同的操作系统。使用虚拟机的好处包括一可以在一台物理计算机上运行多个操作系统,而无需在物理计算机上安装多个操作系统。二可以在不同的操作系统之间切换而不需重新启动物理计算机。三可以在虚拟机中隔离不同的操作系统,以避免不同操作系统之间的冲突和干扰。四可以在虚拟机中测试和调试软件,而不会影响物理计算机上的其他软件和数据。
第六章告诉我们提供相同运行环境的Java虚拟机它是除虚拟机的方法之外能提供不依赖于特定硬件及操作系统的程序运行环境的第二种方法,查在程序运行时,将编译后的字节代码转换成本地代码,这样的操作方法可以实现同样字母自己的代码在不同环境下运行。 Windows有Windows专用的Java虚拟机都好Mac INTOSH也有它专用的Java虚拟机从操作系统方面来看Java虚拟机是一个应用。其次Java虚拟机每次运行时都要把字节代码变换成本机代码,这一机制是造型运行速度慢的原因。
第七小节则讲了BIOS和引导,当计算机开机时BIOS会首先执行一系列的自检操作总的来说BIOS和引导程序共同合作确保计算机能够正确的启动操作系统为用户提供一个稳定的计算环境

标签:Java,操作系统,读书笔记,Windows,不同,虚拟机,程序,硬件,第七章
From: https://www.cnblogs.com/2005520Yang/p/18047058

相关文章

  • 程序是怎样跑起来的第六章读书笔记
    第六章的主题是文件的压缩通过询问读者为什么文件可以压缩来展开文件压缩机制的讲解6.1我们可以了解到,文件是以字节为单位的保存,每个字节可以表示一个字符、一个数字或其他类型的数据。在文件系统中,文件的大小通常以字节为单位来衡量。通过对字节的读取和写入计算机可以实现对文件......
  • 读书笔记3
    第三章软件工程师的成长这章主要讨论软件工程师个人能力衡量及发展,一些思维误区和以后的职业发展在团队工作中,稳定、一致的交付时间时衡量一个员工能力的重要方面初级软件工程师的成长包括以下几种:(1)积累软件开发相关的知识,提升技术技能(如对具体技术的掌握,动手能力)。例如:对JAV......
  • 读书笔记2
    1.1节通过三个简短的对话,启发我对什么是程序,什么是软件,什么是软件工程,也了解到了一个软件不是简简单单就能说写就写的,还需要考虑各种因素,如人们的需求,功能的可行性。1.2节详细的给软件工程下定义,介绍软件工程的特殊性,介绍软件工程中的“工程”的由来,讲述了软件工程与计算机科学的......
  • 程序是怎样跑起来的第三章读书笔记
    第三章主要讲了计算机进行小数运算时出错的原因包括3.1将0.1累加一百次也得不到十(首先书本中列举了一个计算机运算错误的例子,代码清单3-1的程序运行后显示器上显示的结果并不是10,程序没错计算器也没发生故障用这个角度展开了计算机是如何处理小数的)3.2用二进制表示小数(对整......
  • 读书笔记
    《程序员修炼之道》是由AndrewHunt和DavidThomas合著的一本经典编程书籍。这本书不仅仅关注编码技术,还强调软件开发中的实践、原则和技巧。以下是一些读者通常提到的主要观点:1.实用性强:书中提供了很多实用的建议,帮助程序员提高编程技能和职业素养。2.注重实践:作者强调实际编......
  • 读书笔记(1)
    第一章概论:1.“软件=程序+软件工程”问题:程序与软件的区别是什么?回答:以前我总是分不清何为程序,何为软件,一直以为比较完善的程序就是一个软件。于是,我上网查了资料,更加明确两者的区别:程序(program)是为实现特定目标或解决特定问题而用计算机语言编写的命令序列的集合。为进行某......
  • 读书笔记(2)
    第二章个人技术与流程1.2.1.1用VSTS写单元测试在该部分,举的例子是用c#写的,因为之前并没有了解这部分的内容,所以,看起书来不是很懂。希望老师在上课时能用同学们学过的Java或者c语言举例给同学们讲解一下。2.“最好在设计的时候就写好单元测试,这样单元测试就能体现API的语义如......
  • 程序是怎样跑起来的
    读完《程序是怎样跑起来的》第一章后,我对程序的运行原理有了更深入的理解。第一章写了CPU的内部结构{程序流程的示例}{CPU的四个组成部分},CPU是寄存器的集合体{汇编语言,机器语言以及CPU的内部寄存器},决定程序流程的程序设计,条件分支和循环机制{顺序执行,条件分支和循环,CPU运行时标......
  • Go语言精进之路读书笔记第41条——有层次地组织测试代码
    聚焦位于测试包内的测试代码该如何组织41.1经典模式—平铺测试函数各自独立,测试函数之间没有层级关系,所有测试平铺在顶层41.2Unit家族模式测试套件(TestSuite)和测试用例(TestCase)41.3测试固件测试固件是一个人造的、确定性的缓解,在这个环境中进行测试,测试结果是可重复的......
  • 【STM32】使用Keil5加载程序时出现No Target Connected错误的解决办法
    错误情况加载程序时弹出Notargetconnected的Error框,随后弹出Flashdownloadfailed-TargetDLLhasbeencancelled。此时打开设置中Debug选项的Setting窗口,显示SWDIO中Notargetconnected解决办法检查设置里的Debug选项里的调试器型号有没有选对,如下图所示,我用的是S......