SlideShare a Scribd company logo

ĐỒ ÁN MÔN HỌC HỆ THỐNG NHÚNG MẠNG KHÔNG DÂY - Contiki OSreport.pdf

Man_Ebook
Man_Ebook

ĐỒ ÁN MÔN HỌC HỆ THỐNG NHÚNG MẠNG KHÔNG DÂY - Contiki OSreport

1 of 28
Download to read offline
ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA MẠNG MÁY TÍNH VÀ TRUYỀN THÔNG
ĐỒ ÁN MÔN HỌC
HỆ THỐNG NHÚNG MẠNG KHÔNG DÂY
Giảng viên hướng dẫn: Đặng Lê Bảo Chương
Lớp: NT131.M12.MMCL.EN
Thành viên:
Đỗ Phương Thảo - 18521420
Võ Duy Phúc – 19522046
Nguyễn Minh Thọ - 19522293
Năm học : 2021-2022
ĐỒ ÁN MÔN HỌC HỆ THỐNG NHÚNG MẠNG KHÔNG DÂY - Contiki OSreport.pdf
MỤC LỤC
Chương 1. TỔNG QUAN VỀ HỆ ĐIỀU HÀNH CONTIKI...................................4
1.1. Giới thiệu.....................................................................................................4
1.2. Hệ điều hành Contiki...................................................................................5
1.3. Lịch sử phát triển của Contiki......................................................................6
1.4. Tại sao sử dụng Contiki..............................................................................7
Chương 2. CÁC TÍNH NĂNG CỦA CONTIKI OS...............................................8
2.1. Các tính năng của Contiki OS......................................................................8
Chương 3. CẤU TRÚC HỆ ĐIỀU HÀNH CONTIKI...........................................10
3.1. Cấu trúc hệ điều hành Contiki......................................................................9
3.2. Kiến trúc phân lớp hệ điều hành Contiki....................................................11
3.3. Ngăn xếp truyền thông trong hệ điều hành Contiki....................................12
3.4. Protothread.................................................................................................16
3.5. Protothread in processes.............................................................................17
3.6. Một số thư viện trong Contiki OS..............................................................18
Chương 4. SO SÁNH VỚI TINY OS...................................................................22
Chương 5. DEMO.................................................................................................24
5.1. Giới thiệu về công cụ mô phỏng Cooja......................................................24
3
Chương 1: Tổng quan về hệ điều hành Contiki
1.Giới thiệu
Các đối tượng thông minh là các thiết bị đơn giản, nhỏ gọn, giá thành
thấp, sử dụng nguồn năng lượng hạn chế. Một trong những đặc điểm nổi bật
của nút mạng các đối tượng thông minh là sự hạn chế về tài nguyên tính toán,
nguồn năng lượng cung cấp và giá thành sản xuất.
Với số lượng dày đặc các nút cảm biến, việc kiểm nghiêm và đánh giá
chính xác hiệu quả hoạt động là một trong những thách thức của mạng cảm
biến không dây trong quá trình triển khai thực tế. Nhằm khắc phục những khó
khăn này, nhiều hướng nghiên cứu đã tập trung vào phát triển những công cụ
mô phỏng cách thức hoạt động các nút trong mạng cảm biến. Trong bài báo
cáo này sẽ trình bày về hệ điều hành Contiki.
4
2.Contiki OS
Contiki là một hệ điều hành mã nguồn mở được thiết kế cho các hệ
thống mạng nhúng nói chung và mạng lưới các thiết bị đo nói riêng. Hệ điều
hành Contiki được phát triển bởi Adam Dunkels đến từ nhóm Embedded
Systems của Viện Khoa học Máy tính Thụy Điển. Nhóm phát triển Contiki
gồm nhiều thành viên đến từ SICS, CISCO, cùng nhiều tổ chức và các trường
đại học khác trên thế giới. Hệ điều hành Contiki được thiết kế cho các vi điều
khiển có bộ nhớ nhỏ, với thông số 2KB RAM và 40KB ROM. Nhờ đó,
Contiki có thể được sử dụng cho các hệ thống nhúng.
Contiki là một hệ điều hành cho các hệ thống mạng, hạn chế bộ nhớ.
Các ứng dụng Contiki bao gồm hệ thống chiếu sáng đường phố, giám sát âm
thanh cho thành phố thông minh, giám sát bức xạ và báo động. Contiki được
phát hành theo giấy phép BSD (Một loại giấy phép cho phép sử dụng độc
quyền và cho phép phần mềm được phát hành theo giấy phép được tích hợp
vào các sản phẩm độc quyền). Hệ điều hành Contiki được lập trình bằng ngôn
5
ngữ C, hoạt động dựa trên cơ chế event-driven và có những đặc điểm phù hợp
với các hệ thống nhúng và mạng cảm biến không dây.
3.Lịch sử phát triển của Contiki
Hình 1: Lịch sử phát triển Contiki
Contiki bắt đầu được nghiên cứu từ năm 2001 và phát hành phiên bản
đầu tiên Contiki 1.0 năm 2003. Phiên bản hiện nay của Contiki là 2.4 với
nhiều thay đổi, bổ sung và phát triển vượt bậc. Nhiều cơ chế, ý tưởng Contiki
đã được ứng dụng rộng rãi trong công nghiệp. Điển hình như mô hình uIP
được phát hành năm 2001 đã được sử dụng trong hệ thống ứng dụng của hàng
trăm công ty trong các lĩnh vực hang hải, thông tin vệ tinh, khai thác dầu mỏ,
…; mô hình Protothread được công bố đầu tiên năm 2005, sử dụng nhiều
trong bộ giải mã kĩ thuật số và thiết bị cảm biến rung không dây.
4. Tại sao sử dụng Contiki?
6

Recommended

More Related Content

What's hot

Báo cáo cuối kỳ - đề tài "nghiên cứu cơ chế routing của cisco mô phỏng trên ...
Báo cáo cuối kỳ  - đề tài "nghiên cứu cơ chế routing của cisco mô phỏng trên ...Báo cáo cuối kỳ  - đề tài "nghiên cứu cơ chế routing của cisco mô phỏng trên ...
Báo cáo cuối kỳ - đề tài "nghiên cứu cơ chế routing của cisco mô phỏng trên ...Đàm Văn Sáng
 
Tìm hiểu và hướng dẫn sử dụng Edmodo
Tìm hiểu và hướng dẫn sử dụng EdmodoTìm hiểu và hướng dẫn sử dụng Edmodo
Tìm hiểu và hướng dẫn sử dụng EdmodoBich Tuyen
 
Mô hình điện toán đám mây
Mô hình điện toán đám mâyMô hình điện toán đám mây
Mô hình điện toán đám mâyPhamTuanKhiem
 
MongoDB.pptx
MongoDB.pptxMongoDB.pptx
MongoDB.pptxDuyThnh28
 
Chapter 3 gsm - part 1
Chapter 3   gsm - part 1Chapter 3   gsm - part 1
Chapter 3 gsm - part 1Đá Tảng
 
Giáo Trình CCNA Full Tiếng Việt
Giáo Trình CCNA Full Tiếng ViệtGiáo Trình CCNA Full Tiếng Việt
Giáo Trình CCNA Full Tiếng ViệtNgoc Hoang
 
Giáo trình mạng máy tính
Giáo trình mạng máy tínhGiáo trình mạng máy tính
Giáo trình mạng máy tínhHoài Phạm
 
Giáo trình mạng máy tính PTIT
Giáo trình mạng máy tính PTITGiáo trình mạng máy tính PTIT
Giáo trình mạng máy tính PTITNguynMinh294
 
Phân tích mã độc cơ bản - báo cáo thực tập
Phân tích mã độc cơ bản - báo cáo thực tậpPhân tích mã độc cơ bản - báo cáo thực tập
Phân tích mã độc cơ bản - báo cáo thực tậpPhạm Trung Đức
 
Mạng máy tính
Mạng máy tínhMạng máy tính
Mạng máy tínhMai Điệp
 
9849ed58 0205-4740-8040-8c6f33761cb3 computernetworkc1
9849ed58 0205-4740-8040-8c6f33761cb3 computernetworkc19849ed58 0205-4740-8040-8c6f33761cb3 computernetworkc1
9849ed58 0205-4740-8040-8c6f33761cb3 computernetworkc1Theduyet Pham
 
Huong dan thi nghiem wireshark
Huong dan thi nghiem wiresharkHuong dan thi nghiem wireshark
Huong dan thi nghiem wiresharkhien tran
 
Ngân hàng đề môn điện tử số kỹ thuật số ( có đáp án) 4797768
Ngân hàng đề môn điện tử số kỹ thuật số ( có đáp án) 4797768Ngân hàng đề môn điện tử số kỹ thuật số ( có đáp án) 4797768
Ngân hàng đề môn điện tử số kỹ thuật số ( có đáp án) 4797768nataliej4
 
Họ vi xử lí 8086 intel
Họ vi xử lí 8086 intelHọ vi xử lí 8086 intel
Họ vi xử lí 8086 inteldark_valley
 

What's hot (20)

Báo cáo cuối kỳ - đề tài "nghiên cứu cơ chế routing của cisco mô phỏng trên ...
Báo cáo cuối kỳ  - đề tài "nghiên cứu cơ chế routing của cisco mô phỏng trên ...Báo cáo cuối kỳ  - đề tài "nghiên cứu cơ chế routing của cisco mô phỏng trên ...
Báo cáo cuối kỳ - đề tài "nghiên cứu cơ chế routing của cisco mô phỏng trên ...
 
17406 bai giang csdl nang cao
17406   bai giang csdl nang cao17406   bai giang csdl nang cao
17406 bai giang csdl nang cao
 
Tìm hiểu và hướng dẫn sử dụng Edmodo
Tìm hiểu và hướng dẫn sử dụng EdmodoTìm hiểu và hướng dẫn sử dụng Edmodo
Tìm hiểu và hướng dẫn sử dụng Edmodo
 
Hệ điều hành windows
Hệ điều hành windowsHệ điều hành windows
Hệ điều hành windows
 
Mô hình điện toán đám mây
Mô hình điện toán đám mâyMô hình điện toán đám mây
Mô hình điện toán đám mây
 
