首页 > 编程语言 >程序是在何种环境中运行的

程序是在何种环境中运行的

时间:2024-02-17 19:00:13浏览次数:30  
标签:硬件 操作系统 环境中运行 Windows 不同 程序 何种 API CPU

Windows克服了CPU以外的硬件差异
计算机的硬件并不仅仅是由CPU构成的,还包括用于存储程序指令和数据的内存,以及通过I/O连接的外围设备。Windows操作系统对克服这些硬件构成的差异做出了很大贡献。在Windows的应用软件中,键盘输入、显示器输出等并不是直接向硬件发送指令,而是通过向Windows发送指令来间接实现的。因此,程序员就不用注意内存和I/O地址的不同构成了。

因为Windows操作的是硬件而非应用软件,而且针对不同的机型,这些硬件的构成也是有差异的。不过,Windows本身则需要为不同的机型分别提供专用的版本。应用软件则必须根据不同的操作系统类型来专门开发。CPU的类型不同,所对应的机器语言也不同,同样的道理,操作系统的类型不同,应用程序向操作系统传递指令的途径也是不同的。

应用程序向操作系统传递指令的途径称为API(Application Programming Interface),不同操作系统的API是有差异的。在同类型操作系统下,不管硬件如何,API基本上没有差别。因而,针对某特定操作系统的API所编写的程序,在任何硬件上都可以运行。由于CPU种类不同,机器语言也不相同,因此本地代码当然也是不同的。这种情况下,就需要利用能够生成各CPU专用的本地代码的编译器,来对源代码进行重新编译了。

标签:硬件,操作系统,环境中运行,Windows,不同,程序,何种,API,CPU
From: https://www.cnblogs.com/sleeeep/p/18018222

相关文章

  • 程序是怎样跑起来的
    《程序是怎样跑起来的》是一本引导读者深入理解计算机程序运行原理的书籍。通过简洁明了的文字和生动的实例,作者展示了从计算机底层硬件到高级编程语言的运行机制,帮助读者建立起对程序运行流程的完整认识。阅读这本书后,我最大的感受是它对编程思想的深入挖掘。在传统观念中,编程往......
  • 程序是怎么跑起来的读感
    通过对这本书后面内容的阅读,后面几张讲了并发和并行的概念以及其在程序执行中的应用。作者首先解释了并发和并行的区别,指出并发是多个任务交替执行,而并行是多个任务同时执行。然后,作者介绍了常见的并发模型和并行计算的方法。在这几章中,读者可以了解到为什么并发和并行对于提高程......
  • {fastcluster}:快速分层聚类程序(Fast Hierarchical Clustering Routines)
    1.函数代码该R包中最主要的函数是 hclust ,代码如下:>fastcluster::hclustfunction(d,method="complete",members=NULL){if(method=="ward"){message("The\"ward\"methodhasbeenrenamedto\"ward.D\&quo......
  • 《程序是怎样跑起来的》总结一二三四章
    一:物理层面:CPU由具有开关功能的晶体管构成逻辑层面:内部由、寄存器,控制器,运算器,时钟四个部分构成,各部分通过电信号相互连通程序启动后,根据时钟信号,控制器会从内存中读取指令与数据,通过对这些指令进行解释执行,运算器对数据进行运算,控制器根据运算结果来控制计算机控制器:负责......
  • 程序是怎样跑起来的第五六章读后感
    从第五章可以了解计算机采用的是存储程序方式。磁盘缓存是从磁盘中读出数据存储在内存中的,当数再次被读取时并不是从磁盘而是直接从内存中高速读出。DLL是DynamicLink的略称。函数的加载方式分为两种,一种是静态链接,另一种是动态链接。磁盘保存数据的物理单位是扇区。数据不读入......
  • 程序是怎样跑起来的 第六章
    压缩分类:压缩后的数据可以复原的称为可逆压缩,无法复原的称为不可逆压缩文件是将数据存储在磁盘等存储媒介上的一种形式,其以字节为存储单位,文件就是数据集合的字节任何情况下:文件的字节序列都是连续存储的RLE压缩算法:将文件内容用数据X重复次数,从而实现数据压缩,常用于压缩......
  • 程序是怎样跑起来的 第七章
    程序的运行环境=操作系统+具体硬件硬件核心考虑参数为CPU,不同的CPU指令集不同,能解释的机器语言种类也不同,其只能解释自身的机器语言,也就是常说的cpu指令集常见的有:x86、MIPS、SPARC、PowerPC本地代码:通过将源代码进行编译后生成的机器语言的程序成为本地代码(机器直接运......
  • 程序是怎样跑起来的 第八章
    本地代码:本地代码的内容就是数值的罗列集合(二进制的数据展示)编译器:负责将源代码转换为本地代码,每种语言都有其专用的编译器由于cpu类型不同,本地代码的类型也不同,编译器可以将源代码编译成不同cpu类型的本地代码交叉编译:在当前平台编译另外平台的本地代码,例如在win上编译linu......
  • 《程序是怎样跑起来的》第三章
    在阅读了《程序是怎样跑起来的》第三章之后,我仿佛揭开了计算机程序运行背后的神秘面纱。这一章节不仅为我提供了程序运行的具体流程图,还深入讲解了从源代码到机器码,再到操作系统与硬件交互的全过程。这些内容让我对程序的本质有了更深刻的认识,也激发了我进一步探索计算机世界的热......
  • Linux命令基础,黑马程序员学习笔记
    Linux命令基础命令基础格式command[-options][parameter]command:命令本身-options:[可选,非必填]命令的一些选项,可以通过选项控制命令的行为细节parameter:[可选,非必填]命令的参数,多数用于命令的指向目标等示例:ls-l/home/itheimals是命令本身,-l是选项,/home/itheim......