Tải Nghiên cứu và phát triển nút mạng Ad - Hoc có tính di động cao

Download miễn phí Nghiên cứu và phát triển nút mạng Ad - Hoc có tính di động cao


LỜI NÓI ĐẦU

Ngày nay trước nhu cầu bùng nổ thông tin, các công nghệ truyền tải, các mô hình mạng truyền thông cũng như các thiết bị thông tin cũng được phát triển một cách nhanh chóng. Một trong những mô hình mạng truyền thông có tính linh hoạt cao là mạng Ad-hoc đã được ra đời nhằm đáp ứng nhu cầu chia sẻ thông tin của con người.
Do việc không cố định vào cơ sở hạ tầng mạng cụ thể nên mang ad-hoc ngày càng được sử dụng rộng rãi. Mạng ad-hoc có tính chất linh động, không cố định nhờ vào các node mạng có tính di động. Mỗi node mạng trong cùng mạng Ad-hoc không nhất thiết phải sử dụng cùng 1 kiều kiến trúc và cùng hệ điều hành. Do đó việc cấu hình các node mạng cũng có tính chất linh hoạt. Hơn nữa các node mạng cần được thiết kế sao cho tính di động đạt hiệu quả cao.Vì vậy đồ án tập trung vào việc nghiên cứu cách triển khai mạng ad-hoc trên các node mạng sử dụng các hệ điều hành khác nhau và nghiên cứu về khả năng biên dịch nhân chéo để hỗ trợ các node mạng có tài nguyên thấp. Khi cần bảo trì hay nâng cấp mà tài nguyên của hệ thống rất khó khăn hay mất rất nhiều thời gian để thực hiện điều đó thì biên dịch chéo sẽ cho phép hỗ trợ việc nâng cấp dễ dàng hơn, mất ít thời gian hơn.



ÓM TẮT ĐỒ ÁN


Đồ án tập trung vào việc nghiên cứu hệ nhúng sử dụng trong mạng Ad-hoc (fit-pc slim, armadillo 300). Nghiên cứu việc xây dựng mạng ad-hoc trên hệ nhúng giúp tạo ra một mạng ad-hoc có tính linh hoạt cao, di động và không giới hạn về mặt kiến trúc phần cứng, hệ điều hành điều khiển các node mạng và vấn đề tài nguyên. Cùng với quá trình nghiên cứu, em cũng tham gia triển khai dự án “truyền video qua mạng ad-hoc”. Hệ thống cho phép người dùng thay đổi tham số video một cách dễ dàng cũng như tự thích ứng với điều kiện đường truyền. Ngoài ra, video được nhúng vào giao diện web tiếng Việt rất thân thiện với người dùng Việt Nam.
Nội dung đồ án gồm 5 chương:
Chương 1. Giới thiệu mạng Ad-hoc
Chương 2. Fit-pc Slim và Armadillo 300
Chương 3. Hệ điều hành Gentoo
Chương 4. Biên dịch chéo
Chương 5. Triển khai dự án và kết quả


MỤC LỤC