Đề tài: Ứng dụng xử lý ảnh phát hiện ngủ gật dùng Kit Raspberry
Đề tài: Ứng dụng xử lý ảnh phát hiện ngủ gật dùng Kit RaspberryĐề tài: Ứng dụng xử lý ảnh phát hiện ngủ gật dùng Kit Raspberry
Đề tài: Ứng dụng xử lý ảnh phát hiện ngủ gật dùng Kit Raspberry
 
MongoDB.pptx
MongoDB.pptxMongoDB.pptx
MongoDB.pptx
 
Xây Dựng Mạng LAN
Xây Dựng Mạng LANXây Dựng Mạng LAN
Xây Dựng Mạng LAN
 
Chapter 3 gsm - part 1
Chapter 3   gsm - part 1Chapter 3   gsm - part 1
Chapter 3 gsm - part 1
 
Giáo Trình CCNA Full Tiếng Việt
Giáo Trình CCNA Full Tiếng ViệtGiáo Trình CCNA Full Tiếng Việt
Giáo Trình CCNA Full Tiếng Việt
 
Đề tài: Xây dựng ứng dụng game Android đoán lá bài đã chọn
Đề tài: Xây dựng ứng dụng game Android đoán lá bài đã chọnĐề tài: Xây dựng ứng dụng game Android đoán lá bài đã chọn
Đề tài: Xây dựng ứng dụng game Android đoán lá bài đã chọn
 
Giáo trình mạng máy tính
Giáo trình mạng máy tínhGiáo trình mạng máy tính
Giáo trình mạng máy tính
 
Giáo trình mạng máy tính PTIT
Giáo trình mạng máy tính PTITGiáo trình mạng máy tính PTIT
Giáo trình mạng máy tính PTIT
 
Phân tích mã độc cơ bản - báo cáo thực tập
Phân tích mã độc cơ bản - báo cáo thực tậpPhân tích mã độc cơ bản - báo cáo thực tập
Phân tích mã độc cơ bản - báo cáo thực tập
 
Mạng máy tính
Mạng máy tínhMạng máy tính
Mạng máy tính
 
9849ed58 0205-4740-8040-8c6f33761cb3 computernetworkc1
9849ed58 0205-4740-8040-8c6f33761cb3 computernetworkc19849ed58 0205-4740-8040-8c6f33761cb3 computernetworkc1
9849ed58 0205-4740-8040-8c6f33761cb3 computernetworkc1
 
Huong dan thi nghiem wireshark
Huong dan thi nghiem wiresharkHuong dan thi nghiem wireshark
Huong dan thi nghiem wireshark
 
Đề tài: Nghiên cứu hệ thống điều khiển tự động nhà thông minh
Đề tài: Nghiên cứu hệ thống điều khiển tự động nhà thông minhĐề tài: Nghiên cứu hệ thống điều khiển tự động nhà thông minh
Đề tài: Nghiên cứu hệ thống điều khiển tự động nhà thông minh
 
Ngân hàng đề môn điện tử số kỹ thuật số ( có đáp án) 4797768
Ngân hàng đề môn điện tử số kỹ thuật số ( có đáp án) 4797768Ngân hàng đề môn điện tử số kỹ thuật số ( có đáp án) 4797768
Ngân hàng đề môn điện tử số kỹ thuật số ( có đáp án) 4797768
 
Họ vi xử lí 8086 intel
Họ vi xử lí 8086 intelHọ vi xử lí 8086 intel
Họ vi xử lí 8086 intel
 

Similar to ĐỒ ÁN MÔN HỌC HỆ THỐNG NHÚNG MẠNG KHÔNG DÂY - Contiki OSreport.pdf

Embedded linux edited
Embedded linux editedEmbedded linux edited
Embedded linux editedNguyễn Anh
 
Embedded beta2 new
Embedded beta2 newEmbedded beta2 new
Embedded beta2 newNguyễn Anh
 
Tran Minh Thai Bai Giang Vc
Tran Minh Thai   Bai Giang VcTran Minh Thai   Bai Giang Vc
Tran Minh Thai Bai Giang VcNhat Thien
 
Giaotrinh hedieuhanh
Giaotrinh hedieuhanhGiaotrinh hedieuhanh
Giaotrinh hedieuhanhHai Nguyen
 
Bài 2: Hệ điều hành và các ứng dụng mã nguồn mở
Bài 2: Hệ điều hành và các ứng dụng mã nguồn mởBài 2: Hệ điều hành và các ứng dụng mã nguồn mở
Bài 2: Hệ điều hành và các ứng dụng mã nguồn mởMasterCode.vn
 
De-cuong-on-tap-NNMTPC.pdf
De-cuong-on-tap-NNMTPC.pdfDe-cuong-on-tap-NNMTPC.pdf
De-cuong-on-tap-NNMTPC.pdfAnhTVit1
 
Bat dau voi Raspberry Pi (demo)
Bat dau voi Raspberry Pi (demo)Bat dau voi Raspberry Pi (demo)
Bat dau voi Raspberry Pi (demo)Thien Ta
 
TÀI LIỆU ĐÁP ÁN VÀ CÂU HỎI KIỂM TRA, SÁT HẠCH KIẾN THỨC CHUYÊN NGÀNH.Tuyển dụ...
TÀI LIỆU ĐÁP ÁN VÀ CÂU HỎI KIỂM TRA, SÁT HẠCH KIẾN THỨC CHUYÊN NGÀNH.Tuyển dụ...TÀI LIỆU ĐÁP ÁN VÀ CÂU HỎI KIỂM TRA, SÁT HẠCH KIẾN THỨC CHUYÊN NGÀNH.Tuyển dụ...
TÀI LIỆU ĐÁP ÁN VÀ CÂU HỎI KIỂM TRA, SÁT HẠCH KIẾN THỨC CHUYÊN NGÀNH.Tuyển dụ...nataliej4
 
Khoa công nghệ thông tin và truyền thông báo cáo đồ án cơ sở 4đề tài nghiên c...
Khoa công nghệ thông tin và truyền thông báo cáo đồ án cơ sở 4đề tài nghiên c...Khoa công nghệ thông tin và truyền thông báo cáo đồ án cơ sở 4đề tài nghiên c...
Khoa công nghệ thông tin và truyền thông báo cáo đồ án cơ sở 4đề tài nghiên c...jackjohn45
 
ĐỒ ÁN - Cân điện tử sử dụng mạch arduino có kết nối với giao diện máy tính.docx
ĐỒ ÁN - Cân điện tử sử dụng mạch arduino có kết nối với giao diện máy tính.docxĐỒ ÁN - Cân điện tử sử dụng mạch arduino có kết nối với giao diện máy tính.docx
ĐỒ ÁN - Cân điện tử sử dụng mạch arduino có kết nối với giao diện máy tính.docxDịch Vụ Viết Bài Trọn Gói ZALO 0917193864
 
Luận văn xây dựng cổng thông tin điện tử ubnd tỉnh quảng bình bằng wordpress
Luận văn xây dựng cổng thông tin điện tử ubnd tỉnh quảng bình bằng wordpressLuận văn xây dựng cổng thông tin điện tử ubnd tỉnh quảng bình bằng wordpress
Luận văn xây dựng cổng thông tin điện tử ubnd tỉnh quảng bình bằng wordpressnataliej4
 
Thiết kế và chế tạo 8 mô hình thực hành môn vi điều khiển sử dụng vi điều khi...
Thiết kế và chế tạo 8 mô hình thực hành môn vi điều khiển sử dụng vi điều khi...Thiết kế và chế tạo 8 mô hình thực hành môn vi điều khiển sử dụng vi điều khi...
Thiết kế và chế tạo 8 mô hình thực hành môn vi điều khiển sử dụng vi điều khi...Man_Ebook
 
Đỗ Văn Xê: Kinh nghiệm triển khai FOSS ở Đại học Cần Thơ
Đỗ Văn Xê: Kinh nghiệm triển khai FOSS ở Đại học Cần Thơ Đỗ Văn Xê: Kinh nghiệm triển khai FOSS ở Đại học Cần Thơ
Đỗ Văn Xê: Kinh nghiệm triển khai FOSS ở Đại học Cần Thơ Vu Hung Nguyen
 

Similar to ĐỒ ÁN MÔN HỌC HỆ THỐNG NHÚNG MẠNG KHÔNG DÂY - Contiki OSreport.pdf (20)

Embedded linux edited
Embedded linux editedEmbedded linux edited
Embedded linux edited
 
Docker 101
Docker 101Docker 101
Docker 101
 
Embedded beta2 new
Embedded beta2 newEmbedded beta2 new
Embedded beta2 new
 
Tran Minh Thai Bai Giang Vc
Tran Minh Thai   Bai Giang VcTran Minh Thai   Bai Giang Vc
Tran Minh Thai Bai Giang Vc
 
Hệ thống nhúng cho ứng dụng giải trí thời gian thực trên Android
Hệ thống nhúng cho ứng dụng giải trí thời gian thực trên AndroidHệ thống nhúng cho ứng dụng giải trí thời gian thực trên Android
Hệ thống nhúng cho ứng dụng giải trí thời gian thực trên Android
 
Giaotrinh hedieuhanh
Giaotrinh hedieuhanhGiaotrinh hedieuhanh
Giaotrinh hedieuhanh
 
Bài 2: Hệ điều hành và các ứng dụng mã nguồn mở
Bài 2: Hệ điều hành và các ứng dụng mã nguồn mởBài 2: Hệ điều hành và các ứng dụng mã nguồn mở
Bài 2: Hệ điều hành và các ứng dụng mã nguồn mở
 
De-cuong-on-tap-NNMTPC.pdf
De-cuong-on-tap-NNMTPC.pdfDe-cuong-on-tap-NNMTPC.pdf
De-cuong-on-tap-NNMTPC.pdf
 
Bat dau voi Raspberry Pi (demo)
Bat dau voi Raspberry Pi (demo)Bat dau voi Raspberry Pi (demo)
Bat dau voi Raspberry Pi (demo)
 
