flâneur — a map of the web's best reading

User threads | CS 162 Project 2

cs162.org · 520 words · saved by 1 readers

Pintos is a multithreaded kernel (i.e. there can be more than one thread running in the kernel). While working on Project User Programs, you have no doubt worked with the threading interface in the kernel. In threads/thread.c, thread_create allows us to create a new kernel thread that runs a specific kernel task. Analogously, the thread_exit function allows a thread to terminate itself. You should read and understand the kernel threading model. On the other hand, as it were in Project User Programs, each user process only had one thread of control. In other words, it is impossible for a user program to create a new thread to run another user function. There was no analog of thread_create and thread_exit for user programs. In a real system, user programs can indeed create their own threads. We saw this via the POSIX pthread library. For this task, you will need to implement a simplified version of the pthread library in lib/user/pthread.h. User programs should be allowed to create their

User threads | CS 162 Project 2 Skip to main content Menu Expand (external link) Document Search Copy Copied CS 162 Project 2 User threads Pintos is a multithreaded kernel (i.e. there can be more than one thread running in the kernel). While working on Project User Programs, you have no doubt worked with the threading interface in the kernel. In threads/thread.c , thread_create allows us to create a new kernel thread that runs a specific kernel task. Analogously, the thread_exit function allows a thread to terminate itself. You should read and understand the kernel threading model. On the othe

Explore this link on the map →

related reading