Tải bản đầy đủ (.pdf) (83 trang)

Phân tích thiết kế hệ thống thời gian thực theo cách tiếp cận hướng đối tượng với UML

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.11 MB, 83 trang )

Lê Bá Huỳnh Cơng

Khoa học máy tính

PHẦN MỞ ĐẦU
Cùng với xu hƣớng phát triển ngành công nghệ thông tin, công nghệ
phần mềm đã và đang trở thành lĩnh vực mũi nhọn của nhiều quốc gia trên
thế giới. Ngày nay, việc phát triển một phần mềm với qui mô và chất lƣợng
cao khơng cịn là cơng việc đơn lẻ của những nhà lập trình, mà đó là sản
phẩm của một tập thể, một cơng ty phần mềm theo một qui trình công nghệ
chuẩn đƣợc quản lý chặt chẽ và đƣợc hỗ trợ tối đa bởi các công cụ và môi
trƣờng phát triển phần mềm. Do đó, việc lập trình ngày càng trở nên dễ
dàng hơn và nhƣờng lại vai trò mấu chốt cho việc phân tích và thiết kế phần
mềm, trong đó quan trọng nhất là đặc tả và mơ hình thế giới thực, mọi ứng
dụng trong thế giới thực có thể “tin học hoá” đều đƣợc suy nghĩ đến để đặc
tả, xây dựng và phát triển. Nhiều công việc trƣớc đây phải do con ngƣời
trực tiếp thực hiện, thì nay ứng dụng hệ thống thời gian thực thiết kế các
sản phẩm phần mềm công nghiệp thay thế con ngƣời trong nhiều lĩnh vực,
với những công việc nặng nhọc và nguy hiểm, ứng dụng trong gia đình nhƣ
máy giặt, hệ thống lị sƣởi, ngồi ra cịn ứng dụng trong các lĩnh vực khác
nhƣ điều khiển không lƣu, hệ thống thang máy, robotics (ngƣời máy học),
điều khiển thực hiện trong các dự án công nghiệp và các trạm năng lƣợng
hạt nhân.
Việc đặc tả và thiết kế hệ thống thời gian thực là một vấn đề phức tạp
vì hệ thống thời gian thực yêu cầu sự chính xác logic giống nhƣ sự chính
xác thời gian thực tế. Nhiều năm trƣớc đây, kỹ thuật đặc tả và thiết kế hệ
thống thời gian thực đã đƣợc chú ý, các công ty phần mềm lớn trên thế giới
đã nhanh chóng đƣa ra nhiều cơng cụ hỗ trợ phân tích thiết kế dựa trên
nhiều phƣơng pháp khác nhau, đƣa vào ứng dụng trong nhiều lĩnh vực và
đƣợc phát triển liên tục. Sự ra đời của UML dựa trên ba phƣơng pháp
hƣớng đối tƣợng Booch, OMT, OOSE là ký hiệu lập mơ hình chuẩn cơng


nghiệp cho các hệ thống hƣớng đối tƣợng, và nó cũng dùng để xây dựng
Số hóa bởi Trung tâm Học liệu – ĐHTN




Lê Bá Huỳnh Cơng

Khoa học máy tính

các hệ thống thời gian thực một cách chi tiết, chính xác. Do đó, UML đã và
đang đƣợc các nhà phát triển hệ thống thời gian thực chọn làm tiêu chuẩn
để xây dựng mô hình thời gian thực cho các ứng dụng thực tế. Với ngun
nhân đó, tơi chọn đề tài “Phân tích thiết kế hệ thống thời gian thực theo
cách tiếp cận hƣớng đối tƣợng với UML” để có thể hiểu sâu hơn về lĩnh
vực ứng dụng hệ thống thời gian thực, dùng cơng nghệ mới để phân tích và
thiết kế ứng dụng hệ thống thời gian thực.
Cấu trúc nội dung của luận văn gồm ba chƣơng và phần kết luận
Chƣơng 1: Trình bày tổng quan về hệ thống thời gian thực bao gồm
các khái niệm cơ sở, các yêu cầu và ràng buộc về thời gian của hệ thống
thời gian thực.
Chƣơng 2: Giới thiệu các thành phần, kiến trúc hệ thống của UML và
những thuận lợi của UML đối với phân tích và thiết kế hệ thống thời gian
thực.
Chƣơng 3: Ứng dụng xây dựng từng bƣớc trên UML để mơ phỏng bài
tốn điều khiển nút đèn giao thông.
Kết luận Những nội dung đạt đƣợc trong luận văn và định hƣớng phát
triển.
Thái Nguyên, tháng 09 năm 2011
Tác giả


Lê Bá Huỳnh Cơng

Số hóa bởi Trung tâm Học liệu – ĐHTN




Lê Bá Huỳnh Cơng

Khoa học máy tính

MỤC LỤC
CHƢƠNG 1 ........................................................................................................ 1
TỔNG QUAN VỀ HỆ THỐNG THỜI GIAN THỰC ....................................... 1
1.1 Các khái niệm cơ sở của hệ thống thời gian thực ...............................................1
1.2 Yêu cầu của các hệ thống thời gian thực .............................................................4
1.2.1 Những yêu cầu thời gian trong việc trình bày hệ thống thời gian thực
1.2.1.1 Thời gian tuần tự .......................................................................... 5
1.2.1.2 Thời gian quan hệ ......................................................................... 6
1.2.1.3 Thời gian chính xác ...................................................................... 6
1.2.2 Một số yêu cầu của hệ thống thời gian thực ..................................... 11
1.2.2.1 Hệ thống lớn và phức tạp ........................................................... 11
1.2.2.2 Xử lý trên số thực ....................................................................... 11
1.2.2.3 Thực sự an toàn và đáng tin cậy ................................................. 11
1.2.2.4 Giao tiếp trực tiếp với thiết bị phần cứng................................... 12
1.2.2.5 Thực hiện trên môi trƣờng và ngôn ngữ lập trình hiệu quả ....... 12
1.2.2.6 Ngƣời sử dụng điều khiển .......................................................... 12
1.3 Phân tích các ràng buộc thời gian trong hệ thống thời gian thực ....................12
1.3.1 Quan niệm thời gian trong hệ thống thời gian thực .......................... 12

1.3.1.1 Đồng hồ hệ thống ....................................................................... 12
1.3.1.2 Các loại đồng hồ hệ thống .......................................................... 13
1.3.1.3 Quan niệm về rời rạc thời gian ................................................... 13
1.3.1.4 Ràng buộc về thời gian ............................................................... 14
1.3.2 Các hệ thống thời gian thực .............................................................. 15
1.4 Tổng kết chƣơng 1 ...............................................................................................17
CHƢƠNG 2 ...................................................................................................... 18
PHÂN TÍCH THIẾT KẾ HỆ THỐNG ............................................................. 18
THỜI GIAN THỰC VỚI UML ........................................................................ 18
2.1 Giới thiệu UML ...................................................................................................18
2.1.1 Yêu cầu thực tế ................................................................................. 20
2.1.2 Mục đích của UML ........................................................................... 21
2.1.3 Các thành phần của UML ................................................................. 23
2.1.3.1 Mơ hình cấu trúc trong UML ..................................................... 23
2.1.3.2 Mơ hình hành vi ......................................................................... 27
Số hóa bởi Trung tâm Học liệu – ĐHTN