LỜI NÓI ĐẦUi
TÓM TẮT ĐỒ ÁNii
ABSTRACT. iii
LỜI CẢM ƠNiv
MỤC LỤCv
DANH SÁCH HÌNH VẼix
DANH MỤC BẢNG BIỂUxi
THUẬT NGỮ VIẾT TẮT. xii
MỞ ĐẦUxiv
CHƯƠNG I. GIỚI THIỆU MẠNG AD-HOC.1
1.1.Giới thiệu mạng Ad-hoc. 1
1.2.Đặc điểm của mạng Ad-hoc. 3
1.2.1.Đặc điểm chung của mạng wireless. 3
1.2.2.Những ưu điểm của mạng Ad hoc. 3
1.3.Sử dụng OLSR để định tuyến trên mạng Ad-hoc.4
1.3.1.Khái niệm về định tuyến.4
1.3.2.Định tuyến trên mạng Ad-hoc.5
1.3.3.Giao thức định tuyến OLSR.6
1.3.3.1.Giới thiệu về OLSR6
1.3.3.2.Một số khái niệm cơ bản trong OLSR.7
1.3.3.3.Nhận xét về giao thức định tuyến OLSR8
CHƯƠNG 2. FIT-PC SLIM & ARMADILLO 300. 10
2.1.Fit-pc Slim10
2.1.1.Giới thiệu về fit-pc slim10
2.1.2.Thông số kỹ thuật của fit-pc slim10
2.1.2.1.Phần cứng. 10
2.1.2.2.Phần mềm12
2.1.2.3.Các thông số đo đạc và điều kiện làm việc. 12
2.2.Armadillo 300. 13
2.2.1.Giới thiệu về Armadillo 300.13
2.2.2.Thông số kỹ thuật của Armadillo 300.13
2.2.2.1.Phần cứng. 13
2.2.2.2.Phần mềm15
2.2.2.3.Môi trường phát triển. 15
CHƯƠNG 3. HỆ ĐIỀU HÀNH GENTOO16
3.1.Giới thiệu về hệ điều hành Gentoo. 16
3.2.Sử dụng Gentoo. 16
3.2.1.Portage. 16
3.2.1.1.Giới thiệu Portage. 17
3.2.1.2.Cây portage. 17
3.2.1.3.Quản lý phần mềm18
3.2.2.USE flag. 27
3.2.2.1.Giới thiệu USE flag. 27
3.2.2.2.Sử dụng USE flag. 28
3.2.2.3.USE flag riêng cho mỗi gói32
3.2.3.Init Script33
3.2.3.1.Runlevel33
3.2.3.2.Sử dụng rc-update. 37
3.2.3.3.Cấu hình dịch vụ. 38
3.2.3.4.Viết Init Script39
3.2.4.Biến môi trường. 44
3.2.4.1.Giới thiệu biến môi trường. 44
3.2.4.2.Biến toàn cục. 46
3.2.4.3.Biến cục bộ. 48
CHƯƠNG 4 . BIÊN DỊCH CHÉO50
4.1.Giới thiệu biên dịch chéo cho Linux. 50
4.2.Các phương pháp biên dịch chéo. 51
4.2.1.Phương pháp tạo môi trường phát triển:51
4.2.2.Phương pháp biên dịch phân tán. 52
4.3.Tìm hiểu về biên dịch chéo. 53
4.3.1.Các bước của quá trình biên dịch chéo. 53
4.3.2.Cấu hình một trình biên dịch chéo. 53
4.3.3.Công cụ và thư viện cho một trình biên dịch chéo. 54
4.3.4.Các tập tin tiêu đề. 56
4.3.5.Thời gian thi hành. 57
4.3.6.Xây dựng chéo. 59
4.4.DISTCC60
4.4.1.Giới thiệu về DISTCC60
4.4.2.Cài đặt và cấu hình Distcc. 61
4.4.2.1.Distcc trên Gentoo. 61
4.4.2.2.Distcc trên Ubuntu. 62
CHƯƠNG 5. TRIỂN KHAI DỰ ÁN VÀ KẾT QUẢ63
5.1.Triển khai dự án. 63
5.1.1.Thiết lập mode Ad-hoc trên fit-pc.63
5.1.2.Cross compile cho fit-pc.65
5.1.3.Triển khai dự án truyền video trên mạng Ad-hoc.70
5.2.Kết quả. 82
KẾT LUẬN83
TÀI LIỆU THAM KHẢO84


Để tải bản Đầy Đủ của tài liệu, xin Trả lời bài viết này, Mods sẽ gửi Link download cho bạn sớm nhất qua hòm tin nhắn.
Ai cần download tài liệu gì mà không tìm thấy ở đây, thì đăng yêu cầu down tại đây nhé:
Nhận download tài liệu miễn phí

Tóm tắt nội dung tài liệu:

