TinyOS không hỗ trợ các ứng dụng đa luồng vì nó có khả năng tính tốn thấp. Các thành phần chính của TinyOS là các tác vụ, sự kiện, lệnh và dữ liệu. Dữ liệu được nhận từ mơi trường bên ngồi. Ví dụ: trong thiết bị phát hiện khói, khi phát hiện khói thì cảm biến của thiết bị sẽ tạo ra sự kiện và thơng tin về sự kiện đó là dữ liệu. Sau đó, lệnh được thực hiện để tách nước hoặc bất kỳ hóa chất nào ngăn khói hoặc lửa.
4.2.2 Ứng dụng hệ điều hành Tiny.
Nhiều ứng dụng của TinyOS có trong cuộc sống hàng ngày của chúng ta. Một số ví dụ về các thiết bị sử dụng tinyOS dưới đây:
• Được sử dụng trong các hoạt động quân sự
• Kiểm sốt nhiệt độ như AC trong phịng hoặc trong xe hơi • Hệ thống bảo mật trong ngân hàng
• Giám sát tài ngun • Kiểm sốt mơi trường • Đo lường cơng nghiệp • Hỗ trợ các thiết bị Bluetooth • Được sử dụng trong lị vi sóng
• Được sử dụng trong nơng nghiệp để phát hiện cây trồng bị lỗi
4.2.3 Ưu điểm và nhược điểm của TinyOS.
TinyOS là một hệ điều hành nguồn mở được sản xuất đặc biệt cho các thiết bị mạng không dây. Các thiết bị bao gồm Bluetooth, thiết bị cảm biến môi trường và hệ thống bảo mật ngân hàng, v.v. TinyOS được viết bằng ngôn ngữ NesC là phương ngữ của ngôn ngữ C.
Ưu điểm :
- Kích thước nhỏ: Mã nguồn của TinyOS có kích thước nhỏ. Do các thiết bị mã nhỏ hơn chạy nhanh và hệ điều hành khơng có xu hướng q tải thiết bị. Mã được tối ưu hóa để chạy cho bất kỳ thiết bị cụ thể nảo.
- Hệ điều hành hướng sự kiện: TinyOS là hệ điều hành hướng sự kiện, có nghĩa là nó phụ thuộc vào các sự kiện mà nó nhận được từ mơi trường xung quanh. Ví dụ, kiểm sốt nhiệt độ của tịa nhà. Một sự kiện được kích hoạt khi nhiệt độ vượt quá hoặc dưới một mức độ nhất định và hệ điều hành sẽ điều khiển các thiết bị điều hịa khơng khí để tạo ra nhiệt độ ở mức bình thường.
- Bộ nhớ thấp cần thiết: TinyOS cần bộ nhớ thấp để chạy dù không cần mua các thiết bị bộ nhớ cao hơn để chạy hệ điều hành này. TinyOS là một loại HĐH nhúng được triển khai trên mọi thiết bị.
- Tính mơ đun: TinyOS có các mơ-đun khác nhau trong đó. Mỗi mơ-đun thực hiện chức năng riêng. Các mô-đun bao gồm các nhiệm vụ, lệnh, sự kiện, vi điều khiển,
phần cứng và phần mềm. Mỗi mô-đun này giao tiếp với nhau để làm cho các thiết bị khơng dây hoạt động chính xác hơn.
- Khả năng tái sử dụng : TinyOS có thể được sử dụng lại trên các thiết bị tương tự. Điều đó có nghĩa là mã khơng bị thay đổi nếu các thiết bị có cùng bản chất.
- Sử dụng điện áp thấp: Do bộ nhớ thấp và sử dụng không gian, tinyOS sử dụng pin yếu. TinyOS có thể chạy trên các thiết bị nhỏ hơn cũng có điện áp thấp.
Nhược điểm:
- Điều chỉnh cần thiết: Cần một số điều chỉnh để thực hiện giao tiếp giữa phần cứng và phần mềm. Điều này là do hạn chế điện áp thấp.
- Bản chất khơng đồng bộ: Vì các thiết bị cảm biến mạng phải cập nhật dữ liệu từ xung quanh trong mỗi giây, do đó các lập trình viên phải ghi nhớ điều này để làm cho mã hoạt động trong mọi trường hợp.
Đôi khi tồn tại một số vấn đề giao tiếp giữa các tác vụ trong tinyOS.
4.2.4 Chức năng của hệ điều hành Tiny OS
TinyOS được viết bằng nesC, một phương ngữ của C. Có một số cách để cài đặt TinyOS trên máy tính: hệ điều hành Linux, window, máy ảo,vv.
Đặc trưng của hệ điều hành Tiny: • Viết bằng nesC
• Kiến trúc hướng sự kiện
• Khơng phân biệt khơng gian lõi/ người dùng • Ngăn xếp dùng chung
• Khơng quản lý q trình hoặc bộ nhớ • Khơng có bộ nhớ ảo
• Nhiều lớp trừu tượng
• Các thành phần liên kết tĩnh với nhau
• Trừu tượng hóa phần cứng hiện thời Utunbu ảo • Truy cập vào các cảm biến
• Truy cập vào bộ truyền động
• Bộ lập lịch (tác vụ, ngắt phần cứng) • Giao diện vơ tuyến
• Tin nhắn hoạt động (kết nối mạng)
• Lưu trữ (sử dụng bộ nhớ flash trên máy vi tính)
Chúng ta nên cài đặt một số điều kiện tiên quyết trước khi cài đặt TinyOS bằng cách mở Terminal và thêm dòng trong danh sách nguồn.