Lê Bá Huỳnh Cơng

Khoa học máy tính

2.1.4 Kiến trúc của hệ thống ...................................................................... 32
2.1.4.1 Quan sát UC ............................................................................... 32
2.1.4.2 Quan sát Lơgic ............................................................................ 32
2.1.4.3 Quan sát tiến trình ...................................................................... 33
2.1.4.4 Quan sát thực thi ......................................................................... 33
2.1.4.5 Quan sát triển khai ...................................................................... 33

2.2 Các giai đoạn phát triển phần mềm với UML ..................................................33
2.2.1 Phân tích yêu cầu (Dự kiến kế hoạch) .............................................. 36
2.2.2 Giai đoạn phân tích ........................................................................... 36
2.2.3 Giai đoạn thiết kế .............................................................................. 36
2.2.4 Giai đoạn triển khai........................................................................... 37
2.3 Phân tích và thiết kế hệ thống thời gian thực ....................................................38
2.3.1 Mơ hình đối tƣợng của UML ............................................................ 38
2.3.2 Mơ hình động của UML ................................................................... 39
2.3.3 Những thuận lợi của UML đối với hệ thống thời gian thực ............. 45
2.4 Tổng kết chƣơng 2 ...............................................................................................47
CHƢƠNG 3 ...................................................................................................... 49
XÂY DỰNG ỨNG DỤNG .............................................................................. 49
3.1 Khảo sát ................................................................................................................49
3.1.1 Mơ tả bài tốn ................................................................................... 49
3.1.2 Xây dựng biểu đồ UC ....................................................................... 51
3.2 Phân tích ...............................................................................................................52
3.2.1 Các UC .............................................................................................. 52
3.2.2 Biểu đồ UC ....................................................................................... 53
3.2.3 Kịch bản cho các uc .......................................................................... 54
3.2.3.1 UC điều khiển tự động ............................................................... 54
3.2.3.3 Nhận tín hiệu quá tải .................................................................. 56
3.2.3.4 Đặt lại thời gian đợi .................................................................... 57
3.2.4 Biểu đồ lớp phân tích ........................................................................ 58
3.2.4.1 UC điều khiển tự động ............................................................... 58
3.2.4.2 UC chuyển đổi điều khiển .......................................................... 59
3.2.4.3 UC nhận tín hiệu quá tải ............................................................. 59
3.2.4.4 UC đặt lại thời gian đợi .............................................................. 59
3.3 Thiết kế .................................................................................................................59
Số hóa bởi Trung tâm Học liệu – ĐHTN





Lê Bá Huỳnh Cơng

Khoa học máy tính

3.3.1 UC điều khiển tự động ...................................................................... 59
3.3.2 UC chuyển đổi điều khiển ................................................................ 60
3.3.3 UC nhận tín hiệu quá tải ................................................................... 61
3.3.4 UC đặt lại thời gian đợi..................................................................... 62
3.4 Biểu đồ lớp ...........................................................................................................63
3.4.1Xác định các lớp đối tƣợng ................................................................ 63
3.4.2 Các mối quan hệ của các lớp ............................................................ 64
3.4.3 Biểu đồ lớp ........................................................................................ 64
3.4.4 Thiết kế chi tiết ................................................................................. 65
3.4.5 Biểu đồ thành phần ........................................................................... 69
3.5 Xây dựng chƣơng trình mơ phỏng .....................................................................69
3.5.1 Cài đặt chƣơng trình ......................................................................... 69
3.5.1.1 Cấu hình hệ thống ....................................................................... 69
3.5.1.2 Lựa chọn công nghệ ................................................................... 70
3.5.2 Một số form chính............................................................................. 70
3.6 Kết luận chƣơng 3 ................................................................................ 72
KẾT LUẬN ....................................................................................................... 73
1.Kết quả đạt đƣợc trong luận văn............................................................................73
2.Hƣớng nghiên cứu tiếp theo...................................................................................73
TÀI LIỆU THAM KHẢO ................................................................................ 75

Số hóa bởi Trung tâm Học liệu – ĐHTN





Lê Bá Huỳnh Cơng

Khoa học máy tính

LỜI CẢM ƠN

Xin chân thành cảm ơn Thầy giáo PGS. TS Đoàn Văn Ban đã tận tình
hƣớng dẫn, giúp đỡ và đóng góp cho tơi nhiều ý kiến q báu để hồn thành
luận văn.
Xin bày tỏ lịng biết ơn đến Thầy giáo, Cơ giáo Viện Công nghệ thông tin
Việt Nam và Trƣờng Đại học Công nghệ thông tin và Truyền thông đã giảng
dạy, giúp đỡ và tạo điều kiện cho tôi trong thời gian học tập tại Trƣờng.
Tôi xin gửi lời cảm ơn đến các bạn, các anh chị học viên Cao học khóa
K8 - chuyên ngành Khoa học máy tính - Trƣờng Đại học Công nghệ thông tin
và truyền thông, các cán bộ, giảng viên trƣờng Đại học Khoa học Thái Nguyên
đã tạo điều kiện cho tơi trong q trình học tập và làm luận văn.
Cuối cùng cho phép tôi đƣợc gửi những tình cảm q báu đến gia đình những ngƣời ln tin tƣởng, động viên để tôi nổ lực phấn đấu trong công tác
và học tập.
Thái Nguyên, ngày 01 tháng 10 năm 2011
Học viên

Lê Bá Huỳnh Cơng

Số hóa bởi Trung tâm Học liệu – ĐHTN





Lê Bá Huỳnh Cơng

Khoa học máy tính

LỜI CAM ĐOAN
Để hồn thành luận văn đúng thời gian quy định và đáp ứng đƣợc yêu
cầu đề ra, bản thân em luôn cố gắng nghiên cứu, học tập. Em đã tham khảo
một số tài liệu đã nêu trong phần “Tài liệu tham khảo” và không hề sao chép
nội dung từ bất kỳ luận văn nào khác. Toàn bộ luận văn do ý tƣởng bản thân
em đƣợc sự chỉ bảo tận tình của thầy hƣớng dẫn, em tự nghiên cứu và xây
dựng nên. Toàn bộ mã nguồn do em nghiên cứu, tham khảo và cài đặt.
Cho đến nay nội dung luận văn của em chƣa từng đƣợc công bố hay
xuất bản dƣới bất kỳ hình thức nào và cũng khơng sao chép từ bất kỳ luận văn
của học viên nào hay một cơng trình nghiên cứu nào.
Em xin cam đoan những lời khai trên là đúng, mọi thơng tin sai lệch em
xin hồn tồn chịu trách nhiệm trƣớc Hội đồng.
Thái nguyên, ngày 01 tháng 10 năm 2011
Ngƣời cam đoan

Học viên Lê Bá Huỳnh Công

Số hóa bởi Trung tâm Học liệu – ĐHTN




Lê Bá Huỳnh Cơng

Khoa học máy tính


