guanjinquan 2224c93ea9
完善libc,构建了OS-specific工具链,编译了基于gcc-11.3.0的DragonOS userland compiler,移植了mpfr,gmp,mpc库 (#134)
* 修改include路径

* 添加了创建libsysapi.a和/bin/sysroot/usr/include/+lib/的代码

* 修补.gitignore

* 删除多余项

* 优化脚本可读性

* 新增crt0 crti crtn

* 编译binutils所需的东西

* fflush()和fprintf()的简单实现

* 应用程序启动前,调用初始化libc的函数

* 自动创建sysroot

* 添加了stderr的初始化

* 修改了stderr的初始化

* 内核添加对stdio的简略处理

* 格式化代码

* 修正打开stdio文件描述符的问题

* bugfix: 修复fprintf忘记释放buf的问题

* 修复shell错误地把入口设置为main而不是_start的问题

* 新增__cxa_atexit  (gcc要求libc提供这个)

* 增加putchar puts

* 更新写入磁盘镜像的脚本,默认无参数时,使用legacy方式安装

* 更新编译脚本

* stdio增加eof的定义

* 新增extern cplusplus

* mpfr gmp mpc 构建脚本

* 更新libsysapi.a为libc.a

* 加上ferror fopen fclose

* 更新移植的软件的构建脚本

* 更改build_gcc_toolchain.sh中的-save参数名为-save-cache

Co-authored-by: longjin <longjin@RinGoTek.cn>
2023-01-06 21:29:23 +08:00
2022-12-23 18:11:47 +08:00
2023-01-03 21:01:56 +08:00
2023-01-03 23:09:25 +08:00
2022-08-31 18:03:58 +08:00
2022-01-16 22:58:21 +08:00
2022-12-17 19:51:08 +08:00
2022-12-17 19:51:08 +08:00

DragonOS

Languages 中文|English

 

This project is a operating system running on computer which is in X86_ 64 Architecture . The DragonOS is currently under development!

All you want to know about DragonOS is here - DragonOS

Websites

How to run?

The steps to run DragonOS are very simple. You can refer to the following materials to run DragonOS in the shortest 15 minutes!

DragonOS' Features

See documentation:Features

How to join DragonOS ?

If you are willing to join us, you can check the project panel of GitHub warehouse, select the recently planned functions, and improve them.

Or, you can also bring your ideas and ideas, discuss with the community partners, and create some new functions for dragonos.

How to come in contact with the community?

You can send me an email. My email address is[ longjin@RinGoTek.cn ](mailto: longjin@RinGoTek.cn )。

Or join our development exchange QQ group: 115763565

For the discussion of formal issues, we suggest that they be discussed in the forum BBS.Dragonos.org In the corresponding section of the, use formal language to post for discussion. Or ask questions under the issue of the warehouse.

While posting, you can forward the post to the communication QQ group, which can make the communication of problems more efficient and facilitate the archiving of problems.

List of contributors

Contributors to fslongjin/DragonOS · GitHub

Contact with me

Emaillongjin@RinGoTek.cn

Community Contact Email: contact@DragonOS.org

Bloglongjin666.cn

Reward

DragonOS is an open source public welfare project, but its development cannot be separated from the support of funds. If you want, you can visit Sponsor - DragonOS, so as to promote the development of this project. The list of all sponsors will be published. Every bit of your sponsorship will contribute to the development of DragonOS!

Where will the sponsorship funds be used?

We guarantee that all sponsorship funds and items will be used for:

  • Subsidies or equipment support for active community developers
  • Cloud service expenditure of DragonOS
  • Equipment purchase
  • Any use conducive to the development and construction of DragonOS

Sponsor List

Not yet

We hope that in the future, some enterprises can sponsor DragonOS and inject financial power into its development!

Individual Sponsor List

Open source statement

This project adopts GPLv2 LICENSE for open source. You are welcome to use the code of this project on the basis of abiding by the open source license!

What we support: using this project to create greater value and contribute code to this project under the condition of abiding by the agreement.

What we condemn: any non-compliance with the open source license. Including but not limited to: plagiarizing the code of the project as your graduation project and other academic misconduct, as well as commercial closed source use without payment.

If you find any violation of the open source license, we welcome you to send email feedback! Let's build an honest open source community together!

References

This project refers to the following materials. I sincerely give my thanks to the authors of these projects, books and documents!

Description
DragonOS is an operating system developed from scratch using Rust, with Linux compatibility. It is designed for **Serverless** scenarios. 使用Rust从0自研内核,具有Linux兼容性的操作系统,面向云计算Serverless场景而设计。
https://dragonos.org/ Readme GPL-2.0 168 MiB
Languages
Rust 95.5%
C 1.6%
Shell 1%
Makefile 0.9%
Assembly 0.7%
Other 0.3%