Giter VIP home page Giter VIP logo

ucore's People

Contributors

archstacker avatar chyyuu avatar chyyuu-tsinghua-cs avatar eternalnight avatar kiukotsu avatar uuyych avatar xxzc avatar yuantailing avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ucore's Issues

about mac env

执行brew tap altkatz/homebrew-gcc_cross_compilers报错,请问有解决方法吗

windows下qemu -S选项时不能正常工作

windows环境包中,qemu加上-S选项后显示Guest has not initialized the display (yet)。
而不加-S选项时是可以正常工作的,但是gdb也连不上。在visualbox虚拟机上则完全没有问题。所以基本判断就是qemu版本问题,无论哪种选项都是gdb连不起来。
我这边试了官网20210415这个版本,显示Guest has not initialized the display (yet)后,gdb能连上,并且continue以后能正常调试。qemu 2022最近发布的版本则不行,估计是刚发布还不够稳定。

Linker script for Kernel can be modified to be more compatible.

gcc --version
gcc (Ubuntu 9.4.0-1ubuntu1~20.04.1) 9.4.0

My build of ucore kernel won't start properly and enters a reboot cycle. I compared my build with a working build and found that the GDT Descriptor that's used in pmm_init() is replaced with zero value when memset(edata, 0, end - edata) is performed.

Disassembly shows that the pmm.o has the GDT Descriptor in section .data.rel.local rather than .data.
After linking, this address is put after .data section in Kernel. This means that the edata symbol defining the end of the .data section will appear before the GDT Descriptor.

//linker script producing the issue
.data : {
    *(.data)
}
PROVIDE(edata = .);

Modify the linker script and make all data type section before edata symble will fix the issue and the kernel will run fine.

//modified linker script
.data : {
    *(.data.*)
}
PROVIDE(edata = .);

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.