CHƢƠNG 1
TỔNG QUAN VỀ HỆ THỐNG THỜI GIAN THỰC
Trong những năm gần đây, các hệ thống điều khiển theo thời gian thực là
một trong những lĩnh vực thu hút nhiều sự chú ý trong giới khoa học nghiên
cứu về khoa học máy tính. Trong đó, vấn đề điều hành thời gian thực và vấn đề
lập lịch là đặc biệt quan trọng. Một số ứng dụng quan trọng của hệ thống thời
gian thực (RTS) đã và đang đƣợc ứng dụng rộng rãi, phổ biến nhiều nơi hiện
nay là những hệ thống thời gian thực ứng dụng điều khiển trong gia đình nhƣ:
máy giặt, lị sƣởi; các dây chuyền sản xuất tự động, rô bốt, điều khiển khơng
lƣu, điều khiển các thí nghiệm tự động, truyền thơng, điều khiển trong qn sự,
điều khiển các qui trình thiết bị công nghiệp và các trạm năng lƣợng hạt nhân,
.v.v. Thế hệ ứng dụng tiếp theo của hệ thống này sẽ là điều khiển rơ bốt có
hoạt động giống con ngƣời, hệ thống kiểm sốt thơng minh trong các nhà máy
công nghiệp, điều khiển các trạm không gian, thăm dò đại dƣơng, v.v. [11].
Nội dung trong Chƣơng 1 bao gồm các vấn đề sau:
 Các khái niệm cơ sở của hệ thống thời gian thực
 Các yêu cầu của hệ thống thời gian thực
 Phân tích các ràng buộc thời gian trong hệ thống thời gian thực
1.1 Các khái niệm cơ sở của hệ thống thời gian thực
Định nghĩa cho RTS có nhiều quan niệm của các nhóm khác nhau nhƣ
nhóm các nhà phát triển phần mềm, nhóm kỹ thuật, nhóm các đại lý cung cấp
máy tính, trƣờng phái lý thuyết và các nhà nghiên cứu, v.v. [16].
Một hệ thống thời gian thực (RTS) có thể được hiểu như là một mơ hình
xử lý mà tính đúng đắn của hệ thống khơng chỉ phụ thuộc vào kết quả tính
tốn lơgic mà cịn phụ thuộc vào thời gian mà kết quả phát sinh ra [7].

Số hóa bởi Trung tâm Học liệu – ĐHTN

1





Lê Bá Huỳnh Cơng

Khoa học máy tính

Theo từ điển Oxford về máy tính cung cấp đĩnh nghĩa: Một hệ thống tại một
thời điểm cung cấp tín hiệu đầu ra quan trọng. Điều này là dĩ nhiên vì tín hiệu
đầu vào tương ứng đã được đưa vào trong không gian thiết bị và tín hiệu đầu
ra có liên quan đến sự di chuyển tương ứng đó. Thời gian trễ (delay) được bắt
đầu từ thời điểm tín hiệu đầu vào được đưa vào đến thời điểm nhận được tín
hiệu đầu ra phải đủ nhỏ để có thể chấp nhận được kịp thời.
Một định nghĩa khác trên “Journal of Systems and Control Engineering”
(Chuyên đề Ứng dụng thiết kế hệ thống và điều khiển): RTS là hệ thống cung
cấp các phản ứng trả lời chính xác trong một giới hạn thời gian rõ ràng. Do đó
việc tính tốn các phản ứng trả lời vượt quá ranh giới thời gian cho phép khi
đó hiệu quả thực thi bị biến đổi và gây ra kết quả sai lệch.
Ngồi ra cịn có một số định nghĩa khác nhƣ sau:
RTS đọc các tín hiệu đầu vào từ thiết bị (một hệ thống vật lý để tính
tốn điều khiển như: rô bốt, cửa trượt lối ra vào ở siêu thị, qui trình tự động
trong các nhà máy, tín hiệu số ở camera, ...) và gởi các tín hiệu điều khiển
đến thiết bị tại thời điểm xác định, RTS không chỉ chú ý đến khả năng sẵn
sàng hành động của các thiết bị trong một hạn định thời gian, mà cịn chú ý
đến khả năng của hệ thống máy tính điều khiển [16].
Hệ thống thời gian thực đƣợc thiết kế nhằm cho phép đáp ứng (response)
lại các yếu tố kích hoạt phát sinh từ các thiết bị phần cứng theo một ràng buộc
thời gian xác định. Nhìn chung, trong những RTS chỉ có một số cơng việc
đƣợc gọi là cơng việc thời gian thực, các cơng việc này có một mức độ khẩn

cấp riêng cần phải hồn tất, ví dụ một tiến trình đang cố gắng điều khiển hoặc
giám sát một sự kiện đang xảy ra trong thế giới thực. Bởi vì các sự kiện xuất
hiện trong thế giới thực nên tiến trình giám sát sự kiện này phải xử lý theo kịp
với những thay đổi của sự kiện. Sự thay đổi của sự kiện trong thế giới thực xảy
ra thƣờng rất nhanh, mỗi tiến trình giám sát sự kiện phải thực hiện việc xử lý
trong một khoảng thời gian ràng buộc gọi là deadline, khoảng thời gian ràng
Số hóa bởi Trung tâm Học liệu – ĐHTN

2




Lê Bá Huỳnh Cơng

Khoa học máy tính

buộc đƣợc xác định bởi thời gian bắt đầu và thời gian hoàn tất cơng việc.
Trong thực tế, các yếu tố kích thích xảy ra trong thời gian rất ngắn vào khoảng
vài mili giây, thời gian mà hệ thống trả lời lại yếu tố kích thích đó tốt nhất vào
khoảng dƣới một giây, thƣờng vào khoảng vài chục mili giây, khoảng thời gian
này bao gồm thời gian tiếp nhận kích thích, xử lý thơng tin và trả lời lại kích
thích. Một yếu tố khác cần quan tâm trong RTS là những công việc thời gian
thực này có tuần hồn hay khơng? Cơng việc thời gian tuần hồn thì ràng buộc
thời gian ấn định theo từng chu kỳ xác định. Cơng việc khơng tuần hồn xảy ra
với ràng buộc thời gian vào lúc bắt đầu và lúc kết thúc công việc, giới hạn thời
gian ràng buộc chỉ đƣợc xác định vào lúc bắt đầu công việc. Các biến cố kích
hoạt cơng việc khơng tuần hồn thƣờng dựa trên kỹ thuật xử lý ngắt của hệ
thống phần cứng.
Một trong những tiêu chuẩn cho hành động chính xác của RTS đó là tính

