>>9
Interactive data like GUIS or network devices that postdate Unix are really where it falls down, hard. Every system in common use gave up on providing a unified model for these; you have to use an API of some sort (Xlib, Berkeley sockets) to talk to them.
Plan 9 ``solves'' the problem by allowing any component (not just the kernel!) to expose itself as a file system. So, for example instead of doing an API call to change the contents of a window you can just open the file that represents its contents and write to it.