TÀI LIỆU ĐÁP ÁN VÀ CÂU HỎI KIỂM TRA, SÁT HẠCH KIẾN THỨC CHUYÊN NGÀNH.Tuyển dụ...
TÀI LIỆU ĐÁP ÁN VÀ CÂU HỎI KIỂM TRA, SÁT HẠCH KIẾN THỨC CHUYÊN NGÀNH.Tuyển dụ...TÀI LIỆU ĐÁP ÁN VÀ CÂU HỎI KIỂM TRA, SÁT HẠCH KIẾN THỨC CHUYÊN NGÀNH.Tuyển dụ...
TÀI LIỆU ĐÁP ÁN VÀ CÂU HỎI KIỂM TRA, SÁT HẠCH KIẾN THỨC CHUYÊN NGÀNH.Tuyển dụ...
 
Khoa công nghệ thông tin và truyền thông báo cáo đồ án cơ sở 4đề tài nghiên c...
Khoa công nghệ thông tin và truyền thông báo cáo đồ án cơ sở 4đề tài nghiên c...Khoa công nghệ thông tin và truyền thông báo cáo đồ án cơ sở 4đề tài nghiên c...
Khoa công nghệ thông tin và truyền thông báo cáo đồ án cơ sở 4đề tài nghiên c...
 
ĐỒ ÁN - Cân điện tử sử dụng mạch arduino có kết nối với giao diện máy tính.docx
ĐỒ ÁN - Cân điện tử sử dụng mạch arduino có kết nối với giao diện máy tính.docxĐỒ ÁN - Cân điện tử sử dụng mạch arduino có kết nối với giao diện máy tính.docx
ĐỒ ÁN - Cân điện tử sử dụng mạch arduino có kết nối với giao diện máy tính.docx
 
Phan 1 sv
Phan 1   svPhan 1   sv
Phan 1 sv
 
Luận văn xây dựng cổng thông tin điện tử ubnd tỉnh quảng bình bằng wordpress
Luận văn xây dựng cổng thông tin điện tử ubnd tỉnh quảng bình bằng wordpressLuận văn xây dựng cổng thông tin điện tử ubnd tỉnh quảng bình bằng wordpress
Luận văn xây dựng cổng thông tin điện tử ubnd tỉnh quảng bình bằng wordpress
 
Mhst12 01
Mhst12 01Mhst12 01
Mhst12 01
 
--De cuong on tap hdh
 --De cuong on tap hdh --De cuong on tap hdh
--De cuong on tap hdh
 
Cong nghnet
Cong nghnetCong nghnet
Cong nghnet
 
04 de cuong
04 de cuong04 de cuong
04 de cuong
 
Thiết kế và chế tạo 8 mô hình thực hành môn vi điều khiển sử dụng vi điều khi...
Thiết kế và chế tạo 8 mô hình thực hành môn vi điều khiển sử dụng vi điều khi...Thiết kế và chế tạo 8 mô hình thực hành môn vi điều khiển sử dụng vi điều khi...
Thiết kế và chế tạo 8 mô hình thực hành môn vi điều khiển sử dụng vi điều khi...
 
Đỗ Văn Xê: Kinh nghiệm triển khai FOSS ở Đại học Cần Thơ
Đỗ Văn Xê: Kinh nghiệm triển khai FOSS ở Đại học Cần Thơ Đỗ Văn Xê: Kinh nghiệm triển khai FOSS ở Đại học Cần Thơ
Đỗ Văn Xê: Kinh nghiệm triển khai FOSS ở Đại học Cần Thơ
 

More from Man_Ebook

Giáo trình thực vật học 2 - Trường ĐH Cần Thơ.pdf
Giáo trình thực vật học 2 - Trường ĐH Cần Thơ.pdfGiáo trình thực vật học 2 - Trường ĐH Cần Thơ.pdf
Giáo trình thực vật học 2 - Trường ĐH Cần Thơ.pdfMan_Ebook
 
Giáo trình mô động vật - Trường ĐH Cần Thơ.pdf
Giáo trình mô động vật - Trường ĐH Cần Thơ.pdfGiáo trình mô động vật - Trường ĐH Cần Thơ.pdf
Giáo trình mô động vật - Trường ĐH Cần Thơ.pdfMan_Ebook
 
Giáo trình ngôn ngữ hệ thống A - Trường ĐH Cần Thơ.pdf
Giáo trình ngôn ngữ hệ thống A - Trường ĐH Cần Thơ.pdfGiáo trình ngôn ngữ hệ thống A - Trường ĐH Cần Thơ.pdf
Giáo trình ngôn ngữ hệ thống A - Trường ĐH Cần Thơ.pdfMan_Ebook
 
Giáo trình ngôn ngữ mô hình hóa UML - Trường ĐH Cần Thơ.pdf
Giáo trình ngôn ngữ mô hình hóa UML - Trường ĐH Cần Thơ.pdfGiáo trình ngôn ngữ mô hình hóa UML - Trường ĐH Cần Thơ.pdf
Giáo trình ngôn ngữ mô hình hóa UML - Trường ĐH Cần Thơ.pdfMan_Ebook
 
Giáo trình nguyên lý máy học - Trường ĐH Cần Thơ.pdf
Giáo trình nguyên lý máy học - Trường ĐH Cần Thơ.pdfGiáo trình nguyên lý máy học - Trường ĐH Cần Thơ.pdf
Giáo trình nguyên lý máy học - Trường ĐH Cần Thơ.pdfMan_Ebook
 
Giáo trình mô hình hóa quyết định - Trường ĐH Cần Thơ.pdf
Giáo trình mô hình hóa quyết định - Trường ĐH Cần Thơ.pdfGiáo trình mô hình hóa quyết định - Trường ĐH Cần Thơ.pdf
Giáo trình mô hình hóa quyết định - Trường ĐH Cần Thơ.pdfMan_Ebook
 
Giáo trình Linux và phần mềm nguồn mở.pdf
Giáo trình Linux và phần mềm nguồn mở.pdfGiáo trình Linux và phần mềm nguồn mở.pdf
Giáo trình Linux và phần mềm nguồn mở.pdfMan_Ebook
 
Giáo trình logic học đại cương - Trường ĐH Cần Thơ.pdf
Giáo trình logic học đại cương - Trường ĐH Cần Thơ.pdfGiáo trình logic học đại cương - Trường ĐH Cần Thơ.pdf
Giáo trình logic học đại cương - Trường ĐH Cần Thơ.pdfMan_Ebook
 
Giáo trình lý thuyết điều khiển tự động.pdf
Giáo trình lý thuyết điều khiển tự động.pdfGiáo trình lý thuyết điều khiển tự động.pdf
Giáo trình lý thuyết điều khiển tự động.pdfMan_Ebook
 
Giáo trình mạng máy tính - Trường ĐH Cần Thơ.pdf
Giáo trình mạng máy tính - Trường ĐH Cần Thơ.pdfGiáo trình mạng máy tính - Trường ĐH Cần Thơ.pdf
Giáo trình mạng máy tính - Trường ĐH Cần Thơ.pdfMan_Ebook
 
Giáo trình lý thuyết xếp hàng và ứng dụng đánh giá hệ thống.pdf
Giáo trình lý thuyết xếp hàng và ứng dụng đánh giá hệ thống.pdfGiáo trình lý thuyết xếp hàng và ứng dụng đánh giá hệ thống.pdf
Giáo trình lý thuyết xếp hàng và ứng dụng đánh giá hệ thống.pdfMan_Ebook
 
Giáo trình lập trình cho thiết bị di động.pdf
Giáo trình lập trình cho thiết bị di động.pdfGiáo trình lập trình cho thiết bị di động.pdf
Giáo trình lập trình cho thiết bị di động.pdfMan_Ebook
 
Giáo trình lập trình web - Trường ĐH Cần Thơ.pdf
Giáo trình lập trình web  - Trường ĐH Cần Thơ.pdfGiáo trình lập trình web  - Trường ĐH Cần Thơ.pdf
Giáo trình lập trình web - Trường ĐH Cần Thơ.pdfMan_Ebook
 
Giáo trình lập trình .Net - Trường ĐH Cần Thơ.pdf
Giáo trình lập trình .Net  - Trường ĐH Cần Thơ.pdfGiáo trình lập trình .Net  - Trường ĐH Cần Thơ.pdf
Giáo trình lập trình .Net - Trường ĐH Cần Thơ.pdfMan_Ebook
 
Giáo trình lập trình song song - Trường ĐH Cần Thơ.pdf
Giáo trình lập trình song song  - Trường ĐH Cần Thơ.pdfGiáo trình lập trình song song  - Trường ĐH Cần Thơ.pdf
Giáo trình lập trình song song - Trường ĐH Cần Thơ.pdfMan_Ebook
 
Giáo trình lập trình hướng đối tượng.pdf
Giáo trình lập trình hướng đối tượng.pdfGiáo trình lập trình hướng đối tượng.pdf
Giáo trình lập trình hướng đối tượng.pdfMan_Ebook
 
Giáo trình lập trình hướng đối tượng Java.pdf
Giáo trình lập trình hướng đối tượng Java.pdfGiáo trình lập trình hướng đối tượng Java.pdf
Giáo trình lập trình hướng đối tượng Java.pdfMan_Ebook
 
Giáo trình kỹ thuật phản ứng - Trường ĐH Cần Thơ.pdf
Giáo trình kỹ thuật phản ứng  - Trường ĐH Cần Thơ.pdfGiáo trình kỹ thuật phản ứng  - Trường ĐH Cần Thơ.pdf
Giáo trình kỹ thuật phản ứng - Trường ĐH Cần Thơ.pdfMan_Ebook
 
Giáo trình lập trình căn bản với ngôn ngữ C.pdf
Giáo trình lập trình căn bản với ngôn ngữ C.pdfGiáo trình lập trình căn bản với ngôn ngữ C.pdf
Giáo trình lập trình căn bản với ngôn ngữ C.pdfMan_Ebook
 
Giáo trình kỹ thuật đồ họa - Trường ĐH Cần Thơ.pdf
Giáo trình kỹ thuật đồ họa - Trường ĐH Cần Thơ.pdfGiáo trình kỹ thuật đồ họa - Trường ĐH Cần Thơ.pdf
Giáo trình kỹ thuật đồ họa - Trường ĐH Cần Thơ.pdfMan_Ebook
 

More from Man_Ebook (20)

