Yes, but "modern" OS'es have heavy processes, in other words they save registers, stack pointers, other process related things and restore them on every process switch.
I'm not sure what makes real difference to Erlang's processes here, I hope someone can explain this with more details.