Code Monkey home page Code Monkey logo

ghostbirdos's Introduction

Home Page Ghost Bird Operating System Project

Copyright 2014-2017 Ghost Bird Operating System Project Developers. All rights reserved.

A lightweight, multi-tasking graphical operating system, JUST FOR FUN!

If you want to have a try, click here: "How to run".

Former Ghostbird OS: Old version NOTE:All of the following mentioned Ghost Bird OS is the abbreviation of Ghost Bird Opreating System Project. For further information about the old version, please click here.

How To

How to run

How to create a unique OS by ourselves?

How to develop OS with us?

How to obtain information through documentation, standards, and protocols

How to develop high quality projects

More

About the Previous version

Function we need to do

Function we have done

License

All of the Ghost Bird OS sources are governed by the terms of the BSD 2-clause "Simplified" License.

ghostbirdos's People

Contributors

amazingrise avatar mourinaruto avatar truehuwenjie avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

ghostbirdos's Issues

loader下的boot里的Makefile不能自动依赖了

在以往的测试中,我们发现GNU GCC的ld工具有一个特点:链接时目标文件的顺序影响了各个文件中的section部分在生成文件中的位置,即使在使用-e参数指定入口地址的情况下。我们通常的做法,是将_start写在一个文件的最前面,这个文件在ld命令的最前面,例如/loader/boot/boota.asm:
image

该文件生成的.o文件在Makefile中ld命令下的排序:
$(LD) $(LDFLAGS) -o $@ -Ttext 0x11000 $(OBJS),而OBJS为
OBJS := ./boota.o ./MMU.o ./bootc.o ./VI.o ./fs.o ./storage.o \ ./lib/string.o ./lib/font.o ./lib/vsprintf.o ./lib/mem.o

这种做法是可行的。但在kernel和gfr都用上了自动寻找源代码文件的今天,我们也需要在boot中使用上这一功能,但自动寻找源代码是不能保证boota.asm这样带有_start入口的汇编文件所对应的boota.o排在OBJS里的首位,因此loader的setup部分就无法跳转到boot部分的入口,引导程序就失败了。

Loader中的VI性能问题

一般来说,在Loader中我们不用频繁且大量的信息输出。但有些时候,当有大量信息需要频繁刷新的时候,效率总是那么不尽如人意。

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.