进程调度算法有哪些类型,哪些算法会导致饥饿?