《计算机系统:系统架构与操作系统的高度集成》——1.3 操作系统的作用

简介:

本节书摘来自华章计算机《计算机系统:系统架构与操作系统的高度集成》一书中的第1章,第1.3节,作者:(美)拉姆阿堪德兰(Ramachandran, U.)(美)莱希(Leahy, W. D.)著, 更多章节内容可以访问云栖社区“华章计算机”公众号查看。

1.3 操作系统的作用

操作系统在网络视频游戏开发和实际使用中的角色是什么?操作系统是资源管理器,负责协调从游戏设计到实际运行游戏的过程中全部行为的硬件资源使用。
我们用联网视频游戏作为例子来理解程序的开发和部署生命周期。我们已经使用高级语言编写了客户端–服务器程序。我们可以用简单的文本编辑器,也可以使用复杂的程序开发工具如Visual Studio来开发视频游戏。一旦游戏开发完毕,我们就将程序编译成处理器的指令集。文本编辑器、编译器以及在程序开发中需要用到的其他程序工具都需要在处理器上运行。例如,编译器必须在处理器上运行,将高级语言程序作为输入,输出机器语言代码。操作系统要为每个程序的开发过程分配处理器资源。现在让我们来看看在玩游戏的时候会发生什么事情。
在视频游戏中,单击鼠标按键使得击球手三振出局,并显示在你的屏幕和其他每个玩家的屏幕上(见图1-6)。这其中发生了什么事情?首先,你的计算机里的硬件设备控制器记录了你的鼠标单击行为。控制器随后产生了一个处理器中断。请记住处理器正在执行你的游戏客户端程序。中断是一种硬件机制,通知处理器在正执行的程序之外发生了需要关注的事情。这种机制有点类似于房间的门铃。必须有人去看谁在按门铃,他要做什么。操作系统(也是一组程序)将自己调度到处理器上运行,以回应按铃。操作系统回应按铃,发现其来自鼠标,其目标是游戏客户端程序,并将这个中断传递给客户端程序。客户端程序将这个中断打包成一个消息,通过网络发送给服务器端程序。服务器端程序处理这个消息,使用新的消息更新游戏状态。客户端程序通过其各自的操作系统,更新各自的屏幕以反映新的世界的状态。我们可以看到,在从鼠标单击到显示屏幕更新的这段时间里,系统分配和释放了多种硬件资源(处理器、程序和数据所需的内存、鼠标、显示器、网络连接等)。操作系统负责协调所有这些动作。
image

图1-5  从电子和洞穴到多用户视频游戏。视频游戏应用通过硬件抽象的各个层次驱动电子和洞穴完成它所希望的操作
image

图1-6  分布式视频游戏中的应用–硬件–操作系统交互。交互发生在客户端和服务器端的应用程序、操作系统以及于其上执行的硬件之间

相关文章
|
2月前
|
Android开发 Swift iOS开发
深入探索iOS与Android操作系统的架构差异及其对应用开发的影响
在当今数字化时代,移动设备已经成为我们日常生活和工作不可或缺的一部分。其中,iOS和Android作为全球最流行的两大移动操作系统,各自拥有独特的系统架构和设计理念。本文将深入探讨iOS与Android的系统架构差异,并分析这些差异如何影响应用开发者的开发策略和用户体验设计。通过对两者的比较,我们可以更好地理解它们各自的优势和局限性,从而为开发者提供有价值的见解,帮助他们在这两个平台上开发出更高效、更符合用户需求的应用。
|
3月前
|
存储 安全 物联网
操作系统的心脏:深入理解现代操作系统架构与核心技术
本文旨在为读者提供一个关于现代操作系统(OS)架构和核心技术的全面概述。通过分析OS的主要组件、功能以及它们如何协同工作,本文揭示了操作系统在计算机系统中的核心地位及其复杂性。我们将探讨进程管理、内存管理、文件系统和输入/输出(I/O)等关键技术,并讨论它们对系统性能的影响。此外,本文还将涵盖一些最新的操作系统趋势和技术,如云计算、虚拟化和物联网(IoT)。通过阅读本文,读者将获得对操作系统内部运作方式的深刻理解,这对于软件开发人员、IT专业人士以及对计算机科学感兴趣的任何人来说都是宝贵的知识。
|
3月前
|
安全 调度 开发者
探索操作系统的心脏:现代内核架构与挑战
【10月更文挑战第7天】 本文深入探讨了现代操作系统内核的复杂性和功能性,从微观角度剖析了内核在系统运行中的核心作用及其面临的主要技术挑战。通过浅显易懂的语言解释专业概念,旨在为读者提供一个关于操作系统内核的全面视角。
51 2
|
4月前
|
算法 安全 Linux
操作系统的心脏:深入理解现代操作系统架构
本文旨在探讨现代操作系统的核心概念、架构以及关键技术。我们将从操作系统的基本定义开始,逐步解析其功能模块,包括进程管理、内存管理和文件系统等,最后讨论操作系统在现实世界中的应用和未来发展趋势。通过深入浅出的方式,帮助读者全面理解操作系统的工作原理及其重要性。
85 1
|
3月前
|
存储 人工智能 物联网
探索现代操作系统的架构与演进
【10月更文挑战第5天】 本文旨在深入探讨现代操作系统的核心架构及其在技术演进中的变革。通过对操作系统的基本概念、关键组成部分以及它们如何相互协作的分析,为读者提供一个全面且易于理解的视角。同时,本文还将回顾操作系统从单任务到多任务、从单用户到多用户的发展过程,并展望未来可能的技术趋势。
|
2月前
|
IDE 安全 Android开发
深入探索Android与iOS操作系统的架构差异
本文旨在对比分析Android和iOS两大主流移动操作系统在架构设计上的根本差异。通过详细解读两者的系统架构、开发环境、以及安全性等方面,揭示它们各自的特点及优势,为开发者选择合适的平台提供参考。
|
2月前
|
缓存 运维 网络协议
深入Linux内核架构:操作系统的核心奥秘
深入Linux内核架构:操作系统的核心奥秘
71 2
|
3月前
|
存储 资源调度 算法
操作系统的心脏:深入理解内核架构与机制####
【10月更文挑战第16天】 本文旨在揭开操作系统最神秘的面纱——内核,通过剖析其架构设计与关键机制,引领读者一窥究竟。在这篇探索之旅中,我们将深入浅出地讨论内核的基本构成、进程管理的智慧、内存分配的策略,以及那至关重要的系统调用接口,揭示它们是如何协同工作,支撑起现代计算机系统的高效运行。这既是一次技术的深潜,也是对“看不见的手”调控数字世界的深刻理解。 ####
66 3
|
3月前
|
存储 算法 安全
操作系统的心脏:深入理解现代操作系统架构与调度机制
本文将探讨现代操作系统的核心概念,包括进程管理、内存管理和 I/O 系统。通过分析这些组件如何协作以提供稳定和高效的计算环境,帮助读者更好地理解操作系统在现代计算中的重要性。我们将从宏观角度出发,逐步深入到微观细节,为读者提供全面而详细的技术解析。
|
3月前
|
安全 调度 虚拟化
探索现代操作系统的架构与优化
本文将深入探讨现代操作系统的核心架构和优化技术。从操作系统的基本定义入手,逐步解析其内核结构、进程管理、内存管理和I/O系统。同时,还将讨论现代操作系统在多核处理器支持、虚拟化技术和安全性方面的创新与优化措施。通过这些内容,读者可以全面了解操作系统的工作原理及其在实际应用中的表现与改进。