Home headlines The first operating system written in Chinese appears!

The first operating system written in Chinese appears!

Mar 22, 2022 am 10:18 AM
Chinese operating system

For many newcomers to programming who are not good at English, the various English keywords, variable names, function names, etc. in the code will inevitably be very confusing at first glance, and they may even question whether they can learn programming well.

In such a state of mind, an idea often pops up in their minds: "It would be great if they could program in Chinese."

Don't tell me, someone has really implemented it recently This idea came to mind: Jason.shao, a software engineer in Changsha, Hunan, wrote an operating system in Chinese and confidently said: "Fire Dragon Operating System is the first operating system written in Chinese in the universe"!

The first operating system written in Chinese appears!

1. Created languages ​​A, B, and C

Since we want to develop an operating system, programming languages ​​must Indispensable - in order to "cut wood" better, Jason.shao naturally had to "sharpen the knife" first. To this end, he created three programming languages, and the names were also casual:

A language: A mnemonic language for machine codes, a language that is easier for people to understand. The purpose of invention is to develop operating systems.

Language B: A structured and procedural language for language A. The purpose of invention is to improve development efficiency.

C language: an object-oriented high-level language, which can be understood as treating anything as an object and what attributes this object should have. Object-oriented language makes it easier to use computers to describe the world.

After the "knife" was sharpened, Jason.shao began to design its "first operating system written in Chinese in the universe."

According to the project introduction, the Fire Dragon operating system is developed using its own languages ​​A and B. It supports 64-bit multi-core multi-tasking graphical and paged memory management. It also has a Windows 11 interface style and supports x86_64 and ARMv8. (QEMU tested only) Architecture.

At the same time, the Fire Dragon Operating System has a series of basic functions, and is even moving towards the blockchain and metaverse (Articles 14 and 15):

1. Chinese display.
2. Picture display.
3. Text reading.
4. Support 32-bit true color, up to 2560*1080 resolution.
5. Implement 300 commonly used win apis and support some exe programs.
6. Brand new file system.
7. Support USB.
8. Supports sb16, ac97, es1370, es1371, hda and other sound cards.
9. Supports Ne2000, PCnet, intel 82545EM, intel 82574L, intel 82579LM and other network cards.
10. Support physical machine Tiger Lake core display and Vmeare svga Ⅱ virtual graphics card.
11. Famicom games.
12. Bootstrap compilation.
13. Stanford Rabbit.
14. Blockchain metaverse (in progress).
15. The Mirror World of the Metaverse (in progress).

It’s useless to talk about it. Jason.shao also showed a few screenshots of the operation of the Fire Dragon operating system in the project introduction:

The first operating system written in Chinese appears!

The first operating system written in Chinese appears!

The first operating system written in Chinese appears!

Judging from the operating results, the overall performance of the Fire Dragon operating system is remarkable, so the next thing that needs to be verified is whether it is really written in Chinese.

Just click on the memory management source code in a system:

The first operating system written in Chinese appears!

A little disbelief? Then open another layer management code:

The first operating system written in Chinese appears!

It can be seen from this that the "style" of the source code of the Fire Dragon operating system is obviously different from other codes commonly seen. The screen full of Chinese also confirms its feature of being “written in Chinese”.

2. “Plagiarism” controversy?

However, just when we were amazed that Jason.shao could really write an operating system in Chinese, a message from @dragon-os in the project comments sparked a huge discussion:

This is the "Paper Doll Operating System" in the Japanese Hidemi Kawai's "30 Days of Homemade Operating System". The so-called "Language A" is actually the asm assembly language, using a poor text replacement method. Instructions like mov are replaced with the crappy "move", which is just a different name. "Language B" is language C. The z_tools directory is the folder in the source code CD of "30 Days of Homemade Operating System". It's too obvious.

The first operating system written in Chinese appears!

What is "30 Days to Make Your Own Operating System"? Simply put, this is a book that comprehensively explains how to make your own operating system from the perspectives of computer architecture, assembly language, C language, etc. It aims to help developers write all codes from scratch and create a 32-inch Windows 7 operating system with a window system in 30 days. bit multitasking operating system.

According to @dragon-os analysis, the Fire Dragon operating system is actually the "Paper Doll Operating System" in this book, and even the "z_tools directory" in the project is also included in the source code CD of "30 Days of Homemade Operating System" folder, the signs of theft were "too obvious".

Faced with negative doubts, the project author Jason.shao directly replied in the comment area:

"Please read the 30-day open source agreement of the self-made operating system carefully before complaining. The author clearly explained the code You can modify it at will, and the modified code does not need to be open source. It can be used for commercial purposes. The code after this project will not be open source!"

Not only that, Jason.shao has also published it in the "References" , clearly stated that the project quoted this book:

The first operating system written in Chinese appears!

Although Jason.shao has clearly explained the cause of the incident, there are still some developers who believe that this behavior must be noted Source:

@akemimadoka: "Please indicate the source code development based on "30 Days Homemade Operating System"."

@longware: "This is not 100% self-developed, it is recommended The author adds a note."

However, many people affirm Jason.shao's spirit of courage to try:

@久久书生: "It is undeniable that it does not make any sense in the short term, but if the author persists Now, if more people participate, it may lead to revolutionary changes and support the author."

@pcd: "The idea is quite good. Language A is directly replaced by a compiler into machine code in batches, and language B is Use the compiler to convert it into C language and then compile it. The C language directly uses C# to replace the compilation in batches. The best thing is that this thing actually runs!"

@久永: "No matter the success or failure, for Thumbs up to the activists and cheers to the pioneers!"

3. Is Chinese programming necessary?

