kot_mapku3 Asked:2020-06-05 19:42:34 +0000 UTC2020-06-05 19:42:34 +0000 UTC 2020-06-05 19:42:34 +0000 UTC 纯 C++ 中的图形? 772 编写操作系统时,会附加 API。使用 Win32 API,您可以创建窗口应用程序。但是当他们没有任何API的时候,他们可以在屏幕上画一些东西,然后把它们放在一起做窗口应用程序。例如,如何制作一个窗口,或仅使用 PL 绘制一些东西?操作系统的创造者是如何做到的? 更新。在此处找到有关此主题的有趣帖子 c++ 3 个回答 Voted Best Answer eri 2020-06-09T22:34:46Z2020-06-09T22:34:46Z 您可以在帧缓冲区(fbdev) 上绘制或直接绘制到显卡 (dri)。 关于该主题的很长的文章:http: //betteros.org/tut/graphics1.php 在现代计算机中,您可以使用着色器编写图形并输出到同一个帧缓冲区。 与 API 和框架相反,此输出在嵌入式系统和瘦客户端上很流行。 我建议看看Yocto。它构建了非常精简的 Linux,并具有用于构建不同库以在低级别工作的模板。 Darth 2020-06-05T20:01:24Z2020-06-05T20:01:24Z 意味着只有 JP 不起作用。您还需要一个 PL 可以在其中工作的环境。操作系统本质上就是环境。如果没有操作系统 - 至少,您将需要一个引导加载程序,其中包括输入/输出设备(键盘、鼠标、视频卡和显示器),以及您的程序将从中引导的设备 -(磁盘驱动器、硬盘驱动器、CD- ROM、闪存驱动器或网卡),将在其中一个设备上找到您的程序并将控制权转移给它。在那之后,你可以画画,因为。形象地说,引导加载程序将为您提供视频卡驱动程序以及作为程序模块的控件。您可以为自己放置一个虚拟机并进行试验。 cm044 2020-06-13T08:20:22Z2020-06-13T08:20:22Z 写入视频适配器端口 BIOS 通常会中断以在屏幕上输出具有给定属性的点。 不需要环境。不需要操作系统。自己写API。先为某种语言做一个编译器比较方便。汇编语言很乏味。操作系统将需要绘制更复杂的东西并使用内存。尽管没有它也是可能的 :) 我注意到您有兴趣在 C++ 中获取窗口。但 C++ 仍应使用以 asma 编写的库或用于输出的汇编程序插入。我们来到第 1 点,即 直接写给vidyuhu。 PS 什么是 YaP?我哭了?
您可以在帧缓冲区(fbdev) 上绘制或直接绘制到显卡 (dri)。
关于该主题的很长的文章:http: //betteros.org/tut/graphics1.php
在现代计算机中,您可以使用着色器编写图形并输出到同一个帧缓冲区。
与 API 和框架相反,此输出在嵌入式系统和瘦客户端上很流行。
我建议看看Yocto。它构建了非常精简的 Linux,并具有用于构建不同库以在低级别工作的模板。
意味着只有 JP 不起作用。您还需要一个 PL 可以在其中工作的环境。操作系统本质上就是环境。如果没有操作系统 - 至少,您将需要一个引导加载程序,其中包括输入/输出设备(键盘、鼠标、视频卡和显示器),以及您的程序将从中引导的设备 -(磁盘驱动器、硬盘驱动器、CD- ROM、闪存驱动器或网卡),将在其中一个设备上找到您的程序并将控制权转移给它。在那之后,你可以画画,因为。形象地说,引导加载程序将为您提供视频卡驱动程序以及作为程序模块的控件。您可以为自己放置一个虚拟机并进行试验。
不需要环境。不需要操作系统。自己写API。先为某种语言做一个编译器比较方便。汇编语言很乏味。操作系统将需要绘制更复杂的东西并使用内存。尽管没有它也是可能的 :)
我注意到您有兴趣在 C++ 中获取窗口。但 C++ 仍应使用以 asma 编写的库或用于输出的汇编程序插入。我们来到第 1 点,即 直接写给vidyuhu。
PS 什么是 YaP?我哭了?