64bit-os-tutorial
fasmg
Our great sponsors
64bit-os-tutorial | fasmg | |
---|---|---|
4 | 2 | |
132 | 190 | |
- | - | |
0.0 | 7.1 | |
over 2 years ago | about 1 month ago | |
Assembly | Assembly | |
MIT License | - |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
64bit-os-tutorial
-
How do I set up a C++ kernel with clang/LLVM ?
So I have been following this tutorial on writing a 64-bit OS from scratch. At this point, they show how to build and link to a basic C kernel, which is all good, but I would rather write it in C++. However, after trying to modify the makefile to compile C++ files (by changing the compiler to clang++ and changing all the .c to .cpp), as well as putting extern "C" in front of the main() function , I get an error from ld saying ld.lld: error: undefined symbol: main. I understand that there are things lacking in my build process, but I can't find which ones; is it some flags I am missing, or a more involved set of build commands ? I really would like to stick to clang/LLVM, if possible, rather than cross-compiling with GCC.
-
Operating System Development: Where to Start?
I found this github repo very helpful, it is a basic x86_64 bootloader and a simple main function. I liked it because it is just something working that get's you going, it's also very good documented and from there you can start adding your own things.
-
Added VGA driver to my kernel.
I’ve already made a tutorial you can follow here: https://github.com/gmarino2048/64bit-os-tutorial. I’m still in the process of updating it and would appreciate any feedback.
fasmg
-
Alignment
In fasmg it's as simple as
- Flat Assembler G
What are some alternatives?
os-tutorial - How to create an OS from scratch
asmjit - Low-latency machine code generation
arm64-examples - Arm64 / C examples
Reverse-Engineering-Tutorial - A FREE comprehensive reverse engineering tutorial covering x86, x64, 32-bit ARM & 64-bit ARM architectures.
Cyjon - A simple, clean code, multi-tasking kernel written in pure Assembly language for 64-bit processors from the AMD64 family.
0x01-ARM-32-Hacking-Hello-World - ARM 32-bit Raspberry Pi Hacking Hello World example in Kali Linux.
SynapseOS - Синапс ОС (SynapseOS) - российская микроядерная операционная система.
first_nes - Create your own games for the Nintendo Entertainment System! This "starter" game is easily extensible for your own projects. Includes references.
x86-bare-metal-examples - Dozens of minimal operating systems to learn x86 system programming. Tested on Ubuntu 17.10 host in QEMU 2.10 and real hardware. Userland cheat at: https://github.com/cirosantilli/linux-kernel-module-cheat#userland-assembly ARM baremetal setup at: https://github.com/cirosantilli/linux-kernel-module-cheat#baremetal-setup 学习x86系统编程的数十个最小操作系统。 已在QEMU 2.10中的Ubuntu 17.10主机和真实硬件上进行了测试。 Userland作弊网址:https://github.com/cirosantilli/linux-kernel-module-cheat#userland-assembly ARM裸机安装程序位于:https://github.com/cirosantilli/linux-kernel-module-cheat#baremetal- 设置 21世纪新政宣言(2020年4月5曰笫四次修改稿)(2020年6月19曰第七次修改,以下“【】”内文字为非正文内容的说明)20世纪苏联的消亡和东欧的大变革,使这21世纪初的现中国大陆成为世界关注的最主要焦点和影响新世纪文明发展的关键。特别是大陆这些年对外意识形态渗透,震撼整个世界。美中贸易战实际已打响人类意识形态领域最后的冷战,海峡两岸关系恶化,香港不断的百万人游行,南海邻国关系紧张。大陆经济急速下滑衰退,内外矛盾激化高端深感前所未有的生存危机。包括中共上下在内的几乎所有人都很清楚,大陆已到非政治体制改革而不可的时候了,大变革将是民意世潮下的必然结局。中国大陆内外即全球正合力促成这人口第一大国的大变革,这也为中国开创新政提供了一次最佳机会。综合各政体和各国现实,绝大多数国家改革选择了西方民主政体,但其固有的越来越明显的缺陷已成为有人攻击、拒绝或怀疑的理由。这也是近年来西方国家出现了宽容那必将灭亡的独裁专制政府的左翼当选,是不少选民失去信心的表现和原因。不仅如此,西方现民主制的
qr-asm - Generate a QR code from scratch with only ARM assembly.
toaruos - A completely-from-scratch hobby operating system: bootloader, kernel, drivers, C library, and userspace including a composited graphical UI, dynamic linker, syntax-highlighting text editor, network stack, etc.
PeachPy - x86-64 assembler embedded in Python