1. Evaluating locks critical sectiond에 여러 스레드기 들어가지 않도록 조심해야한다. lock이 풀리면 모든 스레드가 그것을 얻을 공평한 기회를 얻어야한다. 즉 굶는 스레스다 있으면 안된다. 또, lock으로 인해 over head가 일어나서도 안된다. 이 방법은 lock 하면 interrupt를 막고 unlock 하면 interrupt를 받아드리는 방법이다. 이 방법은 단점이 많다. - interrupt를 막고 받고 하려면 권한이 있어야한다 - 멀티 프로세스 환경에서는 통하지 않는다. (interrupt) 2. Spin locks typedef struct __lock_t { int flag; } lock_t; //구조체 선언 void init(lock_t *mutex) {..