桌面环境是一个自定义操作系统

发布于 2024-12-18 19:08:25 字数 111 浏览 1 评论 0原文

如果我用c写一个操作系统,我会如何制作桌面?我可以实现Java,还是有办法用C 编程语言来实现这一点?我从来没有用 C 语言做过任何类型的图形。有谁知道答案,更不用说教程或入门和学习如何编写桌面环境的方法了?

If I write an OS using c, how would I make the desktop? Could I implement Java, or is there a way to do this is the C programming language? I've never done anything with any sort of graphics in C. Does anybody know the answer, much less a tutorial or a way to get started and learn how to write the desktop environment?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

诗笺 2024-12-25 19:08:25

Linux 上的 Gnome 桌面(大部分)是用 C 编写的。

但如果你编写操作系统,桌面就不是你的首要任务;正确处理重要的事情,如进程、调度、线程、驱动程序、保护、身份验证……更重要,也更耗时。

不要将桌面环境操作系统。大多数计算机(可能是在 stackoverflow 为您提供这个答案的 Web 服务器,在某个数据中心运行)没有任何桌面环境。他们确实有操作系统。

关于操作系统,请阅读操作系统:三个简单的部分。您可能正在编写一些内核,因此请查看osdev.org 获取指导。

关于桌面环境,它们特定于您的操作系统提供和使用的显示服务器。在 2019 年我的 Linux 机器上,该服务器是 Xorg (但也许您正在使用 < a href="https://en.wikipedia.org/wiki/Wayland_(display_server_protocol)" rel="nofollow noreferrer">Wayland),以及与桌面环境相关的规则包括 ICCCM & EWMH。并且 GNOME (以及 Xorg)正在 用户模式用户空间

The Gnome desktop on Linux is written in C (mostly).

But if you write an OS, the desktop is not your priority; getting right important things like processes, scheduling, threads, drivers, protection, authentification, .... is more important, and time consuming.

Don't confuse the desktop environment with the operating system. Most computers (probably the Web server at stackoverflow providing you this very answer, running in some datacenter) don't have any desktop environments. They do have an OS.

About OSes, read Operating Systems: Three Easy Pieces. You probably are writing some kernel, so look into osdev.org for guidance.

About desktop environments, they are specific to the display server provided and used by your OS. On my Linux box in 2019, that server is Xorg (but maybe you are using Wayland), and the rules related to desktop environments include ICCCM & EWMH. And GNOME (and also Xorg) is running in user-mode and user space.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文