chính xác lơgic [10], cũng đƣợc gọi là sự chính xác đầu vào/đầu ra, chính xác
thiết thực và sự chính xác biến đổi. Mặc khác, RTS thực u cầu cả tính chính
xác lơgic lẫn tính chính xác thời gian. Tính chính xác lơgic thƣờng thể hiện
trong giới hạn đúng đắn đầu ra và đầu vào. Tiêu chuẩn về tính chính xác thời
gian cũng đƣợc gọi là sự chính xác tác động trở lại, có thể nhìn thấy nhƣ là sự
mở rộng của tính chính xác lôgic bao gồm sự định hƣớng mới, tên thời gian
thực. Phần mềm thời gian thực là một kiểu thiết kế nhƣ là một tập hợp những
qui trình trao đổi thơng điệp hiện tại. Trong nhiều trƣờng hợp, có những qui
trình thực thi ở trạng thái không đồng bộ để cung cấp sự kiểm tra các thành
phần và sự tác động trở lại của các thành phần với các tốc độ khác nhau. Qui
trình truyền đạt thơng điệp cịn đƣợc dùng để chuyển đổi dữ liệu hoặc điều
khiển thông tin.
Sự phân tích RTS thành các thành phần là một vấn đề to lớn với các cách
trình bày phức tạp. Một hƣớng tiếp cận đó là sự phân tích chức năng mà hệ
thống đã đƣợc phân rả thành các thành phần với các chức năng tƣơng tự. Phân
Số hóa bởi Trung tâm Học liệu – ĐHTN

3




Lê Bá Huỳnh Cơng

Khoa học máy tính

tích cấu trúc là phƣơng pháp phân tích mà các dịng dữ liệu trong hệ thống và
các gói quan hệ thực thể diễn tả cấu trúc của dữ liệu là các phƣơng thức cơ bản
cho việc phân tích và kết quả rút ra.
Về mặt cấu tạo, RTS thƣờng đƣợc cấu thành từ các thành tố chính sau [9]:

+ Đồng hồ thời gian thực: Cung cấp thông tin thời gian thực.
+ Bộ điều khiển ngắt: Quản lý các biến cố không theo chu kỳ.
+ Bộ định biểu: Quản lý các quá trình thực hiện.
+ Bộ quản lý tài nguyên: Cung cấp các tài nguyên máy tính.
+ Bộ điều khiển thực hiện: Khởi động các tiến trình.
Các thành tố trên có thể đƣợc phân định là thành phần cứng hay mềm tùy
thuộc vào hệ thống và ý nghĩa sử dụng. Thông thƣờng, các RTS đƣợc kết hợp
vào phần cứng có khả năng tốt hơn so với hệ thống phần mềm có chức năng
tƣơng ứng và tránh đƣợc chi phí q đắt cho việc tối ƣu hóa phần mềm. Ngày
nay, chi phí phần cứng ngày càng rẻ, chọn lựa ƣu tiên phần cứng là một xu
hƣớng chung.
Hệ điều hành thời gian thực:
Hệ điều hành thời gian thực (RTOS-Realtime operating system) là hệ điều
hành (HĐH) có sự chú trọng giải quyết vấn đề đòi hỏi khắc khe về thời gian
cho các thao tác xử lý hoặc dòng dữ liệu. Đây là HĐH hiện đại, tinh vi, thời
gian xử lý nhanh, phải cho kết quả chính xác trong thời gian bị thúc ép nhanh
nhất. RTOS thƣờng sử dụng một đồng hồ hệ thống có cho kỳ ngắt nhỏ vào
khoảng vài micro giây để thực hiện điều phối các tiến trình.
1.2 Yêu cầu của các hệ thống thời gian thực
1.2.1 Những yêu cầu thời gian trong việc trình bày hệ thống thời gian thực
Nét đặc trƣng cơ bản quan trọng nhất của hệ thống thời gian thực là sự đòi
hỏi để theo kịp môi trƣờng tự trị với sự phản ứng của thuộc tính và thời gian để
Số hóa bởi Trung tâm Học liệu – ĐHTN

4




Lê Bá Huỳnh Cơng


Khoa học máy tính

sự kiện xuất hiện trong môi trƣờng đồng bộ từ thao tác của hệ thống. Bởi vậy,
sự tƣơng tác trong môi trƣờng hệ thống, sự phản ứng lại của hệ thống với tác
nhân kích thích từ mơi trƣờng bên ngồi truyền vào sẽ tăng lên để trả lời lại tác
nhân của máy móc, là chủ thể yêu cầu. Trong nội dung đƣợc đề cập, sự kiện
giới hạn sẽ sử dụng cho việc truyền đạt các thực thể khơng có hiệu lực thời
gian (ví dụ: sự chuyển đến của thông điệp). Những hành động giới hạn đã sử
dụng cho thực thể với một số khoảng thời gian, có thể khởi tạo bởi sự kiện đƣa
ra sự thay đổi trong trạng thái của hệ thống. Những yêu cầu thời gian có thể
phân loại nhƣ sau [13]:
1.2.1.1 Thời gian tuần tự
Cấu trúc của thời gian tuần tự có thể đƣợc định nghĩa chính xác trong thuật
ngữ tuần tự tập hợp của các sự kiện trong sự kết hợp với các mối quan hệ thứ tự.
Ví dụ: trong phạm vi cấu trúc thời gian tuần tự chúng ta có thể nói rằng sự kiện
(event) A1 trước sự kiện A2. Kết hợp với thứ tự lôgic hoặc lôgic thời gian chúng
ta có thể biểu diễn sự phụ thuộc và các mối quan hệ giữa 2 sự kiện khác nhau.
Trình tự thời gian là khái niệm định tính của thời gian thực, bởi vì trạng thái về
khoảng thời gian giữa các sự kiện khơng thể có trong phạm vi cấu trúc này.
X

Y
event

A1

event
A2


Hình 1.1 Sơ đồ tuần tự của các sự kiện ràng buộc về thứ tự

Số hóa bởi Trung tâm Học liệu – ĐHTN

5




Lê Bá Huỳnh Cơng

Khoa học máy tính

1.2.1.2 Thời gian quan hệ
Thời gian quan hệ là khái niệm ngầm của thời gian thực xuyên suốt các sự
kiện, là quan hệ giữa những sự kiện trong suốt quãng thời gian các hoạt động.
Mối quan hệ giữa các sự kiện đƣợc mô tả trong thuật ngữ của các mối quan hệ
ƣu tiên và độ dài khoảng thời gian giữa các sự kiện, tính thứ tự có thể đƣợc mơ
tả trên giây. Cho nên sự kiện đƣợc mô tả không tham chiếu cố định đến một
điểm trong thời gian đã đƣợc đƣa ra trong các mối quan hệ giữa chúng. Thời
gian quan hệ là khái niệm định tính của thời gian thực.
Ví dụ: sự kiện re_A1 phản ứng trả lời, đáp ứng sự kiện A1 trong khoảng
thời gian nhỏ hơn hoặc bằng 4s, sự kiện A2 xuất hiện sau sự kiện A1 chậm
nhất là 5s và sự kiện A2 sau re_A1.
X

Y
event

A1


{re_A1-A1  4s}

response
re_A1
{A2-A1  5s}

event
A2

Hình 1.2 Sơ đồ tuần tự của các sự kiện quan hệ ràng buộc về thời gian.

1.2.1.3 Thời gian chính xác
Mẫu thời gian này là khái niệm rõ ràng của thời gian thực mà hành vi hệ
thống có thể chỉ rõ từng điểm trong thời gian, với độ chính xác để chọn lựa
trọng tâm. Vì thế trong thời gian chính xác, tất cả các sự kiện hiện tại đều đƣợc
kiểm tra điểm tham chiếu cố định và do đó đây là khái niệm định tính của thời
gian thực.

