osdev Questions

1

Solved

I am currently following this workbook on build an operating system. My intention is to write a 64-bit kernel. I have got as far as loading the "kernel" code and writing individual characters to t...
Stamford asked 18/4, 2017 at 16:38

25

Solved

Creating an OS seems like a massive project. How would anyone even get started? For example, when I pop Ubuntu into my drive, how can my computer just run it? (This, I guess, is what I'd really li...
Ellerey asked 31/12, 2008 at 18:43

3

Solved

I have been looking at this code and I'm confused about the rep cmpsb line. .LOOP: push cx mov cx, 0x000B ; eleven character name mov si, ImageName ; image name to find push di rep cmpsb ; te...
Risley asked 11/5, 2012 at 13:43

1

Solved

I'm writing a Multiboot compliant ELF executable containing my 32-bit kernel. My primary problem is that I'm receiving a series of linker errors while producing my executable: relocation truncat...
Johan asked 10/1, 2017 at 8:1

3

Solved

I am developing a kernel in C and created something to print on screen on video memory. I expected that the first byte in video memory would be the character to print and the second byte tells the ...
Klong asked 1/10, 2016 at 14:21

1

Solved

In an attempt to write an OS, I need to get the address of the current function's end (right before epilogue) for task switching. Concretely my problem is to get an EIP to assign to my newly create...
Greenhead asked 16/8, 2016 at 21:7

1

Solved

I'm new to operating system development and I'm curious about a problem I've run into while developing my own bootloader. My operating system is going to be written in assembly and will run in 16-b...
Anguiano asked 5/7, 2016 at 5:13

1

Solved

I'm trying to program a very simple kernel for learning purposes. After reading a bunch of articles about the PIC and IRQs in the x86 architecture, I've figured out that IRQ1 is the keyboard handl...
Claxton asked 3/6, 2016 at 15:22

1

Solved

I have been writing kernel in C. I've been using the GCC cross-compiler, writing on a Windows system and targeting 16bit Real Mode. I don't have the C library available to write the kernel. I have ...
Genitals asked 20/5, 2016 at 19:45

2

Solved

I am learning Operating system tutorials. I created 2 files. boot.asm kernel.c The kernel.c is as follows : int main() { char *src = (char *)0xB8000000L; *src = 'M'; src += 2; *src = 'D';...
Phlebitis asked 20/5, 2016 at 10:40

1

Solved

When I test the GCC inline-assembly, I use the test function to display a character on the screen with the BOCHS emulator. This code is running in 32-bit protected mode. The code is as follows: te...
Hollar asked 16/5, 2016 at 14:36

1

My experimental code crashes when running on bare x86_64-metal (page fault when IDT is not yet set), but works perfectly on aarch64. By careful tracing I figured out that the cause of this page fa...
Thies asked 6/8, 2015 at 18:25

1

Technically UEFI provides a lot of functionality which is part of the groundwork of an operating system, such as a file system. In a way, it is a shame that everything gets discarded and reim...
Dissociable asked 19/4, 2016 at 10:35

1

Solved

I am learning the assembly language. I wrote a simple bootloader. After testing it out, it didn't work. Here is my code: [bits 16] [org 0x7c00] jmp start data: wolf_wel_msg db 'Welcome to Bootlo...
Guayule asked 16/3, 2016 at 19:0

20

Solved

This might be in vain, as I know writing an operating system is unbearably complicated (especially by oneself). I don't expect to build the next linux, or windows. I know it will be horribl...
Catoptrics asked 3/8, 2009 at 21:1

2

Solved

Recently, I started developing an operating system in NASM and C. I have already made a boot loader, kernel, filesystem, etc. So far I used the VGA text mode directly in order to write to the addre...
Invisible asked 17/1, 2016 at 21:39

1

Solved

I am trying to develop an operating system. The design is this: I have a bootloader loaded at 0x7c00 which loads the second stage and jumps to it at 0x7e00. The second stage is also in real mode an...
Coset asked 6/1, 2016 at 15:16

2

Solved

I wrote some code for initializing the IDT, which stores 32-bit addresses in two non-adjacent 16-bit halves. The IDT can be stored anywhere, and you tell the CPU where by running the LIDT instructi...
Centipoise asked 11/7, 2015 at 19:20

1

Solved

I tried to develop a bootloader using this, but when it is run it shows: disk read error! If I ignore it, in a later part, it shows me wrong memory mapping. I also followed some other sources to...
Threw asked 11/12, 2015 at 5:45

2

Solved

I am trying to convert a bootloader I wrote in Assembly Language to an ISO image file. The following is the code from MikeOS bootloader. Here is my bootloader code: BITS 16 start: mov ax, 07C0h ...
Smasher asked 14/12, 2015 at 13:41

1

Solved

I'm writing a simple home-made 64-bit OS, booting it via UEFI. This means that when my code starts executing, it is already in long mode, with paging enabled. Now, after exiting the UEFI boot serv...
Typewrite asked 14/12, 2015 at 10:31

1

Solved

I'm trying to follow the instructions here to build a simple OS kernel: http://mikeos.sourceforge.net/write-your-own-os.html Except, instead of booting from a floppy, I want to create a grub-based...
Kukri asked 2/11, 2015 at 22:28

3

Solved

I'm working on keyboard input for a very basic kernel that I'm developing and I'm completely stuck. I can't seem to find any information online that can show me the information I need to know. My ...
Psychosurgery asked 20/10, 2008 at 16:48

1

Solved

I have read about cache-as-ram mode (no-fill mode) numerous times and am wondering whether number one, can executable code be written and jumped to and if so is the executable code restricted to ha...
Tav asked 30/12, 2014 at 3:19

1

When I write a simple code for bare metal without using libcore I get the following error: error: binary operation != cannot be applied to type u32 [E0369] Straight forward implementation conf...
Actable asked 1/8, 2015 at 11:8

© 2022 - 2024 — McMap. All rights reserved.