Among the many comments, there is also a neutral voice: "First of all, I like it, but I still don't understand the meaning of using Chinese."

As mentioned at the beginning of the article, among many people who have the idea of ​​"wanting to program in Chinese", the biggest reason is: poor English.

So will not being good at English really affect programming learning? Is Chinese programming necessary? The answer to this question may vary from person to person.

  • Support Chinese programming

This point of view can be combined with "@qwas982 once requested the C# team to develop a special Chinese version "This incident, at that time, its call for Chinese programming attracted a lot of attention.

In response to the view that "there is not much English-related grammar in programming, and it is more laborious to learn background knowledge", @武烜, a programmer for many years, once objected: "Programming still has English grammar-related relevance and needs to be learned. Background knowledge does not mean that there is no need to further lower the threshold for learning programming languages."

Brian, a Chinese-American programmer, also expressed emotion: "For me, English resources are simply a matter of course, so that I simply can't imagine what it would be like if the code or documentation were written in another language. If you don't know English, it will be easy to be buried in the shadow of those programmers who started earlier and made greater contributions."

  • Chinese programming is not necessary

At the same time, some developers believe that most people who want to program in Chinese are " "Programming layman": I think the reason why I can't learn programming well is because I'm not used to English.

But in fact, they still don't adapt to "Chinese". Because what they are not accustomed to is not English, but structured thinking and expression. Chinese programming seems to lower the entry barrier, but regardless of Chinese or English, complex programming thinking will not change.

So, what do you think of the above points? Everyone is welcome to leave comments for discussion!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
4 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Best Graphic Settings
4 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. How to Fix Audio if You Can't Hear Anyone
4 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: How To Unlock Everything In MyRise
1 months ago By 尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

The difference between H5 and mini-programs and APPs The difference between H5 and mini-programs and APPs Apr 06, 2025 am 10:42 AM

H5. The main difference between mini programs and APP is: technical architecture: H5 is based on web technology, and mini programs and APP are independent applications. Experience and functions: H5 is light and easy to use, with limited functions; mini programs are lightweight and have good interactiveness; APPs are powerful and have smooth experience. Compatibility: H5 is cross-platform compatible, applets and APPs are restricted by the platform. Development cost: H5 has low development cost, medium mini programs, and highest APP. Applicable scenarios: H5 is suitable for information display, applets are suitable for lightweight applications, and APPs are suitable for complex functions.

Can I install mysql on Windows 7 Can I install mysql on Windows 7 Apr 08, 2025 pm 03:21 PM

Yes, MySQL can be installed on Windows 7, and although Microsoft has stopped supporting Windows 7, MySQL is still compatible with it. However, the following points should be noted during the installation process: Download the MySQL installer for Windows. Select the appropriate version of MySQL (community or enterprise). Select the appropriate installation directory and character set during the installation process. Set the root user password and keep it properly. Connect to the database for testing. Note the compatibility and security issues on Windows 7, and it is recommended to upgrade to a supported operating system.

Can mysql and mariadb coexist Can mysql and mariadb coexist Apr 08, 2025 pm 02:27 PM

MySQL and MariaDB can coexist, but need to be configured with caution. The key is to allocate different port numbers and data directories to each database, and adjust parameters such as memory allocation and cache size. Connection pooling, application configuration, and version differences also need to be considered and need to be carefully tested and planned to avoid pitfalls. Running two databases simultaneously can cause performance problems in situations where resources are limited.

Unable to log in to mysql as root Unable to log in to mysql as root Apr 08, 2025 pm 04:54 PM

The main reasons why you cannot log in to MySQL as root are permission problems, configuration file errors, password inconsistent, socket file problems, or firewall interception. The solution includes: check whether the bind-address parameter in the configuration file is configured correctly. Check whether the root user permissions have been modified or deleted and reset. Verify that the password is accurate, including case and special characters. Check socket file permission settings and paths. Check that the firewall blocks connections to the MySQL server.

How to use locally installed font files on web pages? How to use locally installed font files on web pages? Apr 05, 2025 pm 10:57 PM

How to use locally installed font files on web pages Have you encountered this situation in web page development: you have installed a font on your computer...

How to control the top and end of pages in browser printing settings through JavaScript or CSS? How to control the top and end of pages in browser printing settings through JavaScript or CSS? Apr 05, 2025 pm 10:39 PM

How to use JavaScript or CSS to control the top and end of the page in the browser's printing settings. In the browser's printing settings, there is an option to control whether the display is...

Solutions to the errors reported by MySQL on a specific system version Solutions to the errors reported by MySQL on a specific system version Apr 08, 2025 am 11:54 AM

The solution to MySQL installation error is: 1. Carefully check the system environment to ensure that the MySQL dependency library requirements are met. Different operating systems and version requirements are different; 2. Carefully read the error message and take corresponding measures according to prompts (such as missing library files or insufficient permissions), such as installing dependencies or using sudo commands; 3. If necessary, try to install the source code and carefully check the compilation log, but this requires a certain amount of Linux knowledge and experience. The key to ultimately solving the problem is to carefully check the system environment and error information, and refer to the official documents.

Do mysql need to pay Do mysql need to pay Apr 08, 2025 pm 05:36 PM

MySQL has a free community version and a paid enterprise version. The community version can be used and modified for free, but the support is limited and is suitable for applications with low stability requirements and strong technical capabilities. The Enterprise Edition provides comprehensive commercial support for applications that require a stable, reliable, high-performance database and willing to pay for support. Factors considered when choosing a version include application criticality, budgeting, and technical skills. There is no perfect option, only the most suitable option, and you need to choose carefully according to the specific situation.