Skip to content

Commit c850031

Browse files
Update README.md
1 parent d983d67 commit c850031

File tree

1 file changed

+36
-0
lines changed

1 file changed

+36
-0
lines changed

README.md

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,37 @@
11
# project2_HDH
2+
- [Bài 1. Đồng bộ giữa các tiểu trình ]()
3+
- [Bài 2. Đồng bộ giữa các tiểu trình và tiến trình]()
4+
5+
- [2.1 Đông bộ các tiểu trình]()
6+
- [2.2 Đông bộ các tiến trình]()
7+
- [Bài 3. Đồng bộ số lượng giữa các tiểu trình ]()
8+
- [Tham khảo]()
9+
10+
- [Thread in C]()
11+
- [Mulitithread in C](https://www.geeksforgeeks.org/multithreading-c-2/)
12+
- [Semaphore in C]()
13+
14+
15+
## Bài 1 Đồng bộ giữa các tiểu trình
16+
sem_t mutex: đồng bộ `Độc quyền truy xuất ` với value = 1
17+
## Bài 2 Đồng bộ giữa các tiểu trình và tiến trình
18+
sem_t *sem1, *sem2: đồng bộ `Độc quyền truy xuất` giữa 2 tiểu trình
19+
```
20+
*sem1: sau khi A1 chạy xong --> A1 sẽ up (value) --> B2 lúc này mới chạy
21+
*sem2: sau khi B1 chạy xong --> B1 sẽ up (value) --> A2 lúc này mới được chạy
22+
```
23+
## Bài 3 Đồng bộ số lượng giữa các tiểu trình
24+
Trong bài này sẽ có 5 sem
25+
sem_t sem1, sem2, sem3, sem4 và sem_t mutex
26+
27+
```
28+
sem1: điều phối hẹn hò giữa 2H -> 1H20 --> Sau khi 2 H chạy thì H20 mới được chạy
29+
sem2: điều phối hẹn hò giữa 1O -> 1H20 --> Sau khi O chạy thì H20 mới được chạy
30+
sem3: điều phối hẹn hò giữa 1H20 -> 1O --> sau khi H20 chạy thì O mới được chạy ( Trong lần đầu chạy thì O không phải đợi vì value initial = 1 )
31+
sem4: điều phối hẹn hò giữa 1H20 -> 2H --> sau khi H20 chạy thì 2H mới được chạy ( Trong lần đầu chạy thì H không phải đợi vì value initial = 2 )
32+
mutex: điều phối truy xuất độc quyền giữa các thread H2O
33+
```
34+
## Tham khảo
35+
https://www.geeksforgeeks.org/thread-functions-in-c-c/
36+
https://www.geeksforgeeks.org/multithreading-c-2/
37+
https://www.geeksforgeeks.org/use-posix-semaphores-c/

0 commit comments

Comments
 (0)