According to this system calls table, linux system calls are different across architecture, but IMO syscalls are higher level encapsulation which do not depent on any specific architechture. Why is it designed this way?
In a specific case, riscv64 linux doesn't have mkdir, instead it has mkdirat, but weirdly it doesn't have rmdir or rmdirat, how could it implement /bin/rmdir without rmdir, even if it could (via other syscalls like read and write), why not do the same for mkdir? It's really confusing that these two syscalls don't match.