Số hóa bởi Trung tâm Học liệu – ĐHTN

6




Lê Bá Huỳnh Cơng

Khoa học máy tính


Ví dụ: sự kiện An+1 xuất hiện đều đặn sau sự kiện An 4s.
X

Y
event

An

{An+1-An=4s}

event
An+1

Hình 1.3 Sơ đồ tuần tự của các sự kiện ràng buộc thời gian chính xác

Thời gian thực là một thuật ngữ thời gian trong ý nghĩa vật lý và thời gian
đồng hồ có thể xấp xỉ với thời gian thực của đồng hồ bên trong máy tính.
Trong phƣơng thức xác định hệ thống thời gian thực mili-giây, giây hoặc giờ
có thể đƣợc mô tả bởi các ràng buộc thời gian, nhƣng một hệ thống đang thực
thi thời gian đồng hồ có thể xấp xỉ thời gian thực. Vì thế ràng buộc thời gian
mơ tả trong ví dụ trên giây có sự chuyển đổi trong thời gian đồng hồ, ví dụ nhƣ
một tích tắc thời gian, một lần xác định sẽ đƣợc thực thi. Những lí do cơ sở là
khái niệm của thời gian trong máy tính có thể chỉ đạt đƣợc từ thời gian mở
rộng hoặc thời gian trong máy tính. Xấp xỉ thời gian thực có thể ví dụ đạt đƣợc
từ thời gian nguyên tử với đồng hồ thời gian của hệ thống thời gian thực đồng
bộ. Chia nhỏ những yêu cầu thời gian quan hệ định lƣợng tƣơng tác trong môi
trƣờng hệ thống đƣợc cho nhƣ sau:


Thời gian trả lời: đây là quan hệ thời gian xuất hiện của các sự kiện và


phản ứng trả lời của nó. Các trƣờng hợp thƣờng sử dụng nhất đó là:
- Khoảng thời gian nhanh nhất giữa sự kiện và phản ứng trả lời của nó.
Ví dụ 1: sự kiện a tiếp đến là phản ứng trả lời b trong khoảng thời gian 3
giây (yêu cầu đặc trưng sẵn sàng hành động).
- Khoảng thời gian chậm nhất giữa sự kiện và phản ứng trả lời của nó.
Số hóa bởi Trung tâm Học liệu – ĐHTN

7




Lê Bá Huỳnh Cơng

Khoa học máy tính

Ví dụ 2: sự kiện a tiếp đến là phản ứng trả lời b, khoảng thời gian nhỏ
nhất là 8 giây giữa a và b.
- Khoảng thời gian chính xác (Exact) giữa sự kiện và phản ứng trả lời
của nó.
Ví dụ 3: sự kiện a tiếp đến là phản ứng trả lời b trong khoảng thời gian
chính xác 7 giây (như với sự cài đặt thời gian bấm giờ và thời gian khơng
tính của nó).
X

Y

event


Max: {b-a  3s}
Min: {b-a  8s}
Exact:{b-a=7s}

a
response

b

Hình 1.4 Sơ đồ tuần tự, ví dụ 1-3



Tính thƣờng xuyên: đây là quan hệ xuất hiện của các sự kiện tƣơng tự.

Các trƣờng hợp thƣờng sử dụng nhất:
- Khoảng thời gian nhanh nhất giữa các sự kiện xuất hiện.
Ví dụ 4: xuất hiện liên tục sự kiện ax và ax+1 cách nhau khoảng thời gian
lớn nhất là 4 giây.
- Khoảng thời gian chậm nhất giữa các sự kiện xuất hiện.
Ví dụ 5: xuất hiện liên tục sự kiện ax và ax+1 cách nhau khoảng thời gian
nhỏ nhất là 5 giây (kiểu giả định tỉ lệ tác nhân từ môi trường)
- Khoảng thời gian chính xác (Exact) giữa các sự kiện xuất hiện, đây
cũng đƣợc gọi là tính chu kỳ.

Số hóa bởi Trung tâm Học liệu – ĐHTN

8





Lê Bá Huỳnh Cơng

Khoa học máy tính

Ví dụ 6: sự kiện a xuất hiện đều đặn cách nhau khoảng thời gian 2 giây
(như với sự lấy mẫu).
X

ax

Y

event

Max: {b-a  4s}
Min: {b-a  5s}
Exact:{b-a=2s}

event

ax+
1

Hình 1.5 Sơ đồ tuần tự, ví dụ 4-6

Ví dụ 6 là trƣờng hợp điển hình của các sự kiện có tính chu kỳ bởi vì tất
cả các sự kiện đều xuất hiện trong từng khoảng thời gian xác định, vì thế khi
thời gian thực sự kiện xuất hiện cũng nhƣ một sự kiện đƣợc biết, tất cả các sự

kiện quá khứ và tƣơng lai có thể có quan hệ với sự kiện kết quả, thì sự kiện kết
quả biết rõ tất cả thời gian thực của các sự kiện đó. Theo lý thuyết, cấu trúc
thời gian chính xác có thể xác định đƣợc theo cách này. Nhƣng trong thực
hành một sự kiện ln có ở trạng thái khơng ổn định nào đó thì kết quả sẽ tính
nhầm N sự kiện từ quá khứ đến tƣơng lai. Vì thế 3 ví dụ đầu tiên (ví dụ 1, ví dụ 2,
ví dụ 3) có u cầu về thời gian do sự xuất hiện của các sự kiện gây ra các
phản ứng trả lời tƣơng ứng, vì vậy thời gian của những phản ứng trả lời chỉ có
thể liên quan tới các sự kiện xuất hiện trƣớc đó.
Tóm lại, có thể phát biểu rằng sự phát triển hệ thống thời gian thực yêu cầu
cần xem xét về khái niệm thời gian áp dụng cho yêu cầu thi hành trên hệ thống.
Một vấn đề cần làm rõ ràng, ngôn ngữ mô hình là nền tảng sẽ hỗ trợ cho qui
trình phát triển và nó cũng hỗ trợ khái niệm thời gian do vậy các yêu cầu về thời
gian cũng đƣợc mô tả. Trong các ứng dụng đồ họa tổng quát hoặc ngơn ngữ mơ
hình thời gian thực ngun mẫu nó có thể đƣợc mô tả bởi các mối quan hệ sự
kiện-phản ứng trả lời và mối quan hệ xuất hiện của các sự kiện trong giới hạn
Số hóa bởi Trung tâm Học liệu – ĐHTN

9




Lê Bá Huỳnh Cơng

Khoa học máy tính

thời gian thực, nhƣ trong những ví dụ từ 1 đến 6. Khi một sự kiện muốn mơ tả
u cầu thời gian chính xác, thời gian thực cần kiểm tra khả năng xuất hiện của
các sự kiện và phản ứng trả lời để xác định điểm tham chiếu.
Đến nay các yêu cầu về thời gian chỉ dành cho các sự kiện riêng, phản

