3 ms·
Pretty interesting. They use nil pointers everywhere, but also mention a NULL pointer: pc/ether82557.c: NullPointer = 0xFFFFFFFF, /* 82557 N
by senozhatsky 8y ago
Pretty interesting.
They use nil pointers everywhere, but also mention a NULL pointer:
pc/ether82557.c: NullPointer = 0xFFFFFFFF, /* 82557 NULL pointer */
Or qget():
/*
* get next block from a queue, return null if nothing there
*/
if(b == nil){
q->state |= Qstarve;
iunlock(q);
return nil;
}
So null and nil pointers.
It was always interesting to me; there were null-terminated strings and null-bytes [0], but nil pointers.
And then, occasionally, null and NULL pointers.
[0] https://www.unix.com/man-page/plan9/2/strcat/ https://www.unix.com/man-page/plan9/2/strcat/
-ss
- projektfu 8y agoThe all-ones Null Pointer are part of the software interface of the 82557 ethernet controller. https://www.intel.com/content/dam/doc/manual/8255x-10-100-mbps-ethernet-controller-software-dev-manual.pdf https://www.intel.com/content/dam/doc/manual/8255x-10-100-mb...