首页 > 其他分享 >9.2 要意识到操作系统的存在

9.2 要意识到操作系统的存在

时间:2023-02-13 21:58:36浏览次数:38  
标签:操作系统 意识 代码 printf 硬件 应用 time 9.2

制作应用的程序员们意识到一点:制作的不是硬件,而是利用操作系统功能的应用。

代码清单9-1 表示的是,在 Windows 操作系统下,用C语言制作一个具有表示当前时间功能的应用。time()是用来取得当前日期和时间的函数,printf() 是用来在显示器上显示字符串的函数。程序的运行结果如图 9-4所示。


运行代码清单9-1 的应用时,硬件的受控过程如下所示:

(1)通过 time ttm;,为 timet类型的变量申请分配内存空间。

(2)通过 time(&tm);,将当前的日期和时间数据保存到变量的内存空间中。

(3)通过 printf(”%sin",ctime(&tm));,把变量内存空间的内容输出到显示器上。

应用的可执行文件指的是,计算机的 CPU 可以直接解释并运行的本地代码。不过这些代码是无法直接控制计算机中配置的时钟 IC 及显示器用的 I/O 等硬件的。那么,为什么代码清单 9-1 的应用能够控制硬件呢?

在操作系统这个运行环境下,应用并不是直接控制硬件,而是通过操作系统来间接控制硬件的。变量定义中涉及的内存的申请分配以及 time() 和 printf() 这些函数的运行结果,都不是面向硬件而是面向操作系统的。操作系统收到应用发出的指令后,首先会对该指令进行解释,然后会对时钟 IC(实时时钟 )和显示器用的 I/O 进行控制。

标签:操作系统,意识,代码,printf,硬件,应用,time,9.2
From: https://www.cnblogs.com/ttmeng/p/17117941.html

相关文章

  • 9.1 操作系统功能的历史
    操作系统的原型:仅具有加载和运行功能的监控程序。通过事先启动监控程序,程序员就可以根据需要的各种程序加载到内存中运行。如下图: 在利用监控程序编写程序的过程中,发......
  • 9.5Windows操作系统的特征
    Windows操作系统的主要特征如下所示。   (1)32位操作系统(也有64位版本)    (2)通过API函数集来提供系统调用    (3)提供采用了图形用户界面的用户界面 ......
  • 9.4操作系统和高级编程语言使硬件抽象化
       通过使用操作系统提供的系统调用,程序员就没必要编写直接控 制硬件的程序了。而且,通过使用高级编程语言,有时甚至也无需考虑系统调用的存在。这是因为操作系统和高......
  • 9.2要意识到操作系统的存在
       代码清单9-1表示的是,在Windows操作系统下,用C语言制作一个具有表示当前时间时间功能的应用。time()是用来取得当前日期和时间的函数,print()是用来在显示器上显示字符串......
  • [轻量级RTSP服务]Linux|麒麟操作系统下实现屏幕|摄像头|声音采集
    背景随着国产操作系统的推进,传统行业对Linux平台的呼声和需求越来越大,之前几年,我们发布了Linux平台运营商级的RTSP转RTMP推送模块、RTMP推送模块和RTSP、RTMP播放模块,前段时......
  • 7.5利用虚拟机获得其他操作系统环境
       即使不通过移植,也可以使用别的办法来进行其他操作系统的应用。通过利用虚拟机,我们就可以在Macintosh的Mac操作系统上运行Windows应用了。   VirtualPCfo......
  • 7.1运行环境=操作系统+硬件
       程序中包含着运行环境这一内容。可以看它的安装包或者目录。通常在某个位置会写有“运行环境”这一项。例如2007MicrosoftOfficeSystem需要的运行环境,就如表7-......
  • 7.3 不同操作系统的API不同
    应用软件则必须根据不同的操作系统类型来专门开发。CPU的类型不同,所对应的机器语言也不同,同样的道理,操作系统的类型不同,应用程序向操作系统传递指令的途径也是不同的。应......
  • 7.1 运行环境=操作系统+硬件
    由于同一个程序能被大量用户使用,所以说程序具有很大的价值。但是,如果运行环境不同,程序是无法运行的。如表7-1所示:在表示程序的运行环境时,列出了OperatingSystem(操作系统......
  • 为何我选择Ubuntu操作系统
    选择Ubuntu操作系统的原因十分简单。那就是我进行了占卜。卦象显示,用Ubuntu编程,才会收获一个较好的结果。于此,我又自相矛盾了。这下我将全面转战Ubuntu系统。的确,我的确憎恨......