| ▲ | inkyoto 3 days ago | |||||||
Meet TIMI – the Technology Independent Machine Interface of IBM's i Series (nèe AS/400), which defines pointers as 128-bit values[0], which is a 1980's design. It has allowed the AS/400 to have a single-level store, which means that «memory» and «disk» live in one conceptual address space. A pointer can carry more than just an address – object identity, type, authority metadata – AS/400 uses tagged 16-byte pointers to stop arbitrary pointer fabrication, which supports isolation without relying on the usual per-process address-space model in the same way UNIX does. Such «fat pointer» approach is conceptually close to modern capability systems (for example CHERI’s 128-bit capabilities), which exist for similar [safety] reasons. [0] 128-bit pointers in the machine interface, not a 128-bit hardware virtual address space though. | ||||||||
| ▲ | agumonkey 3 days ago | parent [-] | |||||||
is this still used in IBM hardware ? | ||||||||
| ||||||||