Rules of OSDev: Difference between revisions

From OSDev.wiki
Jump to navigation Jump to search
[unchecked revision][unchecked revision]
Content added Content deleted
m (Remove kind of annoying period at the end)
(Add yet another rule.)
 
(13 intermediate revisions by 9 users not shown)
Line 6: Line 6:
* Rule of osdev #fbf89521-21f1-4a52-b5cb-a0bf0f761bb4: probably avoid collisions with globally unique identifiers - sortie
* Rule of osdev #fbf89521-21f1-4a52-b5cb-a0bf0f761bb4: probably avoid collisions with globally unique identifiers - sortie
* Rule of osdev #1985: Never try to build a GUI ontop of your DOS - bellezzasolo
* Rule of osdev #1985: Never try to build a GUI ontop of your DOS - bellezzasolo
* Rule of osdev #1986: Always ignore rules and limitations, they "probably" won't hurt you later on. - ''Killaship'' (see rule #1985)
* Rule of osdev #0xB8000: Don't do arithmetic on video pointers. - ''m712''
* Rule of osdev #0xB8000: Don't do arithmetic on video pointers. - ''m712''
* Rule of osdev #4200: Always follow rule 0xB8000 instead of learning it the hard way - ''Killaship''
* Rule of osdev #0xdeadbeef: If you think something is done for you, its not. - moondeck
* Rule of osdev #0xdeadbeef: If you think something is done for you, its not. - moondeck
* Rule of osdev #0xF00F: Don't trust Intel, always check that cr1 access causes #UD. - ''aristos''
* Rule of osdev #0xF00F: Don't trust Intel, always check that cr1 access causes #UD. - ''aristos''
* Rule of osdev #(uint32_t)&kernel_sbrk: Do not negative-kernel-sbrk past your implementation of kernel-sbrk - ''franchufranchu''
* Rule of osdev #(uint32_t)&kernel_sbrk: Do not negative-kernel-sbrk past your implementation of kernel-sbrk - ''franchufranchu''
* Rule of osdev #0xC10000000: Do not put something big on BSS before your full kernel is mapped (#PF here we come) - ''nexos''
* Rule of osdev #0xC10000000: Do not put something big on BSS before your full kernel is mapped (#PF here we come) - ''nexos''
* Rule of osdev #1984: Always use the superior boot protocol [[Stivale]], instead of your 32-bit mentally deranged [[Multiboot]] - ''sebastian''
* Rule of osdev #0x1000: Never use any other bootloader than [[Limine]] - ''ilobilo''
* Rule of osdev #0x1000: Never use any other bootloader than [[Limine]] - ''ilobilo''
* Rule of osdev #995: If you write mouse driver first time, cursor is going to all directions, but not the one you want to - Klakap
* Rule of osdev #1: If you will stuck, do not worry, in future you will stuck again - Klakap
* Rule of osdev #148: Q:How to make yourselve crazy in most efficent way? A:Write 100000 lines of assembly program without comments and read it again - Klakap
* Rule of osdev #0xdeadbeef: Use [[UEFI]] - ''Moldytzu''
* Rule of osdev #1: according to lots of sources, a bootloader-os costs 100$ dollars and everybody is willing to pay for it
* Rule of osdev #0xffffffff80000000: On x86, get as far away from 32-bit mode as possible, as soon as possible. - ''dbstream''
* Rule of osdev #1981: real programmers use assembly language - ''lukflug''
* Rule of osdev #0xdeadc0de: If you hold a strong belief that your code is correct, it is probably not correct. On the other hand, the more doubt you have in your code, the better your code probably is. - ''dbstream''
* ''Add your rules here - name''
* ''Add your rules here - name''

Latest revision as of 16:22, 27 October 2023

This page is a work of humor.
It is not meant to be serious.
  • Rule of osdev #1469: never assume memory is zero'd - moondeck
  • Rule of osdev #1468: never assume indices are sequential - mniip
  • Rule of osdev #1470: don't divide when you can shift - glauxosdever
  • Rule of osdev #fbf89521-21f1-4a52-b5cb-a0bf0f761bb4: probably avoid collisions with globally unique identifiers - sortie
  • Rule of osdev #1985: Never try to build a GUI ontop of your DOS - bellezzasolo
  • Rule of osdev #1986: Always ignore rules and limitations, they "probably" won't hurt you later on. - Killaship (see rule #1985)
  • Rule of osdev #0xB8000: Don't do arithmetic on video pointers. - m712
  • Rule of osdev #4200: Always follow rule 0xB8000 instead of learning it the hard way - Killaship
  • Rule of osdev #0xdeadbeef: If you think something is done for you, its not. - moondeck
  • Rule of osdev #0xF00F: Don't trust Intel, always check that cr1 access causes #UD. - aristos
  • Rule of osdev #(uint32_t)&kernel_sbrk: Do not negative-kernel-sbrk past your implementation of kernel-sbrk - franchufranchu
  • Rule of osdev #0xC10000000: Do not put something big on BSS before your full kernel is mapped (#PF here we come) - nexos
  • Rule of osdev #0x1000: Never use any other bootloader than Limine - ilobilo
  • Rule of osdev #995: If you write mouse driver first time, cursor is going to all directions, but not the one you want to - Klakap
  • Rule of osdev #1: If you will stuck, do not worry, in future you will stuck again - Klakap
  • Rule of osdev #148: Q:How to make yourselve crazy in most efficent way? A:Write 100000 lines of assembly program without comments and read it again - Klakap
  • Rule of osdev #0xdeadbeef: Use UEFI - Moldytzu
  • Rule of osdev #1: according to lots of sources, a bootloader-os costs 100$ dollars and everybody is willing to pay for it
  • Rule of osdev #0xffffffff80000000: On x86, get as far away from 32-bit mode as possible, as soon as possible. - dbstream
  • Rule of osdev #1981: real programmers use assembly language - lukflug
  • Rule of osdev #0xdeadc0de: If you hold a strong belief that your code is correct, it is probably not correct. On the other hand, the more doubt you have in your code, the better your code probably is. - dbstream
  • Add your rules here - name