ứng trả lời trực tiếp của chúng và các sự kiện xuất hiện có quan hệ với nhau.
Có một số kiểu yêu cầu dành cho hệ thống với một tình huống, mà tình huống
đó xuất hiện chính xác tại một thời điểm và nó khơng cần thiết trong suốt chu
kỳ sống của hệ thống. Ví dụ: sự kiện A xảy ra, sau đó đến phản ứng trả lời B,
khoảng thời gian giữa A và B là 5 giây. Yêu cầu khoảng thời gian 5 giây chỉ áp
dụng khi sự kiện A có xảy ra. Trong suốt chu kỳ sống của hệ thống sự kiện A
chỉ xảy ra tại một thời điểm xác định nào đó. Những kiểu yêu cầu này đƣợc gọi
là: yêu cầu ngữ cảnh. Yêu cầu ngữ cảnh luôn tùy thuộc vào sự xuất hiện của
các sự kiện trƣớc đó. Nếu một sự kiện xảy ra mà bắt đầu là một yêu cầu ngữ
cảnh, yêu cầu đó phải đƣợc thỏa mãn. Khi khơng có sự kiện xảy ra thì khởi tạo
yêu cầu ngữ cảnh đó là tầm thƣờng. Loại yêu cầu nhƣ vậy có thể đƣợc gọi là
yêu cầu xu hƣớng sự kiện.
Ngồi ra cịn có những u cầu khơng phụ thuộc vào ngoại lệ sự kiện
nhƣng nó tồn tại trong hệ thống trong suốt chu kỳ sống cho đến khi hoàn
thành, đƣợc gọi là: những yêu cầu chung. Một ví dụ về yêu cầu chung tại hệ
thống trạm điều khiển hạt nhân: lị phản ứng sẽ khơng nổ. Đây là một yêu cầu
mà cần phải thỏa mãn trong toàn bộ chu kỳ hoạt động tồn tại của hệ thống trạm
điều khiển hạt nhân và không tùy thuộc vào thứ tự trƣớc sau của sự kiện (tình
huống) nào, mặt khác có thể có một tai nạn tai họa xuất hiện. Tóm lại, có thể
phát biểu rằng khoảng thời gian trong ngơn ngữ mơ hình tổng qt có thể hỗ
trợ cho các qui trình phát triển, nó dùng để mơ tả các yêu cầu ngữ cảnh cũng
nhƣ các yêu cầu tổng quát.

Số hóa bởi Trung tâm Học liệu – ĐHTN

10





Lê Bá Huỳnh Cơng

Khoa học máy tính

1.2.2 Một số u cầu của hệ thống thời gian thực
Các RTS có một số đặc điểm đặc trƣng, tuy nhiên không phải tất cả các
RTS đều quan tâm đến các điểm đó. Thƣờng thì ngơn ngữ lập trình và HĐH
cho RTS đã có rất nhiều cung cấp một số điểm đặc trƣng hoặc tạo môi trƣờng
thuận lợi cho việc thực hiện các đặc điểm đó.
1.2.2.1 Hệ thống lớn và phức tạp
Đây là vấn đề chung cho cả lĩnh vực phần mềm, yếu tố phức tạp và tầm
cỡ của hệ thống thƣờng tỉ lệ thuận với nhau. Đặc biệt khi mà RTS phải phân
chia thời gian hợp lý, sử dụng nhiều thuật toán phức tạp, phải thực hiện lập
lịch, đồng bộ,... nên độ phức tạp là rất lớn, cả từ các giai đoạn đặt vấn đề, phân
tích, thiết kế, tiến hành, kiểm tra, bảo trì.
1.2.2.2 Xử lý trên số thực
RTS ln làm việc trên các thông số trạng thái thực của thiết bị vật lý.
Việc tính tốn trên số thực tốn rất nhiều thời gian xử lý. Ngày nay, tốc độ xử lý
của máy tính đã rất nhanh, việc xử lý số thực đƣợc hỗ trợ ngay từ phần cứng,
HĐH và ngôn ngữ lập trình nhƣng sử dụng một phƣơng pháp tính tốn phù
hợp, ít tốn thời gian nhất vẫn là một yêu cầu thực tế.
1.2.2.3 Thực sự an toàn và đáng tin cậy
Những hậu quả do sự thiếu an toàn của những hệ thống thơng tin nói
chung và RTS nói riêng có thể lên đến hàng tỉ đơla, thậm chí gây thiệt hại về
tính mạng nhiều ngƣời. Việc thiết lập một RTS có độ tin cậy cao và an toàn là
một yêu cầu hàng đầu, phải có cách lƣờng trƣớc đƣợc những lỗi có thể xảy ra
và các biện pháp khắc phục.

Số hóa bởi Trung tâm Học liệu – ĐHTN


11




Lê Bá Huỳnh Cơng

Khoa học máy tính

1.2.2.4 Giao tiếp trực tiếp với thiết bị phần cứng
Các thiết bị vật lý giao tiếp trực tiếp thƣờng là các bộ phận cảm biến, các
loại đồng hồ trạng thái, nhiệt kế, các thiết bị điện, điện tử, bán dẫn. Các thiết bị
này có khả năng phát sinh hoặc tiếp nhận các tín hiệu, phát sinh các ngắt đƣợc
nhận biết bởi máy tính. Thơng qua các tín hiệu, các ngắt mà máy tính có thể
kiểm soát các trạng thái hoặc điều khiển sự hoạt động của thiết bị.
1.2.2.5 Thực hiện trên môi trƣờng và ngơn ngữ lập trình hiệu quả
Khác với các hệ thống khác, RTS có yêu cầu thực thi nhanh và hiệu quả.
Vì vậy việc sử dụng một mơi trƣờng khơng hợp lý hay một ngơn ngữ lập trình
bình thƣờng thì khó mà có thể đạt đƣợc u cầu, ví dụ : Hệ thống xử lý thời
gian có độ chia cho đến micro giây thì khơng thể thực hiện trên ngơn ngữ lập
trình chỉ hỗ trợ đến mili giây.
1.2.2.6 Ngƣời sử dụng điều khiển
Trong các hệ thống kinh điển, thƣờng thì ngƣời sử dụng ra yêu cầu và chờ
nhận kết quả. Trong những RTS còn yêu cầu ngƣời sử dụng phải nắm vững về hệ
thống nền (HĐH). Để kết quả công việc thành cơng tốt, ngƣời sử dụng có thể can
thiệp trực tiếp đến từng tiến trình, từng tiểu trình, cho phép, cấp quyền ƣu tiên đến
từng công việc nhằm tạo sự thông suốt trong hệ thống, tránh sự tắt nghẽn.
1.3 Phân tích các ràng buộc thời gian trong hệ thống thời gian thực
1.3.1 Quan niệm thời gian trong hệ thống thời gian thực
1.3.1.1 Đồng hồ hệ thống

Thời gian hệ thống đƣợc báo bằng một đồng hồ gọi là đồng hồ hệ thống.
Trong mơi trƣờng có nhiều bộ vi xử lý, có thể tồn tại nhiều đồng hồ, thì những
đồng hồ trên các vi xử lý riêng phải đƣợc đồng bộ với nhau.

Số hóa bởi Trung tâm Học liệu – ĐHTN

12




Lê Bá Huỳnh Cơng

Khoa học máy tính

