Autor Thema: typedefs für paddr_t und vaddr_t  (Gelesen 11061 mal)

Tectu

  • Beiträge: 4
    • Profil anzeigen
Gespeichert
« am: 14. November 2013, 00:06 »
Aus der source vom tyndur kernel:
typedef uint64_t uintptr_t;

typedef uintptr_t paddr_t;
typedef void*      vaddr_t;
Wie kommts dass vaddr_t ein Pointer ist und paddr_t nicht? Was steckt dahinter?


~ Tectu

kevin

  • Administrator
  • Beiträge: 2 767
    • Profil anzeigen
Gespeichert
« Antwort #1 am: 14. November 2013, 09:17 »
Eine physische Adresse zu dereferenzieren ist falsch, weil ja Paging immer an ist. Deswegen ist es besser, wenn man das gar nicht erst kann, sondern einem der Compiler auf die Finger haut, wenn man es versucht.
Thou shalt not follow the NULL pointer, for chaos and madness await thee at its end.

 

Einloggen