OS-多线程

Thread

例子:实现一个file server
1、multi-thread(这里thread是指的kernel thread, blocking system call)
2、single-thread (blocking system call)
3、有限状态机(non-blocking system call)
  • user-level vs kernel-level

    user-level是使用的语言实现的线程库,底层还得调用kernel level的线程
    基于不同的映射关系有lwp等等概念出现
    kernel-level的线程,同一个进程的线程a阻塞了,那么b可以被调用。不会
    阻塞整个进程

  • blocking vs non-blocking system call
OS-多线程_第1张图片
sync_async.png

你可能感兴趣的:(OS-多线程)