Có thể biểu diễn mức độ chính xác của đồng hồ hệ thống qua hàm số sau:

t
C t    *
t
(trong đó: t* đối với hệ thống nhiều vi xử lý)
Đồng hồ đƣợc gọi là chính xác vào thời điểm ti nếu:

C t i   t i
1.3.1.2 Các loại đồng hồ hệ thống
Đơn giản nhất là hệ thống chỉ có một đồng hồ chủ (server lock), yêu cầu
độ chính xác và tin cậy rất cao. Loại đồng hồ chủ giá thành rất đắt.
Một loại khác gồm một đồng hồ chính (master clock) đồng bộ với nhiều
đồng hồ phụ (slave clock) theo kiểu “polling” (kiểm sốt vịng), tất cả các
đồng hồ có cùng độ chính xác, nếu đồng hồ chính bị hỏng thì một trong những

đồng hồ phụ sẽ thay thế.
Đối với hệ thống phân tán, đồng hồ hệ thống bao gồm tất cả các đồng hồ
phân tán và đƣợc đồng bộ với nhau theo cùng một thuật toán.
1.3.1.3 Quan niệm về rời rạc thời gian
Trong quan niệm của RTS, thời gian đƣợc xem nhƣ là một yếu tố rời rạc.
Đây là một khía cạnh rất phức tạp và lý thú.
(1) Trong các HĐH kinh điển, có một đồng hồ quản lý thời gian đồng bộ
giữa các tiến trình. Đồng hồ này phát sinh ra ngắt báo hiệu cho hệ thống theo
chu kỳ. Chu kỳ này có thể đƣợc điều chỉnh nhƣng khơng quá nhanh hay quá
chậm làm ảnh hƣởng đến thời gian thực thi các tiến trình và thƣờng là vào
khoảng vài chục mili giây. Chính chu kỳ này đã chia thời gian ra thành các
mảnh đủ nhỏ.

Số hóa bởi Trung tâm Học liệu – ĐHTN

13




Lê Bá Huỳnh Cơng

Khoa học máy tính

(2) Cịn trong các hệ thống điều khiển thời gian thực, hệ thống sử dụng
một đồng hồ có khả năng lập trình điều phối ngắt theo một chu kỳ đủ nhỏ, hợp
lý, chu kỳ ở hệ thống này vào khoảng vài micro giây.
Trong thực tế thì các hệ thống thời gian thực thƣờng dựa trên cách tiếp
cận kết hợp giữa hai quan niệm trên, thƣờng thì quan điểm (1) là nền tảng có
sự hỗ trợ của quan điểm (2).