bằng biến môi trường
Để xem thiết lập USE cuối cùng được Portage sử dụng, hãy chạy emerge --info. Lệnh này sẽ liệt kê mọi biến liên quan (bao gồm biến USE) được dùng bởi Portage.
# emerge --info
Cập nhật lại toàn bộ hệ thống để sử dụng USE-flag mới
Nếu thay thế vài USE flag và muốn cập nhật lại toàn bộ hệ thống để dùng những USE flag này, hãy dùng tùy chọn --newuse của emerge:
# emerge --update --deep --newuse world
Kế tiếp hãy chạy depclean của Portage để loại bỏ những phụ thuộc theo điều kiện, đã được cài đặt trên hệ thống cũ, nhưng không còn được dùng bởi USE flag mới.
# emerge -p --depclean
Khi depclean hoàn tất, hãy chạy revdep-rebuild để điều chỉnh những ứng dụng được liên kết động với các thư viện đã bị loại bỏ. revdep-rebuild nằm trong gói gentoolkit; đừng quên emerge gói này.
# revdep-rebuild
Khi hoàn tất, hệ thống của bạn sẽ sử dụng những thiết lập USE flag mới.
USE flag riêng cho mỗi gói
Xem các USE flag hiện có
Hãy xem ví dụ về mozilla: những USE flag nào sẽ được dùng? Để biết, chúng ta dùng emerge với tùy chọn --pretend và --verbose:
# emerge --pretend --verbose mozilla
These are the packages that I would merge, in order:
Calculating dependencies ...done!
[ebuild N ] net-www/mozilla-1.5-r1 +java +crypt -ipv6 +ssl +ldap
+gnome -debug +mozcalendar -mozaccess -mozxmlterm -moznoirc -moznomail
-moznocompose -moznoxft
emerge không phải là công cụ duy nhất để thực hiện công việc này. Thực ra, một công cụ khác là equery nằm trong gentoolkit được tạo ra để cung cấp thông tin gói. Trước hết hãy cài đặt gentoolkit:
# emerge gentoolkit
Giờ hãy chạy equery với tham số uses để xem những USE flag của một gói nhất định. Ví dụ, với gói gnumeric:
# equery uses gnumeric
[ Colour Code : set unset ]
[ Legend : (U) Col 1 - Current USE flags ]
[ : (I) Col 2 - Installed With USE flags ]
U I [ Found these USE variables in : app-office/gnumeric-1.2.0 ]
- - libgda : Adds GNU Data Access (CORBA wrapper) support for gnumeric
- - gnomedb : unknown
+ + python : Adds support/bindings for the Python language
+ + bonobo : Adds support for gnome-base/bonobo (Gnome CORBA interfaces)
Init Script
Runlevel
Khởi động hệ thống
Khi bạn khởi động hệ thống, bạn sẽ để ý thấy rất nhiều dòng chữ trôi qua. Nếu bạn để ý kỹ hơn, bạn sẽ thấy những dòng này đều giống nhau mỗi lần khởi động hệ thống. Chuỗi những hoạt động này được gọi là chuỗi khởi động (boot sequence) và được định nghĩa cố định.
Trước hết boot loader của bạn sẽ nạp kernel image bạn định nghĩa trong phần cấu hình boot loader vào bộ nhớ. Sau đó nó yêu cầu CPU chạy kernel. Khi kernel được nạp và chạy, nó khởi động những cấu trúc và công việc đặc thù của kernel và khởi động tiến trình init.
Tiến trình này bảo đảm mọi hệ tập tin (định nghĩa trong /etc/fstab) được mount vào hệ thống để có thể dùng. Sau đó nó thực hiện một số script nằm trong /etc/init.d, để khởi động các dịch vụ theo thứ tự, nhằm khởi động toàn bộ hệ thống.
Cuối cùng, khi mọi script đã được thực hiện, init kích hoạt các terminal (trong hầu hết trước hợp, nó chỉ là virtual console, được kích hoạt bởi Alt-F1, Alt-F2, ...) và gắn mỗi terminal với một chương trình đặc biệt tên là agetty. Chương trình này sẽ bảo đảm bạn có thể đăng nhập vào những termminal này thông qua việc chạy login.
Init Script
Giờ init không đơn giản thực hiện các script trong /etc/init.d một cách ngẫu nhiên. Nó thậm chí không chạy mọi script trong /etc/init.d mà chỉ chạy những script được yêu cầu. Nó quyết định cần chạy những script nào bằng cách xem trong /etc/runlevels.
Trước hết, init chạy mọi script trong /etc/init.d có symbolic link bên trong /etc/runlevels/boot. Thông thường các script sẽ được chạy theo thứ tự bảng chữ cái, nhưng vài script có các thông tin script phụ thuộc bên trong, báo cho hệ thống biết cần chạy những script nào khác trước khi script này được chạy.
Khi mọi script trong /etc/runlevels/boot đã được chạy, init sẽ tiếp tục chạy các script có symbolic link trong /etc/runlevels/default. Tương tự như trên, các script sẽ được chạy theo thứ tự bảng chữ cái, trừ những script có thông tin phụ thuộc sẽ chạy những script phụ thuộc trước.
Cách init hoạt động
Dĩ nhiên init tự nó không quyết định tất cả. Nó cần tập tin cấu hình để cho biết những hành động nào cần thực hiện. Tập tin đó là /etc/inittab.
Nếu bạn còn nhớ chuỗi khởi động đã được mô tả, bạn sẽ nhớ rằng hành động đầu tiên của init là mount mọi hệ tập tin. Điều này được định nghĩa bởi động sau trong /etc/inittab:
si::sysinit:/sbin/rc sysinit
Dòng này cho init biết rằng nó phải chạy /sbin/rc sysinit để khởi động hệ thống. Script /sbin/rc sẽ đảm trách tiến trình khởi động này, vì thế bạn có thể nói rằng init không thực hiện gì nhiều -- nó chỉ việc giao công việc khởi động hệ thống cho chương trình khác.
init thực hiện mọi script có symbolic link trong /etc/runlevels/boot. Điều đó được mô tả bằng dòng sau:
rc::bootwait:/sbin/rc boot
Một lần nữa, script rc thực hiện những công việc cần thiết. Chú ý rằng tùy chọn cho rc (boot) là tên thư mục con trong /etc/runlevels cần dùng để khởi động.
Giờ init kiểm tra tập tin cấu hình của nó để xem cần chạy runlevel nào kế tiếp. Để quyết định, nó đọc dòng sau từ /etc/inittab:
id:3:initdefault:
Trong trường hợp này (cũng là trường hợp được dùng nhiều nhất), runlevel là 3. Dùng thông tin này, init sẽ kiểm tra xem nó cần chạy những gì trong runlevel 3:
l0:0:wait:/sbin/rc shutdown
l1:S1:wait:/sbin/rc single
l2:2:wait:/sbin/rc nonetwork
l3:3:wait:/sbin/rc default
l4:4:wait:/sbin/rc default
l5:5:wait:/sbin/rc default
l6:6:wait:/sbin/rc reboot
Dòng định nghĩa runlevel 3, một lần nữa lại dùng script rc để khởi động những dịch vụ (bây giờ lại dùng tham số default). Chú ý là tham số của rc cũng là tên thư mục con trong /etc/runlevels.
Khi rc chạy xong, init quyết định cần kích hoạt những virtual console nào và những lệnh gì cần chạy trên mỗi console:
c1:12345:respawn:/sbin/agetty 38400 tty1 linux
c2:12345:respawn:/sbin/agetty 38400 tty2 linux
c3:12345:respawn:/sbin/agetty 38400 tty3 linux
c4:12345:respawn:/sbin/agetty 38400 tty4 linux
c5:12345:respawn:/sbin/agetty 38400 tty5 linux
c6:12345:respawn:/sbin/agetty 38400 tty6 linux
Runlevel
Init dùng mô hình đánh số để quyết định runlevel nào cần kích hoạt. Runlevel là một trạng thái của hệ thống và chứa một tập các script (runlevel script hay initscript) cần được thực hiện để vào hay thoát một runlevel.
Trong Gentoo, có vài bảy runlevel được định nghĩa: ba runlevel nội bộ, và bốn runlevel do người dùng định nghĩa. Những runlevel nội bộ là sysinit, shutdown và reboot và thực hiện chính xác như tên của chúng: khởi động hệ thống, tắt máy, khởi động lại máy.
Những runlevel do người dùng định nghĩa là những cái đi kèm với thư mục con tương ứng trong /etc/runlevels: boot, default, nonetwork và single. Runlevel boot khởi động mọi dịch vụ cấp hệ thống mà những runlevel khác sử dụng. Ba runlevel còn lại khác nhau ở những dịch vụ được khởi động: default được dùng cho hoạt động hằng ngày, nonetwork được dùng trong trường hợp không cần mạng, và single được dùng khi bạn cần sửa chữa hệ thống.
Sử dụng Init Script
Các script được rc chạy gọi là init script. Mỗi script trong /etc/init.d có thể được chạy với tham số start, stop, restart, pause, zap, status, ineed, iuse, ...
 
