diff options
Diffstat (limited to 'results/classifier/118/i386/1159')
| -rw-r--r-- | results/classifier/118/i386/1159 | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/results/classifier/118/i386/1159 b/results/classifier/118/i386/1159 new file mode 100644 index 00000000..70500cd6d --- /dev/null +++ b/results/classifier/118/i386/1159 @@ -0,0 +1,62 @@ +i386: 0.928 +graphic: 0.826 +device: 0.655 +boot: 0.611 +x86: 0.606 +PID: 0.506 +vnc: 0.502 +socket: 0.497 +kernel: 0.482 +files: 0.465 +debug: 0.464 +network: 0.456 +register: 0.428 +ppc: 0.390 +permissions: 0.343 +risc-v: 0.319 +performance: 0.284 +architecture: 0.283 +semantic: 0.281 +VMM: 0.274 +arm: 0.269 +assembly: 0.268 +hypervisor: 0.267 +TCG: 0.242 +user-level: 0.206 +KVM: 0.206 +peripherals: 0.181 +mistranslation: 0.127 +virtual: 0.127 + +Strange invalid access errors for very basic OS +Description of problem: +Currently I'm studying OS development. I found numerous guides on that topic, however [this one](https://github.com/cfenollosa/os-tutorial/tree/master/01-bootsector-barebones) is most close to what I have been doing. +When `.bin` file is launched with `-d guest_errors` flag, before any OS output exactly 512 error messages appear in logs, that look like that: +``` +Invalid access at addr 0xFEBB0000, size 1, region '(null)', reason: rejected +Invalid access at addr 0x0, size 1, region '(null)', reason: rejected +Invalid access at addr 0xFEBB0001, size 1, region '(null)', reason: rejected +Invalid access at addr 0x1, size 1, region '(null)', reason: rejected +Invalid access at addr 0xFEBB0002, size 1, region '(null)', reason: rejected +... +and it goes up to +... +Invalid access at addr 0xFEBB00FE, size 1, region '(null)', reason: rejected +Invalid access at addr 0xFE, size 1, region '(null)', reason: rejected +Invalid access at addr 0xFEBB00FF, size 1, region '(null)', reason: rejected +Invalid access at addr 0xFF, size 1, region '(null)', reason: rejected +``` +Apparently, the OS boots normally after that. Should I be concerned about these messages or Should I just ignore them? +That looks strange and confusing, not a piece of my code calls these addresses. Maybe I'm doing something wrong? +Steps to reproduce: +1. Install `nasm` compiler (nasm package for apt) +2. Create a file named `os.asm` with exactly four lines: +```asm +loop: + jmp loop +times 510-($-$$) db 0 +dw 0xaa55 +``` +3. Build it with `nasm -f bin os.asm -o os.bin` +4. Run it with `qemu-system-i386 -d guest_errors -drive format=raw,file=./os.bin` +5. ...enjoy error messages. |