UIDs are the basis for accounting, for restricting access to privileged kernel operations, (such as the request used to reboot a running system), for deciding to what processes a signal may be sent, and as a basis for filesystem access and disk-space allocation.
literally no problems at all with any of this except that it's global
This scheme enforces a strict compartmentalization of privileges
the problem here is with privileges being global
Each file has three sets of permission bits
see this is a fucking absurd waste of space and it's because the filesystem has to be ready at all times to fend off attackers