kiukotsu / ucore Goto Github PK
View Code? Open in Web Editor NEW清华大学操作系统课程实验 (OS Kernel Labs)
License: GNU General Public License v2.0
清华大学操作系统课程实验 (OS Kernel Labs)
License: GNU General Public License v2.0
执行brew tap altkatz/homebrew-gcc_cross_compilers报错,请问有解决方法吗
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最近发布的版本则不行,估计是刚发布还不够稳定。
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 = .);
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.