TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP TP. HỒ CHÍ MINH
KHOA CÔNG NGHỆ ĐIỆN TỬ
THUYẾT TRÌNH
HỆ THỐNG NHÚNG
Đề tài:
Chương 11: XÁC ĐỊNH CHƢƠNG TRÌNH KHỞI TẠO VÀ
TÀI LIỆU LIÊN QUAN ĐẾN THIẾT KẾ HỆ THỐNG NHÚNG
GVHD: ThS. Phan Vinh Hiếu
Danh sách nhóm:
1. Trần Nhật Quang 09079551
2. Nguyễn Vũ Châu 09090541
3. Bùi Tấn Vang 09083181
4. Phạm Thế Linh 09193371
5. Trần Văn Hƣng 09218441
6. Nguyễn Hồng Phúc 09215081
TP. Hồ Chí Minh, tháng 6 năm 2012 2
Chương 11
XÁC ĐỊNH CHƢƠNG TRÌNH KHỞI TẠO
VÀ TÀI LIỆU LIÊN QUAN ĐẾN THIẾT KẾ HỆ THỐNG NHÚNG
Trong Chƣơng này
- Xác định các giai đoạn tạo ra một kiến trúc hệ thống nhúng.
Tạo ra các
thiết kế kiến trúc
Cung cấp phiên bản
kiến trúc cuối cùng
Phát triển [thực hiện]
hệ thống
Xem xét và thử
nghiệm hệ thống
Phân phối & bảotrì
hệ thống
Cung cấp phiên
bản kiến trúc
Giai đoạn1:Tạo Kiến trúc
Kết hợp thông
tin phản hồi
Xem xét & lấy
thông tin phản hồi
Giai đoạn2:Thực hiện kiến trúc
Giai đoạn3:Kiểm tra hệ thống
Giai đoạn4:Duy trì hệ thống
Kết hợp thông
tin phản hồi
3 Mô hình này chỉ ra rằng quy trình thiết kế một hệ thống nhúng và đƣa nó ra thị trƣờng
có bốn giai đoạn:
- Giai đoạn 1: Tạo kiến trúc, là quá trình lập kế hoạch thiết kế hệ thống nhúng.
- Giai đoạn 2: Thực hiện kiến trúc, là quá trình phát triển hệ thống nhúng.
- Giai đoạn 3: Kiểm tra hệ thống, là quá trình thử nghiệm các vấn đề của hệ thống
4
1. Giai đoạn 1.Có một cơ sở kĩ thuật vững chắc
2. Giai đoạn 2. Hiểu biết về vòng thƣơng mại kiến trúc
3. Giai đoạn 3. Xác định mô hình kiến trúc và các mô hình tham khảo
4. Giai đoạn 4. Tạo các hệ thống kiến trúc
5. Giai đoạn 5. Tài liệu về kiến trúc
6. Giai đoạn 6. Phân tích và đánh giá kiến trúc
Sáu giai đoạn này phục vụ để nghiên cứu các phƣơng pháp thiết kế kiến trúc trong
công nghiệp. Tuy nhiên, nếu thời gian và nguồn lực hạn chế mà phải nghiên cứu nhiều
đề án kiến trúc khác nhau trƣớc khi bắt đầu thiết kế một sản phẩm chính thức, thì sáu
giai đoạn này có thể đƣợc sử dụng trực tiếp nhƣ là một mô hình đơn giản để tạo ra
một kiến trúc. Phần còn lại của chƣơng này sẽ cung cấp thêm chi tiết về sáu giai đoạn
này.
Tác giả lưu ý: Cuốn sách này cố gắng cung cấp một quy trình đơn giản để tạo ra một
hệ thống nhúng dựa trên một số phương pháp phức tạp hơn trong công nghiệp. Tác
giả cố gắng tránh các phương pháp phức tạp đó bằng cách sử dụng rất nhiều thuật
ngữ cụ thể, bởi vì các thuật ngữ theo cách hiểu khác nhau có thể có định nghĩa khác
nhau, cũng như các thuật ngữ khác nhau có thể có ý nghĩa giống hệt nhau.
Giai đoạn 1: Cơ sở kỹ thuật vững chắc
Giai đoạn 1 là các kiến thức trình bày trong chƣơng 2 đến chƣơng 10 của cuốn sách
này. Một kỹ sƣ hoặc lập trình viên sẽ phát triển và làm việc với tất cả các thành phần
của một hệ thống nhúng, bao gồm tất cả các yếu tố có thể đƣợc thực hiện trong một hệ
thống nhúng. Điều này bao gồm các hoán vị của cả phần cứng và phần mềm, hoặc có
thể là đại diện trong các mô hình hệ thống nhúng, chẳng hạn nhƣ mô hình Von-
Neumann, mô hình này cho thấy các thành phần chính có thể đƣợc tìm thấy trên một
board nhúng (đƣợc hiển thị trong hình11-2a) hoặc các thành phần phức tạp hơn có thể
có thể tồn tại trong phần mềm lớp hệ thống (thể hiện trong hình 11-2b).
5
Bộ nhớ
Dữ liệu vào
Dữ liệu ra
Dữ liệu từ CPU hay thiết bị đầu vào lƣu trữ
trong bộ nhớ cho đến khi một CPU hoặc thiết bị
đầu ra nhận đƣợc yêu cầu xử lí.
5 thành phần hệ thống thƣờng
Kết nối qua Bus
Bộ nhớ
Truyền dữ liệu ra hệ thống nhúng
Truyền dữ liệu vào hệ thống nhúng
Dữ liệu vào
Dữ liệu ra
Lớp phần cứng
Lớp phần mềm hệ thống
Lớp phần cứng
Lớp phần mềm hệ thống
Lớp phần cứng
Lớp phần mềm hệ thống
Phần cứng
Phần mềm lớp hệ thống
Phần mềm lớp ứng dụng
Lớp hƣớng thiếtbị
Lớp phần mềm
ứngdụng
Lớp trung gian
Lớp phần mềm
ứngdụng
Lớp hƣớng thiết bị
Lớp phần mềm
hƣởng này không chỉ giới hạn trong ngành kĩ thuật.
- Bƣớc 2. Xác định tất cả các ảnh hƣởng cụ thể của vòng ABC về thiết kế, bao gồm
kỹ thuật, thƣơng mại, chính trị và xã hội.
- Bƣớc 3. Tham gia các buổi hội thảo khác nhau càng sớm càng tốt, phát triển và thu
thập các yêu cầu của hệ thống.
- Bƣớc 4. Xác định phần cứng cần thiết hoặc các yếu tố phần mềm có thể đáp ứng yêu
cầu thu thập.
Trang trƣớc giới thiệu chi tiết các bƣớc 1 và 2, các phần tiếp theo của chƣơng này sẽ
thảo luận cụ thể hơn các bƣớc 3 và 4.
Thu thập yêu cầu
Khi danh sách các yếu tố ảnh hƣởng đã đƣợc xác định, thì yêu cầu về kiến trúc của hệ
thống sẽ đƣợc thu thập. Theo đó, thông tin thu đƣợc từ các yếu tố ảnh hƣởng khác
nhau có thể khác nhau, tùy thuộc vào từng dự án, thông tin có đƣợc qua truyền miệng
- điều này không đƣợc khuyến khích.
Bất kể phƣơng pháp nào đƣợc sử dụng cho các yêu cầu thu thập, điều quan trọng cần
nhớ là phải xác định thông tin cần thu thập có đƣợc từ văn bản hoặc tài liệu nào,
không có phân biệt về vấn đề hình thức và thông tin đó nên đƣợc lƣu lại. Khi câu lệnh
có yêu cầu sẽ làm giảm xác suất nhầm lẫn, bởi vì tài liệu bằng văn bản có thể đƣợc
tham chiếu để giải quyết các vấn đề liên quan.
Các loại thông tin phải đƣợc thu thập bao gồm các yêu cầu chức năng và phi chức
năng của hệ thống. Do sự đa dạng của các hệ thống nhúng, điều khó khăn trong cuốn
sách này là cung cấp một danh sách các yêu cầu chức năng có thể áp dụng cho tất cả
nhúng hệ thống. Mặt khác, yêu cầu phi chức năng có thể áp dụng cho một loạt các hệ
thống nhúng và sẽ đƣợc sử dụng trong chƣơng này ở các ví dụ sau. Hơn nữa, từ yêu
cầu phi chức năng thì một số yêu cầu chức năng có thể đƣợc khởi tạo. Điều này là cần
thiết cho những ngƣời không có yêu cầu chức năng cụ thể nào vào lúc bắt đầu của một
dự án và chỉ có một khái niệm chung chung về chức năng của các thiết bị có trong
thiết kế. Các phƣơng pháp cần thiết nhất cho sự hiểu biết về các yêu cầu phi chức
năng thông qua bảng phác thảo tính năng chung ABC và đƣợc sử dụng để “làm mẫu”.
Tính năng chung của bảng ABC là cho thấy ảnh hƣởng của các yêu cầu đến đặc điểm
bao nhiêu, hỗ trợ kĩ thuật cho thiết bị trên thị
trƣờng nhƣ thế nào,…
Vòng đời
thiết bị
Các thiết bị tồn tại bao lâu trên thị trƣờng, thiết bị
sẽ sử dụng đƣợc bao lâu trong các lĩnh vực,
Mục tiêu
thị trƣờng
Chủng loại thiết bị, đối tƣợng khách hàng…
Lịch trình
Thiết bị đƣợc sản xuất khi nào, khi nào hoàn thành
và sẵn sàng để đƣợc triển khai ra thị trƣờng.
Khả năng
Xác định danh sách các tính năng thiết bị cần phải
có cho mục tiêu thị trƣờng, những việc làm cần
thiết khi vận chuyển từ nơi sản xuất, hiểu rõ tất cả
lỗi nghiêm trọng có thể xảy ra trong lúc vận chuyển
sản phẩm,…
Rủi ro
Các vụ kiện về tính năng thiết bị, trục trặc, phát
hành sản phẩm không đúng nhƣ dự kiến, không đáp
ứng mong đợi của khách hàng,…
Kỹ thuật
Hiệu suất
Các thiết bị hoạt động có đáp ứng nhu cầu ngƣời
dùng hay không, các yêu cầu có đƣợc thực hiện hay
không thông qua các vi xử lí,……
Thân thiện với
(Xem Bảng Tiêu chuẩn Công nghiệp dƣới đây.)
Phụ lục
( Xem Bảng Tiêu chuẩn thƣơng mại dƣới đây )
Công nghiệp
Tiêu chuẩn
Tiêu chuẩn ngành công nghiệp (đƣợc giới thiệu
trong Chƣơng 2), có thể là tiêu chuẩn cuả một lĩnh
vực cụ thể (ví dụ, tiêu chuẩn truyền hình, tiêu
chuẩn thiết bị y tế, …) hay nói chung mục đích
tổng quát là tạo điểm chung của các thiết bị khác
nhau ( tiêu chuẩn ngôn ngữ lập trình, tiêu chuẩn kết
nối mạng, )
Tiêu chuẩn
chất lƣợng
Thử nghiệm
( Xem Bảng kỹ thuật ở trên)
Sẵn sàng
Khi độ khả dụng của hệ thốngđƣợc kiểm tra.
Phụ lục
(Xem Bảng công nghiệp ở trên.)
Các tính năng
(Xem Bảng thƣơng mại ở trên.)
Tiêu chuẩn bảo
đảm chất lƣợng
ISO 9000, ISO 9001. (Xem Bảng ngành công
nghiệp trên.)
Khách hàng
Chi phí
Chi phí sản xuất thiết bị là bao nhiêu, tốn bao nhiêu
chi phí để sửa chữa hoặc nâng cấp thiết bị,
đặc trƣng, từ đặc trƣng ảnh hƣởng, một phần cứng cụ thể hoặc thành phần phần mềm
đƣợc thực hiện.
Một số trong những lý do chính để xem xét các giải pháp tƣơng tự là để tiết
kiệm thời gian và tiền bạc bằng bộ gom, ý tƣởng về những gì là khả thi, những vấn đề
hoặc hạn chế có liên quan với một giải pháp đặc biệt, và nếu kỹ thuật mẫu thử nghiệm
là một ghép hợp lý, sự hiểu biết tại sao đó là trƣờng hợp. Nếu có thực sự là không có
thiết bị trên thị trƣờng phản ánh bất kỳ yêu cầu của hệ thống, bằng cách sử dụng một
bảng tham khảo có sẵn và phần mềm hệ thống có sẵn là một phƣơng pháp nhanh
12
chóng để tạo ra mẫu thử của riêng bạn. Bất kể mẫu thử đƣợc tạo ra nhƣ thế nào, nó là
một công cụ hữu ích trong việc mô hình hóa và phân tích thiết kế và hành vi của một
kiến trúc tiềm năng.
Suy ra phần cứng và phần mềm từ các yêu cầu
Sự hiểu biết và áp dụng các yêu cầu để lấy đƣợc phần cứng và phần mềm khả
thi
các giải pháp cho một thiết kế đặc biệt có thể đƣợc thực hiện thông qua:
1. Xác định một tập hợp các bản phác thảo yêu cầu.
2. Phác thảo chiến thuật cho mỗi bản có thể đƣợc sử dụng để mang lại những
mong muốn hệ thống phản ứng.
3. Sử dụng chiến thuật nhƣ kế hoạch chi tiết cho những gì chức năng là cần
thiết trong thiết bị, và sau đó lấy đƣợc từ một danh sách các phần cứng cụ thể và các
yếu tố phần mềm có chứa chức năng này.
Nhƣ thể hiện trong hình 11-5, phác thảo một kịch bản có nghĩa là xác định:
các nguồn tác nhân kích thích bên ngoài và nội bộ tƣơng tác với hệ thống
nhúng
các hành động và các sự kiện, hoặc các tác nhân kích thích, gây ra bởi các
nguồn tác nhân kích thích.
các môi trƣờng hệ thống nhúng là trong khi có tác nhân kích thích diễn
ra,chẳng hạn nhƣ trong lĩnh vực áp suất bình thƣờng, trong nhà máy bị áp suất
dụng nhƣ là một vấn đề hiệu suất với toàn bộ hệ thống.
Trong trƣờng hợp này này, một hệ thống mong muốn phản ứng là cho các thiết bị để
xử lý và phản ứng giai đoạn một cách kịp thời, một chỉ số có thể là hệ thống đáp ứng
việc thực hiện mong muốn yêu cầu. Để chứng minh rằng hiệu suất của hệ thống nhúng
đáp ứng cụ thể thực hiện dựa trên yêu cầu, hệ thống phản ứng có thể đƣợc đo và xác
minh thông qua, độ trễ hay mất mát dữ liệu đáp ứng các biện pháp hệ thống.
14 Với trƣờng hợp hiệu suất thể hiện trong hình 11-6a, một phƣơng pháp mà theo
đó để mang lại sự hệ thống phản ứng mong muốn là để kiểm soát khoảng thời gian mà
các tác nhân kích thích đƣợc xử lý và phản ứng tạo ra. Trong thực tế, bằng cách xác
định các biến cụ thể tác động đến khoảng thời gian, sau đó bạn có thể xác định chiến
thuật cần thiết để kiểm soát các biến này. Các chiến thuật sau đó có thể đƣợc sử dụng
xác định các yếu tố cụ thể trong một kiến trúc sẽ thực hiện các chức năng chiến thuật
để cho phép để thực hiện mong muốn của thiết bị.
Ví dụ, thời gian đáp ứng, một phản ứng hệ thống biện pháp trong trƣờng hợp
này bị ảnh hƣởng bởi sẵn có và sử dụng các nguồn tài nguyên trong một thiết bị. Nếu
có rất nhiều tranh cãi giữa nhiều sự kiện mà muốn truy cập vào cùng một tài nguyên,
chẳng hạn nhƣ các sự kiện có để ngăn chặn và chờ đợi cho các sự kiện khác để hoàn
thành bằng cách sử dụng một nguồn tài nguyên, thời gian chờ đợi cho nguồn tài
nguyên ảnh hƣởng đến thời gian đáp ứng. Nhƣ vậy, một chiến thuật quản lý nguồn tài
nguyên đƣợc hiển thị trong hình 11-6b phân xử và quản lý các yêu cầu của sự kiện
cho phép sử dụng công bằng và tối đa các nguồn lực có thể đƣợc sử dụng để giảm thời
virus. Những nguồn này có thể tạo ra các sự kiện mà nó có thể truy cập tài nguyên hệ
thống, chẳng hạn nhƣ các nội dung bộ nhớ. Theo tình huống này, môi trƣờng trong đó
những sự kiện này có thể xảy ra khi các thiết bị nhúng kết nối với một mạng và có trao
đổi dữ liệu. Trong ví dụ này, các nguồn kích thích tạo ra các sự kiện tác động an ninh
bất kỳ bộ nhớ chính hay tài nguyên hệ thống truy cập vào các nguồn kích thích. Trong
quá trình này, hệ thống đáp ứng yêu cầu cho các thiết bị nhúng bao gồm việc bảo vệ,
hồi phục và chống lại một cuộc tấn công hệ thống. Mức độ và hiệu quả của hệ thống
an ninh đƣợc đo trong ví dụ này bằng các biện pháp đáp ứng hệ thống chẳng hạn nhƣ
xác định mức độ thƣờng xuyên của hành vi vi phạm bảo mật xảy ra, phải mất bao lâu
để các thiết bị phục hồi từ lúc vi phạm an ninh xảy ra, khả năng phát hiện và bảo vệ
chống lại các cuộc tấn công an ninh trong tƣơng lai. Với tình huống an ninh thể hiện
trong hình 11-7a, là một trong những phƣơng pháp mà theo đó một hệ thống nhúng
phản ứng để nó có thể chống lại một cuộc tấn công hệ thống kiểm soát truy cập các
nguồn bên ngoài có tài nguyên hệ thống nội bộ.
Hình 11-7a: tổng quát tình huống an ninh ABC
Để thao tác truy cập vào tài nguyên hệ thống, ngƣời ta có thể kiểm soát các biến số tác
động đến hệ thống thông qua việc xác thực của các nguồn bên ngoài truy cập vào hệ
thống, và thông qua việc giới hạn truy cập vào tài nguyên của hệ thống nguồn. Vì vậy,
việc ủy quyền và xác thực đƣợc hiển thị trong hình 11 7b-có thể đƣợc sử dụng để cho
phép một thiết bị theo dõi các nguồn truy cập vào thiết bị và sau đó từ chối truy cập
đến các nguồn có hại bên ngoài, do đó tăng khả năng bảo vệ cho hệ thống. Với một
nguồn tài nguyên bị ảnh hƣởng bởi một hành vi vi phạm an ninh, chẳng hạn nhƣ bộ
nhớ chính,vd: bộ nhớ và quá trình quản lý nhƣ những ngƣời đƣợc tìm thấy trong hệ
thống điều hành, an ninh và các bộ nhớ chƣơng trình phân bổ bao gồm khi sử dụng
17
một số ngôn ngữ lập trình nhƣ Java, và các giao thức bảo mật mạng ví dụ về các yếu
tố phần mềm và phần cứng có thể hỗ trợ truy cập quản lý bộ nhớ nguồn tài nguyên.
Ví dụ này cho thấy rằng việc đƣa ra các tác vụ ( truy cập / xóa / tạo ra các dữ liệu trái
bộ nhớ sử dụng, vv), và nhận đƣợc đầu ra dựa trên yêu cầu.
Vì vậy, một chiến thuật giám sát nội bộ, nhƣ thể hiện trong hình 11-8b, có thể đƣợc sử
dụng để cung cấp nguồn kích thích với khả năng giám sát các hoạt động nội bộ của hệ
thống và cho phép cơ chế giám sát nội bộ để chấp nhận đầu vào và cung cấp kết quả
đầu ra. Chiến thuật này làm tăng khả năng kiểm tra của hệ thống, vì làm thế nào có thể
thử nghiệm một hệ thống thƣờng phụ thuộc nhƣ thế nào có thể nhìn thấy và truy cập
các hoạt động nội bộ của hệ thống.
19 Hình 11-8b: Sơ đồ khả năng kiểm tra ABC
Xây dựng trong màn hình nhƣ những ngƣời đƣợc tìm thấy trên bộ vi xử lý khác nhau,
hoặc chƣơng trình con về các phần mềm gỡ lỗi tích hợp vào phần mềm hệ thống có
thể đƣợc gọi là một trình sửa lỗi hệ thống để thực hiện các bài kiểm tra khác nhau, là
những ví dụ của các yếu tố có thể cung cấp giám sát nội bộ của một hệ thống. Những
phần cứng và các yếu tố phần mềm là những ví dụ của những gì có thể đƣợc bắt
nguồn từ tình huống này. Trong ngắn hạn, ví dụ này chứng minh rằng việc đƣa ra các
kích thích (hoàn thành yếu tố và sẵn sàng để đƣợc kiểm tra) và một hệ thống phản ứng
mong muốn (dễ dàng kiểm tra các yếu tố và quan sát kết quả), một chiến thuật sau đó
có thể đƣợc bắt nguồn (giám sát nội bộ của hệ thống) để đạt đƣợc các mong muốn hệ
thống đo lƣờng thông qua một hệ thống phản ứng (dễ dàng kiểm tra các yếu tố và
quan sát kết quả) biện pháp phản ứng (kết quả thử nghiệm, thời gian thử nghiệm, kiểm
tra độ chính xác, vv).
Lƣu ý: Trong khi những ví dụ rõ ràng chứng minh làm thế nào các yếu tố bên trong
một kiến trúc có thể đƣợc bắt nguồn từ yêu cầu chung (thông qua các tình huống và
chiến thuật của họ), họ cũng ngầm chứng minh rằng các chiến thuật cho một trong
những yêu cầu có thể là phản tác dụng yêu cầu khác. Ví dụ, các chức năng cho phép
bảo mật có thể ảnh hƣởng đến hiệu suất hoặc chức năng cho phép để thử nghiệm khả
năng truy cập có thể tác động đến an ninh của hệ thống. Ngoài ra, lƣu ý rằng:
- một yêu cầu có thể có nhiều chiến thuật
21
Những thông tin về hệ thống có thể liên quan đến việc đƣa ra những kiểu phần cứng
và phần mềm có liên quan cho các thiết bị. Hình 11-10 đƣa ra mô hình tham khảo cho
các DTV-STB (Digital TV set-top box: hộp giải mã tivi kỹ thuật số).
Hình 11-10: Mô hình tham khảo của DTV-STB
Theo khuyến nghị của tác giả: Nếu các yêu cầu phần mềm đƣợc biết đến, sơ đồ và
phân tích càng nhiều yếu tố phần mềm lớn (tức là hệ điều hành, JVM, các ứng dụng,
mạng, v v ) thì nó có thể hoàn thành trƣớc các yếu tố phần cứng. Đó là bởi vì phần
22
cứng bị hạn chế (có thể nâng cấp) đƣợc thực hiện thông qua phần mềm. Phần cứng
sau đó sẽ tƣơng thích với cấu hình phần mềm, các bộ vi xử lý chính với các mô hình
khác nhau. Điều này có thể bao gồm loại bỏ một số chức năng hoặc thực hiện một số
thành phần phần mềm trong phần cứng.
Chọn phần cứng thương mại có sẵn và phần mềm
Dù các yếu tố thực hiện theo cách nào vào một kiến trúc, tất cả thƣờng phải đáp ứng
một tập hợp của các tiêu chí cơ bản, cả chức năng và phi chức năng, nhƣ thể hiện
trong giai đoạn 2, chẳng hạn nhƣ:
* Chi phí. Nên mua hay tự làm ra? Tích hợp và triển khai các yếu tố, thành phần có
hạn chế bớt chi phí không?
* Thời gian đưa ra thị trường. Các yếu tố sẽ đáp ứng các yêu cầu trong khung thời
gian quy định (tức là việc đảm bảo các sự kiện quan trọng trong suốt quá trình, thời
gian sản xuất, ….) ?
* Hiệu suất. Các yếu tố có đáp ứng sự hài lòng của ngƣời dùng? hoặc cho các yếu tố
khác phụ thuộc nó ?
Sản phẩm 3
KHÔNG
CÓ
Các tính năng
KHÔNG
Sản phẩm 4
CÓ
Các tính năng
Chƣa có
Trong 3 tháng
KHÔNG
Trong 6 tháng 23
Sản phẩm Sản phẩm "N"
Để thực hiện các ứng dụng nhúng là phần cứng và hệ thống phần mềm độc lập, Java,
ngôn ngữ Net (C#, Visual Basic, v v ), ngôn ngữ Script phổ biến nhất ngôn ngữ cấp
cao cho sự lựa chọn. Để có thể chạy các ứng dụng viết bằng các ngôn ngữ này, một
24
JVM (Java), NET Framework Compact (C #, Visual Basic, vv), và một phiên dịch
(cho các ngôn ngữ nhƣ JavaScript, HTML , Perl, vv ) đều cần phải đƣợc đƣa trong
kiến trúc. Với mong muốn cho phần cứng và phần mềm ứng dụng hệ thống độc lập,
các API (Application Programming Interface: giao diện lập trình ứng dụng) chính xác
phải đƣợc hỗ trợ trên thiết bị theo thứ tự cho các ứng dụng chạy. Ngoài ra, nếu yếu tố
này không đƣợc thực hiện trong phần cứng (ví dụ, JVM trong một bộ xử lý Java), sau
đó nó phải đƣợc thực hiện trong các ngăn xếp phần mềm hệ thống hoặc một phần của
hệ điều hành, chuyển đến hệ điều hành và bộ vi xử lý chính (nhƣ là trƣờng hợp
với .NET đến WinCE hoặc một JVM chuyển đến VxWorks, Linux, MIPS ) hoặc nó
cần đƣợc thực hiện nhƣ một phần của ứng dụng (ví dụ, HTML, JavaScript trong một
trình duyệt, một JVM trong một tập tin .exe trên WinCE hoặc tập tin .prc trên PalmOS,
v v ). Ngoài ra, lƣu ý, nhƣ với bất kỳ yếu tố phần mềm khác đƣợc giới thiệu trong
kiến trúc, sức mạnh xử lý tối thiểu và yêu cầu bộ nhớ trong phần cứng của các hệ
thống có chứa các yếu tố ngôn ngữ cấp cao để cho các mã đƣợc viết bằng các ngôn
ngữ này thực hiện một cách hợp lý.
Ta có ví dụ để miêu tả là một hệ thống nhúng có thể đƣợc dựa trên một số ngôn ngữ
khác nhau (ví dụ nhƣ hợp ngữ, C, Java,….). Nhƣ thể hiện trong hình 11-12, cho ta
thấy những gì các ngôn ngữ đáp ứng chức năng và yêu cầu phi chức năng của thiết bị.
Thời gian thực
Hiệu suất nhanh
MHP-
Spec
ATVEF-
Spec
Không
yêu cầu
Không
yêu cầu
.NetCE
(C #)
KHÔNG
WinCE không có
RTOS
Phụ thuộc vào bộ vi xử lý,
chậm hơn so với C trên bộ vi
xử lý tối thiểu.
Không
yêu cầu
Không
yêu cầu
Không
yêu cầu
JVM
(Java)
Phụ thuộc vào
JVM và hệ điều
hành có RTOS
Phụ thuộc vào mã byte của
JVM, chậm hơn so với C trên
bộ vi xử lý tối thiểu
CÓ
Không
3. Điều gì cần thiết để hỗ trợ một hệ điều hành trong việc thiết kế?
4. Làm thế nào để lựa chọn hệ điều hành tốt nhất phù hợp với các yêu cầu?
Các thiết bị nhúng dựa trên bộ vi xử lý 32-bit (hoặc cao hơn) thƣờng có một hệ điều
hành, bởi vì các hệ thống này thƣờng phức tạp hơn và có nhiều megabytes mã để quản
lý. Đôi khi các yếu tố khác trong kiến trúc đòi hỏi một hệ điều hành trong hệ thống,
chẳng hạn nhƣ một JVM hoặc NET Compact Framework đƣợc thực hiện trong các
ngăn xếp phần mềm hệ thống.
Một hệ điều hành là cần thiết hay không, nó phụ thuộc vào yêu cầu và sự phức tạp của
hệ thống. Ví dụ, nếu xử lý đa nhiệm, lịch công việc trong một chƣơng trình cụ thể,
quản lý tài nguyên một cách tƣơng đối, quản lý bộ nhớ ảo và rất nhiều mã ứng dụng
quan trọng, thì lúc này ta sử dụng một hệ điều hành sẽ không chỉ đơn giản hóa toàn bộ
dự án mà có thể rất quan trọng để hoàn thành nó. Để có thể giới thiệu một hệ điều
hành vào bất kỳ thiết kế, ta cần xem xét đến: sức mạnh xử lý, bộ nhớ, và chi phí. Điều
này cũng có nghĩa là hệ điều hành cần hỗ trợ phần cứng (nhƣ chip xử lý chính…)
Lựa chọn một hệ điều hành phổ biến, một lần nữa, quay lại để tạo ra bảng với yêu cầu
và các tính năng hệ điều hành. Các tính năng trong bảng này có thể bao gồm:
* Chi phí. Khi mua một hệ điều hành, nhiều chi phí cần phải đƣợc xem xét. Ví dụ, nếu
công cụ phát triển đi kèm với một gói phần mềm hệ điều hành, thƣờng sẽ có một
khoản phí cho các công cụ đó, cũng nhƣ một khoản phí giấy phép lƣu hành của hệ
điều hành. Một số công ty tính phí một lần lệ phí cấp giấy phép hệ điều hành, trong