1.3.1.4 Ràng buộc về thời gian
Với mỗi yếu tố kích thích, hệ thống tiếp nhận vào một thời điểm t0, hệ
thống tiến hành cấp phát tài ngun, thực hiện các xử lý tính tốn và hồn tất
việc trả lời vào thời điểm tk khác sau đó.
Một ràng buộc tối thiểu có thể đƣợc định nghĩa qua bộ ba sau:
(ID, Tbegin(condition1), Tend(condition2)
Trong đó:
ID: Chỉ số của tiến trình
Tbegin(condition1): Thời gian bắt đầu tiến trình
Tend(condition2): Thời gian tiến trình hồn tất xử lý
Đây là một ràng buộc đơn giản đối với tiến trình trong hệ thống thời gian
thực, ràng buộc trên khơng có tiền điều kiện và xác định đƣợc khoảng thời
gian mà tiến trình phải thi hành (Tbegin - Tend).
Một ràng buộc khác, khắc khe hơn, phụ thuộc vào hệ thống và thời gian
xác định tài nguyên cần cấp phát, cũng nhƣ q trình giải phóng tài nguyên sau
khi tiến trình sử dụng đƣợc xác định nhƣ sau:
(ID, Tbegin(condition1),CID,FID, Tend(condition2))dC(t)dt ti
Trong đó:
ID: chỉ số của tiến trình
Số hóa bởi Trung tâm Học liệu – ĐHTN

14




Lê Bá Huỳnh Cơng

Khoa học máy tính


Tbegin(condition1): Thời gian bắt đầu tiến trình
Tend(condition2): Thời gian tiến trình hồn tất xử lý
CID: Thời gian ƣớc tính của tiến trình (số mẫu thời gian)
FID: Tần số mẫu thời gian
Mỗi chỉ thị cơ sở có một thời gian thực thi cố định phụ thuộc vào phần cứng.
1.3.2 Các hệ thống thời gian thực
Các RTS thƣờng đƣợc phân thành hai loại chính tùy thuộc vào ràng buộc
thời gian: Hệ thống thời gian thực mềm và Hệ thống thời gian thực cứng.
Hệ thống thời gian thực mềm: đó là hệ thống mà thời gian trả lời cho các
yếu tố kích thích là quan trọng, tuy nhiên trong trƣờng hợp ràng buộc bị vi
phạm, tức là thời gian trả lời của hệ thống vƣợt quá giới hạn trễ cho phép
(deadlines) hoặc nói cách khác đó là giới hạn thời gian khơng thỏa mãn tính
đúng đắn của chƣơng trình, trong trƣờng hợp đó hệ thống vẫn cho phép tiếp
tục hoạt động bình thƣờng, khơng quan tâm đến các tác hại do sự vi phạm gây
ra (thƣờng thì ảnh hƣởng của các tác hại khơng đáng kể).
Ví dụ: + Luồng dữ liệu audio, nếu một gói dữ liệu bị chậm hoặc bị mất,
chất lượng của tín hiệu sẽ bị giảm nhưng vẫn có thể chấp nhận được.
+ Hệ thống máy rút tiền tự động ở ngân hàng, hệ thống hoạt động
khi sự kiện bắt đầu với hành động đưa thẻ vào khe máy của người sử dụng.
Phản ứng trả lời của máy sẽ được xác định trong giới hạn trả lời trung bình, ví
dụ là 15 giây. Thời gian trả lời thật xuất hiện sẽ thay đổi tùy thuộc vào thời
điểm trong ngày.
Đối với hệ thống thời gian thực cứng: ngƣời ta quan tâm khắc khe đến các
hậu quả do sự vi phạm giới hạn thời gian gây ra, vì những hậu quả này có thể
là rất tồi tệ, ảnh hƣởng hết sức nghiêm trọng lên hoạt động chung, gây thiệt hại
về vật chất hoặc có những ảnh hƣởng xấu đến đời sống con ngƣời.
Số hóa bởi Trung tâm Học liệu – ĐHTN

15





Lê Bá Huỳnh Cơng

Khoa học máy tính

Ví dụ cho hệ thống thời gian thực cứng:
+ Hệ thống điều khiển không lưu, một phân phối đường bay cho
thời gian cất cánh, hạ cánh khơng hợp lý và khơng đúng lúc có thể gây ra tai
nạn máy bay mà thảm họa của nó khó mà lường trước được.
+ Việc kiểm tra nhiệt độ ở bộ phận điều khiển chỉnh qui trình thiết
bị hóa học, ví dụ cách khoảng 10 mili giây nhiệt độ của thiết bị được đọc, sự
tính tốn điều chỉnh được đưa ra và giá trị đầu ra được gởi đến bộ phận quản
lí điều khiển nhiệt độ. Cơng việc kiểm tra và xứ lý phải luôn được thỏa mãn.
Nhƣ vậy, ràng buộc thời gian thực cứng đƣợc mô tả chặc chẽ hơn trong
thực thi của hệ thống so với thời gian thực mềm, do đó các hệ thống cũng khó
khăn hơn khi đƣa ra để phát triển phần cứng và phần mềm. Hầu hết các RTS
bao gồm tổng hợp các hoạt động đó là khóa cơ bản hoặc sự tƣơng tác cơ bản
của cả ràng buộc thời gian cứng và thời gian mềm.
Trong các hệ thống thời gian thực, các thao tác phải đƣợc xác định biên
bằng các thời điểm tác động của các ngắt thời gian, nghĩa là có thể đốn trƣớc
đƣợc trƣờng hợp xấu nhất trong việc đáp ứng thực tế có thể có, thực tế thì có
nhiều RTS bao gồm cả hai loại mềm (Soft) và cứng (Hard). Trong cả hai loại
trên, máy tính thƣờng can thiệp trực tiếp hoặc gián tiếp đến các thiết bị vật lý
để kiểm soát cũng nhƣ điều khiển sự hoạt động của thiết bị. Đứng trên góc độ
phân tích, ngƣời ta thƣờng chia các RTS ra làm hai loại sau:
Hệ thống nhúng: Bộ vi xử lý điều khiển là một phần trong tồn bộ
thiết bị, nó đƣợc sản xuất trọn gói từ yếu tố cứng đến yếu tố mềm từ nhà
máy, ngƣời sử dụng không biết về chi tiết của nó và chỉ sử dụng thơng

qua các nút điều khiển, các bảng số. Với chủng loại hệ thống này, ta sẽ
khơng thấy đƣợc những thiết bị nhƣ trong máy tính bình thƣờng nhƣ bàn
phím, màn hình,... mà thay vào đó là các nút điều khiển, các bảng số, đèn
tín hiệu hay các màn hình chuyên dụng đặc trƣng cho từng hệ thống. Máy
giặt là một ví dụ, người sử dụng chỉ việc bấm nút chọn chương trình giặt,
Số hóa bởi Trung tâm Học liệu – ĐHTN

16




Lê Bá Huỳnh Cơng

Khoa học máy tính

xem kết quả qua hệ thống đèn hiệu, ... Bộ vi xủa lý trong hệ thống nhúng
đã đƣợc lập trình trƣớc và gắn chặt vào ngay từ khi sản xuất và khơng thể
lập trình lại. Những chƣơng trình nhƣ vậy chạy độc lập, khơng có sự giao
tiếp với hệ điều hành cũng nhƣ khơng cho phép ngƣời sử dụng can thiệp
vào.
Loại thứ hai là bao gồm những hệ thống có sự can thiệp của máy
tính thơng thƣờng. Thơng qua máy tính ta hồn tồn có thể kiểm sốt
cũng nhƣ điều khiển mọi hoạt động của thiết bị phần cứng của hệ thống.
Những chƣơng trình điều khiển kiểu dạng trên có rất nhiều loại, phục vụ
cho nhiều mục đích khác nhau và có thể đƣợc viết lại cho phù hợp với
yêu cầu thực tế. Hiển nhiên loại hệ thống nhƣ vậy hoạt động đƣợc phải
cần một HĐH điều khiển máy tính, HĐH phải có khả năng nhận biết
đƣợc thiết bị phần cứng, có khả năng hồn tất cơng việc trong giới hạn
thời gian nghiêm ngặt và phải là HĐH hỗ trợ xử lý thời gian thực.

1.4 Tổng kết chƣơng 1
Việc phân chia các hoạt động thực hiện bởi hệ thống máy tính điều khiển
thành các công việc thời gian thực và phi thời gian thực dựa trên các ràng buộc
về thời gian, phát sinh từ các mức khó khăn khác nhau trong thiết kế chƣơng
trình ứng dụng trên máy tính. Chƣơng này giới thiệu các khái niệm cơ bản của
RTS, các yêu cầu và ràng buộc về thời gian khi thiết kế phần mềm thời gian
thực tƣơng tác với mơi trƣờng bên ngồi. HĐH thời gian thực cũng đƣợc trình
bày, và với các ví dụ đƣợc giới thiệu cho ta thấy hệ thống thời gian thực đƣợc
ứng dụng rộng rãi và những yêu cầu đối với hệ thống đó cũng rất khắc khe,
nhằm để đáp ứng kích thích từ mơi trƣờng bên ngồi tác động.

Số hóa bởi Trung tâm Học liệu – ĐHTN

17




Lê Bá Huỳnh Cơng

Khoa học máy tính

CHƢƠNG 2
PHÂN TÍCH THIẾT KẾ HỆ THỐNG
THỜI GIAN THỰC VỚI UML
Nội dung chính chƣơng 2 sẽ giới thiệu khái quát về các cấu trúc của mơ
hình tĩnh và mơ hình động của ngơn ngữ mơ hình hợp nhất UML, áp dụng
những sơ đồ để thiết kế mơ hình doanh nghiệp, cũng nhƣ đáp ứng đƣợc những
ràng buộc khắc khe về thời gian, tuần tự thơng điệp để thiết kế mơ hình thời
gian thực.

 Giới thiệu UML, yêu cầu thực tế và khả năng đáp ứng của UML.
 Các thành phần của UML.
 Các giai đoạn phát triển phần mềm với UML.
 Ứng dụng UML để phân tích thiết kế hệ thống thời gian thực.
2.1 Giới thiệu UML
Những năm đầu của thập kỷ 90 có rất nhiều phƣơng pháp phân tích, thiết kế
hệ thống hƣớng đối tƣợng và cùng với chúng là các ký hiệu riêng cho từng
phƣơng pháp. Số lƣợng các phƣơng pháp trong khoảng từ 10 đã lên đến gần 50
trong những năm từ 1989 đến 1994. Ba phƣơng pháp phổ biến nhất là OMT
[James Rumbaugh], Booch91 [Grady Booch] và OOSE [Ivar Jacobson]. Mỗi
phƣơng pháp đều có những điểm mạnh và yếu. Nhƣ OMT mạnh trong phân tích
và yếu ở khâu thiết kế, Booch91 thì mạnh ở thiết kế và yếu ở phân tích. OOSE
mạnh ở phân tích các ứng xử, đáp ứng của hệ thống mà yếu trong các khâu khác.
Do các phƣơng pháp chƣa hoàn thiện nên ngƣời dùng rất phân vân trong
việc chọn ra một phƣơng pháp phù hợp nhất để giải quyết bài toán của họ. Hơn
nữa, việc các ký hiệu khác nhau của các phƣơng pháp đã gây ra những sự mập
mờ, nhầm lẫn khi mà một ký hiệu có thể mang những ý nghĩa khác nhau trong
mỗi phƣơng pháp. Ví dụ nhƣ một hình trịn đƣợc tơ đen biểu hiện một bội số
Số hóa bởi Trung tâm Học liệu – ĐHTN

18




×