Các chủ đề có liên quan khác
Tạo bởi Tiêu đề Blog Lượt trả lời Ngày
D Nghiên cứu thành phần hóa học và đánh giá tác dụng diệt tế bào ung thư của lá Xạ đen Y dược 0
D Nghiên Cứu Đặc Điểm Lâm Sàng Và Kết Quả Điều Trị Bệnh Thủy Đậu Bằng Zincpaste Y dược 0
D Nghiên cứu quy trình tổng hợp vật liệu aerogels từ xơ dừa và ứng dụng hấp phụ Khoa học Tự nhiên 0
D Nghiên Cứu, Chế Tạo Carbon Cellulose Aerogel Từ Hỗn Hợp Sợi Lá Dứa Và Sợi Cotton Ứng Dụng Trong Hấp Phụ Khoa học Tự nhiên 0
D Nghiên cứu và thiết kế mô hình học tập hệ thống phun xăng đánh lửa và chẩn đoán trên ô tô Khoa học kỹ thuật 0
D nghiên cứu các phương pháp phân lớp dữ liệu và ứng dụng trong bài toán dự báo thuê bao rời mạng viễn thông Công nghệ thông tin 0
D Nghiên cứu về mạng Nơron tích chập và ứng dụng cho bài toán nhận dạng biển số xe Công nghệ thông tin 0
D Nghiên cứu và đề xuất quy trình xây dựng hệ thống mạng an toàn Công nghệ thông tin 0
D Nghiên cứu một số chỉ tiêu sinh sản trên đàn chuột nhắt trắng giống Swiss nuôi tại Viện kiểm định Quốc gia vắc xin và sinh phẩm y tế Nông Lâm Thủy sản 0
D Nghiên cứu quy trình phân lập và sản xuất sinh khối sợi nấm lim xanh Nông Lâm Thủy sản 0

Các chủ đề có liên quan khác

Top