Giáo trình thực vật học 2 - Trường ĐH Cần Thơ.pdf
Giáo trình thực vật học 2 - Trường ĐH Cần Thơ.pdfGiáo trình thực vật học 2 - Trường ĐH Cần Thơ.pdf
Giáo trình thực vật học 2 - Trường ĐH Cần Thơ.pdf
 
Giáo trình mô động vật - Trường ĐH Cần Thơ.pdf
Giáo trình mô động vật - Trường ĐH Cần Thơ.pdfGiáo trình mô động vật - Trường ĐH Cần Thơ.pdf
Giáo trình mô động vật - Trường ĐH Cần Thơ.pdf
 
Giáo trình ngôn ngữ hệ thống A - Trường ĐH Cần Thơ.pdf
Giáo trình ngôn ngữ hệ thống A - Trường ĐH Cần Thơ.pdfGiáo trình ngôn ngữ hệ thống A - Trường ĐH Cần Thơ.pdf
Giáo trình ngôn ngữ hệ thống A - Trường ĐH Cần Thơ.pdf
 
Giáo trình ngôn ngữ mô hình hóa UML - Trường ĐH Cần Thơ.pdf
Giáo trình ngôn ngữ mô hình hóa UML - Trường ĐH Cần Thơ.pdfGiáo trình ngôn ngữ mô hình hóa UML - Trường ĐH Cần Thơ.pdf
Giáo trình ngôn ngữ mô hình hóa UML - Trường ĐH Cần Thơ.pdf
 
Giáo trình nguyên lý máy học - Trường ĐH Cần Thơ.pdf
Giáo trình nguyên lý máy học - Trường ĐH Cần Thơ.pdfGiáo trình nguyên lý máy học - Trường ĐH Cần Thơ.pdf
Giáo trình nguyên lý máy học - Trường ĐH Cần Thơ.pdf
 
Giáo trình mô hình hóa quyết định - Trường ĐH Cần Thơ.pdf
Giáo trình mô hình hóa quyết định - Trường ĐH Cần Thơ.pdfGiáo trình mô hình hóa quyết định - Trường ĐH Cần Thơ.pdf
Giáo trình mô hình hóa quyết định - Trường ĐH Cần Thơ.pdf
 
Giáo trình Linux và phần mềm nguồn mở.pdf
Giáo trình Linux và phần mềm nguồn mở.pdfGiáo trình Linux và phần mềm nguồn mở.pdf
Giáo trình Linux và phần mềm nguồn mở.pdf
 
Giáo trình logic học đại cương - Trường ĐH Cần Thơ.pdf
Giáo trình logic học đại cương - Trường ĐH Cần Thơ.pdfGiáo trình logic học đại cương - Trường ĐH Cần Thơ.pdf
Giáo trình logic học đại cương - Trường ĐH Cần Thơ.pdf
 
Giáo trình lý thuyết điều khiển tự động.pdf
Giáo trình lý thuyết điều khiển tự động.pdfGiáo trình lý thuyết điều khiển tự động.pdf
Giáo trình lý thuyết điều khiển tự động.pdf
 
Giáo trình mạng máy tính - Trường ĐH Cần Thơ.pdf
Giáo trình mạng máy tính - Trường ĐH Cần Thơ.pdfGiáo trình mạng máy tính - Trường ĐH Cần Thơ.pdf
Giáo trình mạng máy tính - Trường ĐH Cần Thơ.pdf
 
Giáo trình lý thuyết xếp hàng và ứng dụng đánh giá hệ thống.pdf
Giáo trình lý thuyết xếp hàng và ứng dụng đánh giá hệ thống.pdfGiáo trình lý thuyết xếp hàng và ứng dụng đánh giá hệ thống.pdf
Giáo trình lý thuyết xếp hàng và ứng dụng đánh giá hệ thống.pdf
 
Giáo trình lập trình cho thiết bị di động.pdf
Giáo trình lập trình cho thiết bị di động.pdfGiáo trình lập trình cho thiết bị di động.pdf
Giáo trình lập trình cho thiết bị di động.pdf
 
Giáo trình lập trình web - Trường ĐH Cần Thơ.pdf
Giáo trình lập trình web  - Trường ĐH Cần Thơ.pdfGiáo trình lập trình web  - Trường ĐH Cần Thơ.pdf
Giáo trình lập trình web - Trường ĐH Cần Thơ.pdf
 
Giáo trình lập trình .Net - Trường ĐH Cần Thơ.pdf
Giáo trình lập trình .Net  - Trường ĐH Cần Thơ.pdfGiáo trình lập trình .Net  - Trường ĐH Cần Thơ.pdf
Giáo trình lập trình .Net - Trường ĐH Cần Thơ.pdf
 
Giáo trình lập trình song song - Trường ĐH Cần Thơ.pdf
Giáo trình lập trình song song  - Trường ĐH Cần Thơ.pdfGiáo trình lập trình song song  - Trường ĐH Cần Thơ.pdf
Giáo trình lập trình song song - Trường ĐH Cần Thơ.pdf
 
Giáo trình lập trình hướng đối tượng.pdf
Giáo trình lập trình hướng đối tượng.pdfGiáo trình lập trình hướng đối tượng.pdf
Giáo trình lập trình hướng đối tượng.pdf
 
Giáo trình lập trình hướng đối tượng Java.pdf
Giáo trình lập trình hướng đối tượng Java.pdfGiáo trình lập trình hướng đối tượng Java.pdf
Giáo trình lập trình hướng đối tượng Java.pdf
 
Giáo trình kỹ thuật phản ứng - Trường ĐH Cần Thơ.pdf
Giáo trình kỹ thuật phản ứng  - Trường ĐH Cần Thơ.pdfGiáo trình kỹ thuật phản ứng  - Trường ĐH Cần Thơ.pdf
Giáo trình kỹ thuật phản ứng - Trường ĐH Cần Thơ.pdf
 
Giáo trình lập trình căn bản với ngôn ngữ C.pdf
Giáo trình lập trình căn bản với ngôn ngữ C.pdfGiáo trình lập trình căn bản với ngôn ngữ C.pdf
Giáo trình lập trình căn bản với ngôn ngữ C.pdf
 
Giáo trình kỹ thuật đồ họa - Trường ĐH Cần Thơ.pdf
Giáo trình kỹ thuật đồ họa - Trường ĐH Cần Thơ.pdfGiáo trình kỹ thuật đồ họa - Trường ĐH Cần Thơ.pdf
Giáo trình kỹ thuật đồ họa - Trường ĐH Cần Thơ.pdf
 

Recently uploaded

TỔNG HỢP CHUYÊN ĐỀ ĐẠT GIẢI MỘT SỐ VẤN ĐỀ SỐ HỌC TRONG CÁC KÌ THI OLYMPIC TOÁ...
TỔNG HỢP CHUYÊN ĐỀ ĐẠT GIẢI MỘT SỐ VẤN ĐỀ SỐ HỌC TRONG CÁC KÌ THI OLYMPIC TOÁ...TỔNG HỢP CHUYÊN ĐỀ ĐẠT GIẢI MỘT SỐ VẤN ĐỀ SỐ HỌC TRONG CÁC KÌ THI OLYMPIC TOÁ...
TỔNG HỢP CHUYÊN ĐỀ ĐẠT GIẢI MỘT SỐ VẤN ĐỀ SỐ HỌC TRONG CÁC KÌ THI OLYMPIC TOÁ...Nguyen Thanh Tu Collection
 
BỘ ĐỀ THEO CHUYÊN ĐỀ + LUYỆN ĐỀ TỔNG HỢP + MỘT SỐ BÀI NGHỊ LUẬN HAY BỒI DƯỠNG...
BỘ ĐỀ THEO CHUYÊN ĐỀ + LUYỆN ĐỀ TỔNG HỢP + MỘT SỐ BÀI NGHỊ LUẬN HAY BỒI DƯỠNG...BỘ ĐỀ THEO CHUYÊN ĐỀ + LUYỆN ĐỀ TỔNG HỢP + MỘT SỐ BÀI NGHỊ LUẬN HAY BỒI DƯỠNG...
BỘ ĐỀ THEO CHUYÊN ĐỀ + LUYỆN ĐỀ TỔNG HỢP + MỘT SỐ BÀI NGHỊ LUẬN HAY BỒI DƯỠNG...Nguyen Thanh Tu Collection
 
TÀI LIỆU DẠY THÊM HÓA HỌC 11 THEO MỨC ĐỘ SÁCH MỚI - KẾT NỐI TRI THỨC, CÁNH DI...
TÀI LIỆU DẠY THÊM HÓA HỌC 11 THEO MỨC ĐỘ SÁCH MỚI - KẾT NỐI TRI THỨC, CÁNH DI...TÀI LIỆU DẠY THÊM HÓA HỌC 11 THEO MỨC ĐỘ SÁCH MỚI - KẾT NỐI TRI THỨC, CÁNH DI...
TÀI LIỆU DẠY THÊM HÓA HỌC 11 THEO MỨC ĐỘ SÁCH MỚI - KẾT NỐI TRI THỨC, CÁNH DI...Nguyen Thanh Tu Collection
 
SGK Tràn dịch màng phổi Y4 RÁT LÀ HAY.pdf
SGK Tràn dịch màng phổi Y4 RÁT LÀ HAY.pdfSGK Tràn dịch màng phổi Y4 RÁT LÀ HAY.pdf
SGK Tràn dịch màng phổi Y4 RÁT LÀ HAY.pdfHongBiThi1
 
CHUYÊN ĐỀ PHỔ HỒNG NGOẠI IR, PHỔ KHỐI LƯỢNG MS PHỤC VỤ VIỆC GIẢNG DẠY CHƯƠNG ...
CHUYÊN ĐỀ PHỔ HỒNG NGOẠI IR, PHỔ KHỐI LƯỢNG MS PHỤC VỤ VIỆC GIẢNG DẠY CHƯƠNG ...CHUYÊN ĐỀ PHỔ HỒNG NGOẠI IR, PHỔ KHỐI LƯỢNG MS PHỤC VỤ VIỆC GIẢNG DẠY CHƯƠNG ...
CHUYÊN ĐỀ PHỔ HỒNG NGOẠI IR, PHỔ KHỐI LƯỢNG MS PHỤC VỤ VIỆC GIẢNG DẠY CHƯƠNG ...Nguyen Thanh Tu Collection
 
TÀI LIỆU DẠY THÊM HÓA HỌC 10 THEO MỨC ĐỘ SÁCH MỚI - KẾT NỐI TRI THỨC, CÁNH DI...
TÀI LIỆU DẠY THÊM HÓA HỌC 10 THEO MỨC ĐỘ SÁCH MỚI - KẾT NỐI TRI THỨC, CÁNH DI...TÀI LIỆU DẠY THÊM HÓA HỌC 10 THEO MỨC ĐỘ SÁCH MỚI - KẾT NỐI TRI THỨC, CÁNH DI...
TÀI LIỆU DẠY THÊM HÓA HỌC 10 THEO MỨC ĐỘ SÁCH MỚI - KẾT NỐI TRI THỨC, CÁNH DI...Nguyen Thanh Tu Collection
 
ĐỀ THI CHỌN HỌC SINH GIỎI CẤP HUYỆN + CẤP TỈNH 2023 MÔN NGỮ VĂN LỚP 9 THCS (2...
ĐỀ THI CHỌN HỌC SINH GIỎI CẤP HUYỆN + CẤP TỈNH 2023 MÔN NGỮ VĂN LỚP 9 THCS (2...ĐỀ THI CHỌN HỌC SINH GIỎI CẤP HUYỆN + CẤP TỈNH 2023 MÔN NGỮ VĂN LỚP 9 THCS (2...
ĐỀ THI CHỌN HỌC SINH GIỎI CẤP HUYỆN + CẤP TỈNH 2023 MÔN NGỮ VĂN LỚP 9 THCS (2...Nguyen Thanh Tu Collection
 
TỔNG HỢP 137 CÂU HỎI QUY LUẬT DI TRUYỀN LUYỆN THI HỌC SINH GIỎI THPT MÔN SINH...
TỔNG HỢP 137 CÂU HỎI QUY LUẬT DI TRUYỀN LUYỆN THI HỌC SINH GIỎI THPT MÔN SINH...TỔNG HỢP 137 CÂU HỎI QUY LUẬT DI TRUYỀN LUYỆN THI HỌC SINH GIỎI THPT MÔN SINH...
TỔNG HỢP 137 CÂU HỎI QUY LUẬT DI TRUYỀN LUYỆN THI HỌC SINH GIỎI THPT MÔN SINH...Nguyen Thanh Tu Collection
 
BỘ ĐỀ KIỂM TRA GIỮA KÌ 2 VẬT LÝ 11 - KẾT NỐI TRI THỨC - THEO CẤU TRÚC ĐỀ MI...
BỘ ĐỀ KIỂM TRA GIỮA KÌ 2 VẬT LÝ 11 - KẾT NỐI TRI THỨC - THEO CẤU TRÚC ĐỀ MI...BỘ ĐỀ KIỂM TRA GIỮA KÌ 2 VẬT LÝ 11 - KẾT NỐI TRI THỨC - THEO CẤU TRÚC ĐỀ MI...
BỘ ĐỀ KIỂM TRA GIỮA KÌ 2 VẬT LÝ 11 - KẾT NỐI TRI THỨC - THEO CẤU TRÚC ĐỀ MI...Nguyen Thanh Tu Collection
 
NGHIÊN CỨU THÀNH PHẦN HÓA HỌC VÀ KHẢ NĂNG XUA MUỖI AEDES AEGYPTI TRONG KHÔNG ...
NGHIÊN CỨU THÀNH PHẦN HÓA HỌC VÀ KHẢ NĂNG XUA MUỖI AEDES AEGYPTI TRONG KHÔNG ...NGHIÊN CỨU THÀNH PHẦN HÓA HỌC VÀ KHẢ NĂNG XUA MUỖI AEDES AEGYPTI TRONG KHÔNG ...
NGHIÊN CỨU THÀNH PHẦN HÓA HỌC VÀ KHẢ NĂNG XUA MUỖI AEDES AEGYPTI TRONG KHÔNG ...Nguyen Thanh Tu Collection
 

Recently uploaded (10)

TỔNG HỢP CHUYÊN ĐỀ ĐẠT GIẢI MỘT SỐ VẤN ĐỀ SỐ HỌC TRONG CÁC KÌ THI OLYMPIC TOÁ...
TỔNG HỢP CHUYÊN ĐỀ ĐẠT GIẢI MỘT SỐ VẤN ĐỀ SỐ HỌC TRONG CÁC KÌ THI OLYMPIC TOÁ...TỔNG HỢP CHUYÊN ĐỀ ĐẠT GIẢI MỘT SỐ VẤN ĐỀ SỐ HỌC TRONG CÁC KÌ THI OLYMPIC TOÁ...
TỔNG HỢP CHUYÊN ĐỀ ĐẠT GIẢI MỘT SỐ VẤN ĐỀ SỐ HỌC TRONG CÁC KÌ THI OLYMPIC TOÁ...
 
BỘ ĐỀ THEO CHUYÊN ĐỀ + LUYỆN ĐỀ TỔNG HỢP + MỘT SỐ BÀI NGHỊ LUẬN HAY BỒI DƯỠNG...
BỘ ĐỀ THEO CHUYÊN ĐỀ + LUYỆN ĐỀ TỔNG HỢP + MỘT SỐ BÀI NGHỊ LUẬN HAY BỒI DƯỠNG...BỘ ĐỀ THEO CHUYÊN ĐỀ + LUYỆN ĐỀ TỔNG HỢP + MỘT SỐ BÀI NGHỊ LUẬN HAY BỒI DƯỠNG...
BỘ ĐỀ THEO CHUYÊN ĐỀ + LUYỆN ĐỀ TỔNG HỢP + MỘT SỐ BÀI NGHỊ LUẬN HAY BỒI DƯỠNG...
 
TÀI LIỆU DẠY THÊM HÓA HỌC 11 THEO MỨC ĐỘ SÁCH MỚI - KẾT NỐI TRI THỨC, CÁNH DI...
TÀI LIỆU DẠY THÊM HÓA HỌC 11 THEO MỨC ĐỘ SÁCH MỚI - KẾT NỐI TRI THỨC, CÁNH DI...TÀI LIỆU DẠY THÊM HÓA HỌC 11 THEO MỨC ĐỘ SÁCH MỚI - KẾT NỐI TRI THỨC, CÁNH DI...
TÀI LIỆU DẠY THÊM HÓA HỌC 11 THEO MỨC ĐỘ SÁCH MỚI - KẾT NỐI TRI THỨC, CÁNH DI...
 
SGK Tràn dịch màng phổi Y4 RÁT LÀ HAY.pdf
SGK Tràn dịch màng phổi Y4 RÁT LÀ HAY.pdfSGK Tràn dịch màng phổi Y4 RÁT LÀ HAY.pdf
SGK Tràn dịch màng phổi Y4 RÁT LÀ HAY.pdf
 
CHUYÊN ĐỀ PHỔ HỒNG NGOẠI IR, PHỔ KHỐI LƯỢNG MS PHỤC VỤ VIỆC GIẢNG DẠY CHƯƠNG ...
CHUYÊN ĐỀ PHỔ HỒNG NGOẠI IR, PHỔ KHỐI LƯỢNG MS PHỤC VỤ VIỆC GIẢNG DẠY CHƯƠNG ...CHUYÊN ĐỀ PHỔ HỒNG NGOẠI IR, PHỔ KHỐI LƯỢNG MS PHỤC VỤ VIỆC GIẢNG DẠY CHƯƠNG ...
CHUYÊN ĐỀ PHỔ HỒNG NGOẠI IR, PHỔ KHỐI LƯỢNG MS PHỤC VỤ VIỆC GIẢNG DẠY CHƯƠNG ...
 
TÀI LIỆU DẠY THÊM HÓA HỌC 10 THEO MỨC ĐỘ SÁCH MỚI - KẾT NỐI TRI THỨC, CÁNH DI...
TÀI LIỆU DẠY THÊM HÓA HỌC 10 THEO MỨC ĐỘ SÁCH MỚI - KẾT NỐI TRI THỨC, CÁNH DI...TÀI LIỆU DẠY THÊM HÓA HỌC 10 THEO MỨC ĐỘ SÁCH MỚI - KẾT NỐI TRI THỨC, CÁNH DI...
TÀI LIỆU DẠY THÊM HÓA HỌC 10 THEO MỨC ĐỘ SÁCH MỚI - KẾT NỐI TRI THỨC, CÁNH DI...
 
ĐỀ THI CHỌN HỌC SINH GIỎI CẤP HUYỆN + CẤP TỈNH 2023 MÔN NGỮ VĂN LỚP 9 THCS (2...
ĐỀ THI CHỌN HỌC SINH GIỎI CẤP HUYỆN + CẤP TỈNH 2023 MÔN NGỮ VĂN LỚP 9 THCS (2...ĐỀ THI CHỌN HỌC SINH GIỎI CẤP HUYỆN + CẤP TỈNH 2023 MÔN NGỮ VĂN LỚP 9 THCS (2...
ĐỀ THI CHỌN HỌC SINH GIỎI CẤP HUYỆN + CẤP TỈNH 2023 MÔN NGỮ VĂN LỚP 9 THCS (2...
 
TỔNG HỢP 137 CÂU HỎI QUY LUẬT DI TRUYỀN LUYỆN THI HỌC SINH GIỎI THPT MÔN SINH...
TỔNG HỢP 137 CÂU HỎI QUY LUẬT DI TRUYỀN LUYỆN THI HỌC SINH GIỎI THPT MÔN SINH...TỔNG HỢP 137 CÂU HỎI QUY LUẬT DI TRUYỀN LUYỆN THI HỌC SINH GIỎI THPT MÔN SINH...
TỔNG HỢP 137 CÂU HỎI QUY LUẬT DI TRUYỀN LUYỆN THI HỌC SINH GIỎI THPT MÔN SINH...
 
BỘ ĐỀ KIỂM TRA GIỮA KÌ 2 VẬT LÝ 11 - KẾT NỐI TRI THỨC - THEO CẤU TRÚC ĐỀ MI...
BỘ ĐỀ KIỂM TRA GIỮA KÌ 2 VẬT LÝ 11 - KẾT NỐI TRI THỨC - THEO CẤU TRÚC ĐỀ MI...BỘ ĐỀ KIỂM TRA GIỮA KÌ 2 VẬT LÝ 11 - KẾT NỐI TRI THỨC - THEO CẤU TRÚC ĐỀ MI...
BỘ ĐỀ KIỂM TRA GIỮA KÌ 2 VẬT LÝ 11 - KẾT NỐI TRI THỨC - THEO CẤU TRÚC ĐỀ MI...
 
NGHIÊN CỨU THÀNH PHẦN HÓA HỌC VÀ KHẢ NĂNG XUA MUỖI AEDES AEGYPTI TRONG KHÔNG ...
NGHIÊN CỨU THÀNH PHẦN HÓA HỌC VÀ KHẢ NĂNG XUA MUỖI AEDES AEGYPTI TRONG KHÔNG ...NGHIÊN CỨU THÀNH PHẦN HÓA HỌC VÀ KHẢ NĂNG XUA MUỖI AEDES AEGYPTI TRONG KHÔNG ...
NGHIÊN CỨU THÀNH PHẦN HÓA HỌC VÀ KHẢ NĂNG XUA MUỖI AEDES AEGYPTI TRONG KHÔNG ...
 

ĐỒ ÁN MÔN HỌC HỆ THỐNG NHÚNG MẠNG KHÔNG DÂY - Contiki OSreport.pdf

  • 1. ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN KHOA MẠNG MÁY TÍNH VÀ TRUYỀN THÔNG ĐỒ ÁN MÔN HỌC HỆ THỐNG NHÚNG MẠNG KHÔNG DÂY Giảng viên hướng dẫn: Đặng Lê Bảo Chương Lớp: NT131.M12.MMCL.EN Thành viên: Đỗ Phương Thảo - 18521420 Võ Duy Phúc – 19522046 Nguyễn Minh Thọ - 19522293 Năm học : 2021-2022
  • 3. MỤC LỤC Chương 1. TỔNG QUAN VỀ HỆ ĐIỀU HÀNH CONTIKI...................................4 1.1. Giới thiệu.....................................................................................................4 1.2. Hệ điều hành Contiki...................................................................................5 1.3. Lịch sử phát triển của Contiki......................................................................6 1.4. Tại sao sử dụng Contiki..............................................................................7 Chương 2. CÁC TÍNH NĂNG CỦA CONTIKI OS...............................................8 2.1. Các tính năng của Contiki OS......................................................................8 Chương 3. CẤU TRÚC HỆ ĐIỀU HÀNH CONTIKI...........................................10 3.1. Cấu trúc hệ điều hành Contiki......................................................................9 3.2. Kiến trúc phân lớp hệ điều hành Contiki....................................................11 3.3. Ngăn xếp truyền thông trong hệ điều hành Contiki....................................12 3.4. Protothread.................................................................................................16 3.5. Protothread in processes.............................................................................17 3.6. Một số thư viện trong Contiki OS..............................................................18 Chương 4. SO SÁNH VỚI TINY OS...................................................................22 Chương 5. DEMO.................................................................................................24 5.1. Giới thiệu về công cụ mô phỏng Cooja......................................................24 3
  • 4. Chương 1: Tổng quan về hệ điều hành Contiki 1.Giới thiệu Các đối tượng thông minh là các thiết bị đơn giản, nhỏ gọn, giá thành thấp, sử dụng nguồn năng lượng hạn chế. Một trong những đặc điểm nổi bật của nút mạng các đối tượng thông minh là sự hạn chế về tài nguyên tính toán, nguồn năng lượng cung cấp và giá thành sản xuất. Với số lượng dày đặc các nút cảm biến, việc kiểm nghiêm và đánh giá chính xác hiệu quả hoạt động là một trong những thách thức của mạng cảm biến không dây trong quá trình triển khai thực tế. Nhằm khắc phục những khó khăn này, nhiều hướng nghiên cứu đã tập trung vào phát triển những công cụ mô phỏng cách thức hoạt động các nút trong mạng cảm biến. Trong bài báo cáo này sẽ trình bày về hệ điều hành Contiki. 4
  • 5. 2.Contiki OS Contiki là một hệ điều hành mã nguồn mở được thiết kế cho các hệ thống mạng nhúng nói chung và mạng lưới các thiết bị đo nói riêng. Hệ điều hành Contiki được phát triển bởi Adam Dunkels đến từ nhóm Embedded Systems của Viện Khoa học Máy tính Thụy Điển. Nhóm phát triển Contiki gồm nhiều thành viên đến từ SICS, CISCO, cùng nhiều tổ chức và các trường đại học khác trên thế giới. Hệ điều hành Contiki được thiết kế cho các vi điều khiển có bộ nhớ nhỏ, với thông số 2KB RAM và 40KB ROM. Nhờ đó, Contiki có thể được sử dụng cho các hệ thống nhúng. Contiki là một hệ điều hành cho các hệ thống mạng, hạn chế bộ nhớ. Các ứng dụng Contiki bao gồm hệ thống chiếu sáng đường phố, giám sát âm thanh cho thành phố thông minh, giám sát bức xạ và báo động. Contiki được phát hành theo giấy phép BSD (Một loại giấy phép cho phép sử dụng độc quyền và cho phép phần mềm được phát hành theo giấy phép được tích hợp vào các sản phẩm độc quyền). Hệ điều hành Contiki được lập trình bằng ngôn 5
  • 6. ngữ C, hoạt động dựa trên cơ chế event-driven và có những đặc điểm phù hợp với các hệ thống nhúng và mạng cảm biến không dây. 3.Lịch sử phát triển của Contiki Hình 1: Lịch sử phát triển Contiki Contiki bắt đầu được nghiên cứu từ năm 2001 và phát hành phiên bản đầu tiên Contiki 1.0 năm 2003. Phiên bản hiện nay của Contiki là 2.4 với nhiều thay đổi, bổ sung và phát triển vượt bậc. Nhiều cơ chế, ý tưởng Contiki đã được ứng dụng rộng rãi trong công nghiệp. Điển hình như mô hình uIP được phát hành năm 2001 đã được sử dụng trong hệ thống ứng dụng của hàng trăm công ty trong các lĩnh vực hang hải, thông tin vệ tinh, khai thác dầu mỏ, …; mô hình Protothread được công bố đầu tiên năm 2005, sử dụng nhiều trong bộ giải mã kĩ thuật số và thiết bị cảm biến rung không dây. 4. Tại sao sử dụng Contiki? 6
  • 7. Internet Standards: Contiki là một hệ điều hành mã nguồn mở cho Internet of Things. Nó kết nối các bộ vi điều khiển công suất thấp, chi phí thấp với internet và cung cung cấp mạng giao tiếp công suất thấp mạnh mẽ. Contiki hỗ trợ đầy đủ tiêu chuẩn IPv6 và IPv4 cùng với các tiêu chuẩn không dây công suất thấp gần đây: 6lowpan, RPL, CoAP. Rapid Development: Các ứng dụng của Contiki được viết bằng C, tải về với Instant Contiki cung cấp môi trường để phát triển. Contiki còn cung cấp những công cụ mô phỏng như Cooja Hardware Selection: Contiki hoạt động trên nhiều loại thiết bị không dây có công suất thấp, các phần cứng có thể dễ dàng mua được. Active Community Support: Contiki được phát triển bởi một nhóm các nhà nghiên cứu phát triển trên toàn thế giới với sự đóng góp của Cisco, Atmel, Redwire LLC, ETH, Thingsqure, SAP và nhiều nhà phát triển khác do Adam Dunkels of Thingsquare lãnh đạo. Chương 2: Các tính năng của Contiki OS 7
  • 8. 1.Các tính năng của Contiki OS Memory Allocation: Contiki được thiết kế cho các hệ thống nhỏ, chỉ có vài kilobyte bộ nhớ khả dụng. Full IP Networking: Contiki cung cấp một ngăn xếp mạng IP đầy dủ, với các giao thức IP tiêu chuẩn như UDP, TCP, HTTP, ngoài các tiêu chuẩn low-power như 6lowpan, RPL và CoAP. Power Awareness: Contiki thiết kế để hoạt động trong các hệ thống tiêu thu điện năng cực thấp, các hệ thống có thể cần chạy trong nhiều năm với pin AA. Để hỗ trợ sự phát triển của các hệ thống tiêu thụ điện năng thấp, Contiki cung cấp các cơ chế để ước tính mức tiêu thụ điện năng của hệ thống và hiểu được nguồn điện đã được sử dụng ở đâu. The Cooja Network Simulator: Các thiết bị Contiki thường tạo nên các mạng không dây lớn. Việc phát triển và gỡ lỗi phần mềm cho các mạng như vậy rất khó. Do vậy, Cooja, trình mô phỏng mạng Contiki làm cho điều này trở nên dễ dàng hơn bằng cách cung cấp một môi trường mô phỏng cho phép các nhà phát triển xem các ứng dụng của họ chạy trong các mạng quy mô lớn hoặc cực kỳ chi tiết trước khi đưa ra phần cứng. Hardware Platforms: Contiki chạy trên một loạt các nền tảng nhỏ, từ các hệ thống chạy trên chip 8051 thông qua MSP430 và AVR cho đến nhiều thiết bị ARM khác nhau. Protothreads: Để tiếp kiệm bộ nhớ và cung cấp một luồng điều khiển tốt trong Code, Contiki sử dụng cơ chế gọi là Protothreads, nó là loại lập trình đa luồng và lập trình hướng sự kiện. Coffee flash file system: Contiki cung cấp hệ thống tệp flash nhẹ, gọi là Coffee. Các chương trình ứng dụng hệ thống tập tin này có thể thực hiện 8
  • 9. nhiều thao tác mở, đóng, đọc,ghi và nối vào các tập tin trên flash ngoài mà không phải lo lắng về việc xóa các thành phần flash trước khi ghi. The Contiki shell: Contiki hỗ trợ một trình bao dòng lệnh tùy chọn, chưa tập hợp các lệnh hữu ích trong quá trình triển khai mã và gỡ lỗi trong hệ thống Contiki. Regression Tests: Để đảm bảo rằng Code hoạt động như mong đợi, các nhà phát triển Contiki sử dụng một tập hợp các bài test để kiểm tra các khía cạnh quan trọng của Contiki trong trình mô phỏng Cooja The Rime Stack: Trong các tình huống khi băng thông ở mức cao hoặc khi mạng IPv6 stack bị đầy quá mức, Contiki cung cấp wireless networking stack có tên là Rime Build System: Hệ thống xây dựng Contiki giúp dễ dàng biên dịch các ứng dụng cho bất kỳ nền tảng Contiki nào có sẵn. Điều này giúp bạn dễ dàng dùng thử các ứng dụng trên nhiều nền tảng khác nhau. Examples: Có rất nhiều ví dụ trong Contiki source code tree để giúp cho những người mới bắt đầu. Chương trình hiển thị cách tương tác với phần cứng, một số chương trình hiển thị network code, và chương trình khác trình bày các khía cạnh khác nhau của hệ thống Contiki và trình mô phỏng Cooja tương ứng có sẵn Chương 3: Cấu trúc hệ điều hành Contiki 9
  • 10. 3.1. Cấu trúc hệ điều hành Contiki Bất kỳ phiên bản Contiki nào cũng gồm 7 thư mục là: apps, core, cpu, docs, example, platform và tools.  Thư mục apps: Chứa các tập tin nguồn của các tiện ích phát triển cho Contiki. Chúng có sẵn để sử dụng và bao gồm các thiết lập cơ bản của các ứng dụng cho mạng các đối tượng thông minh . Ứng dụng tiêu biểu trong thư mục này là trình duyệt web, máy chủ Web, FTP, email....  Thư mục Core: Như tên gọi cho thấy, nó chứa các hạt nhân của hệ điều hành Contiki. Nó chứa khoảng 300 files, gần một nửa trong số đó là tập tin tiêu đề chứa các khai báo và còn lại là các tập tin nguồn chứa cài đặt.  Thư mục CPU: Chứa các bộ xử lý cụ thể cho việc thực hiện các chức năng khác nhau được sử dụng trong hệ điều hành.  Thư mục Docs: Được sử dụng trong việc chuẩn bị tài liệu cho Contiki. Nó chứa thông tin sẽ được sử dụng bởi một hệ thống tài liệu điển hình như Doxygen.  Thư mục Examples: Chứa các chương trình ví dụ đơn giản bắt đầu với “Hello-world”, như là bước đầu tiên hướng tới lập trình ứng dụng trên Contiki.  Thư mục Platform: Bao gồm thông tin cụ thể liên quan đến nền tảng phần cứng cho các nút cảm biến như ESB, Sky mote,…  Thư mục Tools: Là thư mục chứa các công cụ phần mềm đặc biệt. Ví dụ như 'Cooja' là một chương trình Java để mô phỏng cho Contiki.Thư mục này cũng chứa các công cụ cho các nền tảng phần cứng cụ thể. 3.2. Kiến trúc phân lớp hệ điều hành Contiki. 10
  • 11. Hệ điều hành Contiki theo kiểu kiến trúc module. Nhân Contiki bao gồm một bộ lập lịch sự kiện làm nhiệm vụ gửi đi các sự kiện tới các tiến trình đang chạy. Các tiến trình thực thi được kích hoạt bằng các sự kiện gửi đi bởi hạt nhân tới các tiến trình hoặc bằng cơ chế hỏi vòng. Cơ chế hỏi vòng được sử dụng để tránh các điều kiện tranh đua (race conditions). Bất kì sự kiện nào đã được lập lịch sẽ chạy cho đến khi nó hoàn thành. Có hai loại sự kiện được hỗ trợ bởi hệ điều hành Contiki: Các sự kiện đồng bộ và không đồng bộ. Sự kiện đồng bộ được gửi đi ngay lập tức tới tiến trình đích bởi vì nó đã được lập lịch. Đối với các sự kiện không đồng bộ thì chậm hơn, thủ tục gọi được xếp vào hàng đợi và sau đó cũng được gửi đến tiến trình đích. Cơ chế hỏi vòng được sử dụng trong Contiki có thể xem như là các sự kiện có ưu tiên cao nó đã được lập lịch giữa mỗi sự kiện không đồng bộ. Khi một hỏi vòng đã được lập lịch thì tất cả các tiến trình đó thực hiện một trình xử lý hỏi vòng được gọi là thứ tự ưu tiên của chúng. 11
  • 12. Hình 2: Kiến trúc hệ điều hành Contiki. 3.3. Ngăn xếp truyền thông trong hệ điều hành Contiki Contiki cơ bản gồm 2 stack truyền thông là uIP với TCP/UDP, IPV4, IPV6 giúp hệ điều hành truyền thông qua mạng Internet và Rime được thiết kế cho những liên kết không dây năng lượng thấp, nó cung cấp một phạm vi rộng lớn các truyền thông nguyên thủy từ những cách thức quảng bá nội vùng hiệu quả cao đến flooding dữ liệu đáng tin cậy trên nhiều nút mạng. 12
  • 13. Hình 3: Kiến trúc giao thức mạng Ngăn xếp uIP: Trong những năm gần đây, cùng với sự thành công của Internet, giao thức TCP/IP đã trở thành tiêu chuẩn toàn cầu trong lĩnh vực truyền thông, TCP/IP là giao thức cơ bản được sử dụng cho những mục đích truyền tải các trang web, gửi và nhận email, truyền dữ liệu…Các hệ thống nhúng sử dụng TCP/IP có khả năng kết nối những hệ thống trực tiếp đến một mạng nội bộ, hoặc thậm chí là một mạng toàn cầu. Những thiết bị nhúng có khả năng đáp ứng được đầy đủ những đặc tính củaTCP/IP sẽ là những thiết bị có tính ưu việt, có khả năng giao tiếp một cách đầy đủ với tất cả các thiết bị khác trong mạng. Nhưng, việc triển khai giao thức TCP/IP truyền thống đòi hỏi quá nhiều tài nguyên gồm cả dung lượng code và bộ nhớ sử dụng, không thể được đáp ứng trong các hệ thống code và bộ nhớ sử dụng, không thể được đáp ứng 13
  • 14. trong các hệ thống nhúng 8 hoặc 16 bit. Do vậy, up được thiết kế dựa trên ngôn ngữ C với mục tiêu tối ưu hóa tuyệt đối các đặc tính cần thiết cho một stack TCP/IP đầy đủ. uIP chỉ có thể hoạt động với một giao diện mạng duy nhất bao gồm các giao thức: IP, ICMP, UDP, TCP. Ngăn xếp RIME: Rime stack cung cấp một cấu trúc phân tầng của giao thức mạng cảm biến không dây, từ một bộ phát quảng bá đơn giản tới việc định tuyến rắc rối trong toàn mạng. Rime triển khai một giao thức phức tạp, với nhiều phần, mỗi phần lại gồm những module phức tạp được tạo nên từ những module nhỏ lẻ đơn giản hơn. Hình 4: Tổ chức của RIME Rime stack cung cấp một cấu trúc phân tầng của giao thức mạng cảm biến không dây, từ một bộ phát quảng bá đơn giản tới việc định tuyến rắc rối trong toàn mạng. Rime triển khai một giao thức phức tạp, với nhiều phần, mỗi phần lại gồm 14
  • 15. những module phức tạp được tạo nên từ những module nhỏ lẻ đơn giản hơn . Toàn thể tổ chức của giao thức Rime bao gồm : - Abc: phát sóng quảng bá, nó chỉ gửi một gói tin qua các trình điều khiển vô tuyến và nhận tất cả các gói tin từ các trình điều khiển vô tuyến khác. - Broadcast: phát sóng xác định, nó thêm địa chỉ người gửi để gửi đi các gói dữ liệu và chuyển nó vào module abc. - Unicast: module này cho biết thêm một địa chỉ đích cho các gói tin được truyền cho khối phát sóng. Ở bên nhận, nếu địa chỉ đích của gói tin không phù hợp với địa chỉ của nút thì gói tin đó sẽ bị loại bỏ. - Stunicast: là các unicast “cứng đầu “, khi được hỏi để gửi một gói tin đến một nút, nó sẽ gửi nhiều lần với một khoảng thời gian nhất định cho đến khi yêu cầu dừng lại. - Runicast: là các unicast đáng tin cậy, nó sẽ gửi một gói tin bằng cách sử dụng các stunicast chờ một gói tin xác nhận. Khi nhận được, nó dừng việc truyền tải liên tục của các gói tin. Một số lượng tối đa các gói tin truyền lại phải được xác định, để tránh gửi vô hạn. - Polite và ipolite: hai module gần như giống hệt nhau, khi một gói tin đã được gửi đi trong một khung thời gian nhất định, module chờ một nửa thời gian, kiểm tra xem nó có nhận được gói tin nó định gửi hay không. Nếu trùng, gói tin không được gửi đi, nếu không nó sẽ gửi gói tin. Điều này rất hữu ích cho các kỹ thuật flooding để tránh việc truyền lại không cần thiết. - Multihop: module này đòi hỏi chức năng bảng định tuyến, và khi định gửi một gói tin, nó yêu cầu bảng định tuyến cho hop tiếp theo và gửi gói tin đến nó bằng cách unicast. .Khi nó nhận được một gói tin, nếu hop đó là đích, gói tin sẽ được truyền tới các lớp trên, nếu không nó sẽ 15
  • 16. yêu cầu thông tin về hop tiếp theo từ bảng định tuyến và chuyển tiếp các gói tin đến nó. Khi gửi gói, các ứng dụng lưu gói vào bộ nhớ đệm và gọi các hàm xử lý liên quan để gửi gói đi. Khi nhận được một gói, gói nhận được được lưu trong bộ đệm gói, đồng thời RIME stack gọi các hàm “callback” tương ứng để xử lý gói đầu vào. 3.4. Protothreads Protothreads là một cấu trúc code cho phép hệ thống chạy các hoạt động khác khi đợi một điều gì đó xảy ra. Protothreads ở đây khai thác trực tiếp trong hệ điều hành contiki, ngoài ra nó được sử dụng tốt trong các lĩnh vực khác. Protothread cho phép sử dụng các hàm có trong C giống như trong threads mà không bị tràn bộ nhớ. Nó giảm dung lượng bộ nhớ và là điều rất quan trọng trong các hệ thống có bộ nhớ khiêm tốn sử dụng Contiki. Protothread là 1 hàm C. Hàm này bắt đầu và kết thúc bởi 2 lệnh PT_BEGIN() và PT_END(). Với Protothreads, chương trình được cấu trúc theo tuần tự. Protothreads có thể thực hiện được hiệu quả trong ngôn ngữ lập trình C mà không cần bất kỳ ngôn ngữ lập trình bậc thấp hay các thay đổi nào với trình biên dịch. Protothreads là sự kết hợp giữa cơ chế Multi-threaded và Event-driven, Gồm 4 loại Protothreads cơ bản: - PT_INIT(pt): Khởi tạo một Protothread. - PT_BEGIN (pt): bắt đầu một Protothread. - PT_WAIT_UNTIL (pt, điều kiện): điều khiển đợi một sự kiện. - PT_END (pt): kết thúc một Protothread. 16
  • 17. Hình 5: Các hàm của protothread 3.5. Protothreads in Processes Trong Contiki, Protothread được sử dụng dưới những câu lệnh riêng PROCESS_BEGIN(): Khai báo bắt đầu process protothread. PROCESS_END():Khai báo kết thúc process protothread. PROCESS_EXIT():Thoát ra khỏi process PROCESS_WAIT_EVENT():Đợi 1 event nào đó PROCESS_WAIT_EVENT_UNTIL():Đợi 1 event nào đó nhưng có điều kiện PROCESS_YIELD():Tương tự như PROCESS_WAIT_EVENT() PROCESS_WAIT_UNTIL():Chờ 1 điều kiện, có thể không thực hiện PROCESS_PAUSE(): Tạm dừng process đang thực hiện 17
  • 18. 3.6.Một số thư viện trong Contiki OS Hình 6: Random Number Library Thư viện Random Number được sử dụng bởi các chương trình Contiki và chính hệ thống Contiki để lấy các số ngẫu nhiên Thư viện thường được triển khai bằng cách sử dụng trình tạo số ngẫu nhiên được cung cấp bởi thư viện C hoặc hệ thống thời gian chạy trình biên dịch Void randonm_init(unsigned short seed): Khởi tạo bộ tạo số ngẫu nhiên. Unsigned short random_rand(void): Nhận một số ngẫu nhiên từ 0 đến RANDOM_RAN_MAX API chỉ cung cấp hai hàm: random_init() được gọi bởi hệ thống trong quá trình khởi động và random_rand(),RANDOM_RAND_MAX được xác định là 65535 18
  • 19. Hình 7: LEDs Library ledv: Các vector LED độc lập: #define LEDS_GREEN 1 #define LEDS_YELLOW 2 #define LEDS_RED 4 #define LEDS_ALL 7 leds_on(): Lấy đối số vector đèn LED ledv và bật các đèn LED được đặt trong vetor leds_off(): Lấy đối số LED trong ledv và tắt đi. 19
  • 20. led_invert(): Đảo ngược trạng thái hiện tại của đèn LED void leds_init(void): Khởi tạo trình điều khiển đèn LED leds_get(void): Nhận trạng thái của đèn LED leds_on(unsigned char ledv): Bật đèn LED leds_off (unsigned char ledv): Tắt đèn LED led_toggle (unsigned char ledv): Chuyển đổi trạng thái đèn LED Hình 8: Timer Library 20
  • 21. Thư viện Contiki timer cung cấp các hàm để tinh chỉnh, khởi động lại timer, và kiểm tra timer kết thúc chưa. Một ứng dụng phải được kiểm tra timers đã kết thúc chưa bằng tay, nó không được làm tự động. Các thư viện timer sử dụng clock_time() để có được thời gian hiện tại của hệ thống. Một timer được khái báo bằng struct timer và truy cập thông qua địa chỉ con trỏ. Void timer_set(struct timer *t, clock_time_t interval): Khởi tạo timer Void timer_reset(struct timer *t) : Khởi động lại một timer đã hết hạn Void timer_restart (struct timer *t) : Khởi động lại timer hiện tại Int timer_expired(struct timer *t) : Kiểm tra timer có hết hạn không Clock_time_t timer_remaining(struct timer *t): Trả về giá trị còn lại đến khi timer hết hạn 21
  • 22. Chương 4: So sánh với Tiny OS Hình 9:Tóm tắt hệ điều hành Hệ điều hành TinyOS được phát triển ở UC Berkeley, là hệ điều hành nhúng cho các đối tượng thông minh sớm nhất. Nó cho phép một kiến trúc mềm dẻo và tiêu thụ tài nguyên thấp, việc lập trình trên TinyOS dựa trên các thành phần được kết nối với nhau để tạo một ứng dụng ở thời điểm thiết kế. Những tương tác giữa các thành phần xảy ra theo hai chiều, tức là một thành phần sử dụng lệnh được cung cấp bởi một thành phần khác; ngoài ra, một thành phần có thể báo hiệu các sự kiện tới một thành phần khác. Mô hình thực thi của TinyOS bao gồm các ngắt (interrupt) và các nhiệm vụ (task). Các nhiệm vụ trong TinyOS được viết theo kiểu run-to- 22
  • 23. completion (chạy đến khi hoàn thành)và chúng không thể giành được quyền ưu tiên trước (preempt) hoặc tạm ngưng (suspend). Vì lý do này, việc xuất nhập (I/Os) được chia thành các giai đoạn. Tức là một yêu cầu (request) được thực hiện vào lúc kết thúc một nhiệm vụ trong khi tín hiệu (signal) gọi đến sự bắt đầu của nhiệm vụ tiếp theo. Để hỗ trợ tốt hơn cho kiến trúc thành phần và mô hình thực thi của TinyOS thì ngôn ngữ nesC được thiết kế cho việc lập trình dựa trên TinyOS Hình 10: So sánh Contiki OS và Tiny OS Trong các hệ thống tĩnh, người lập trình ứng dụng phải định vị tất cả các tài nguyên ở thời điểm thiết kế (Tiny OS), mặt khác trong hệ thống động (Contiki OS) những người lập trình ứng dụng có thể định vị lại các tài nguyên tại thời điểm chạy ứng dụng Đơn khối hay module hóa: Một ứng dụng có thể được biên dịch với hệ điều hành như một khối chương trình (Tiny OS) hoặc có thể được biên dịch thành các phần chương trình riêng lẻ mà chúng có thể nạp bởi nhân hệ điều hành (Contiki OS) 23
  • 24. Chương 5:Chạy mô phỏng và triển khai trên thiết bị thật 5.1.Giới thiệu về công cụ mô phỏng Cooja Cooja là phần mềm mô phỏng hệ thống mạng được tích hợp trong hệ điều hành Contiki. Công cụ này cho phép người sử dụng thay đổi các thông số như vị trí, phạm vi kết nối, tỉ lệ truyền gói thành công,… Nhờ đó người sử dụng có thể mô phỏng và đánh giá kết quả một cách hiệu quả hơn. Hình 7: Giao diện mô phỏng Cooja Từ hình có thể nhận thấy giao diện của chương trình dễ sử dụng, với một màn hình cho phép hiển thị các quá trình hoạt động của node, có khả năng thay đổi vị trí, phạm vi phủ sóng của mỗi node. Bên cạnh đó Cooja cung cấp một số các cửa sổ theo dõi sự kiện như Log listener, Radio listener cho phép người sử dụng tìm kiếm những sự kiện theo một số thông số nhất định, theo dõi sự giao tiếp giữa một số node cụ thể, ….Có thể nói, đây là một công cụ mô phỏng khá trực quan và dễ sử dụng, phục vụ tốt cho quá trình nghiên cứu, mô phỏng, đánh giá. 24
  • 25. Network: Hiển thị vị trí của mỗi node trong mạng, có thể trực quan hóa trạng thái của từng nút bao gồm đèn LED, địa chỉ,… Simulation Control: Bảng này được sử dụng để bắt đầu, tạm dừng, tải lại hoặc thực hiện các bước của mô phỏng, nó hiển thị thời gian thực hiện và tốc độ mô phỏng. Notes: Đây là một notepad đơn giản để ghi chú về mô phỏng. Mote output: Hiển thị tất cả đầu ra của giao diện nối tiếp của các nút, có thể kích hoạt một cửa sổ đầu ra Mote cho mỗi nút trong mô phỏng. Timeline: Dòng thời gian mô phỏng nơi các thông báo và sự kiện như thay đổi kênh, đèn LED thay đổi, … được hiển thị Hình 11: Cấu trúc một chương trình cơ bản 25
  • 26. Hình 12: Chương trình mô phỏng đèn LED nhấp nháy PROCESS(blink_process,"Blink") :Khai báo một process AUTOSTART_PROCESSES(&blink_process); bắt đầu một process tự động PROCESS_THREAD(blink_process, ev, data): Xác định nội dung của process PROCESS_EXITHANDLER(goto exit;): Chỉ định một hành động trước khi process exit PROCESS_BEGIN(); PROCESS_END(); chỉ định bắt đầu một process, kết thức một process 26
  • 27. static struct etimer et: struct sử dụng để khai báo bộ đếm thời gian, bộ hẹn giờ phải đặt bằng etimer_set (Trước khi sử dụng), đặt hẹn giờ sự kiện cho một thời điểm nào đó trong tương lai PROCESS_WAIT_EVENT_UNTIL(t): Chờ một sự kiện đưa lên process với điều kiện bổ sung tương tự như PROCESS_WAIT_EVENT () chặn quá trình đang chạy cho đến khi quá trình nhận một sự kiện PROCESS_WAIT_EVENT_UNTIL(etimer_expired(&et)); kiểm tra xem bộ hẹn giờ sự kiện đã hết hạn chưa, et là một con trỏ đến bộ Chạy và mô phỏng trên Cooja 27
  • 28. Tham Khảo: [1] osrtor.com, “Contiki OS”[online] [2] Kavyashree, E. D. (2018, June). 6LoWPAN network using Contiki operating system. In 3rd National Conference on Image Processing, Computing, Communication, Networking and Data Analytics (p. 300). 28