Cùng với sự phát triển của khoa học kỹ thuật, cụm từ “tự động hoá” đã trở
nên hết sức phổ thông. Từ các máy móc tự động trong các nhà máy xí nghiệp
thay thế cho sức lao động của công nhân, từ các đồ gia dụng tự động trong gia
đình giúp ích cho ng-ời nội trợ.nói chung các thiết bị có khả năng tự động hoá
xuất hiện ở khắp mọi nơi. Một câu hỏi đặt ra với khá nhiều ng-ời là nhờ đâu mà
các thiết bị có khả năng tự động đ-ợc? Để trả lời câu hỏi này chúng ta cần phải đi
từ khi có cụm từ “tự động hoá” ra đời.
Tr-ớc kia, khi ch-a có công nghệ bán dẫn, các phần tử có tiếp điểm nếu
đ-ợc đầu nối với nhau theo một mạch logic nào đó thì vẫn có thể tạo ra một hệ
thống tự động, tuy nhiên khả năng đáp ứng và tính tự động cả hệ thống này
không cao. Công nghệ bán dẫn ra đời, nó giải quyết đ-ợc hạn chế về đáp ứng (tốc
độ) của các phần tử có tiếp điểm tuy nhiêncũng phải chờ đến khi có sự xuất hiện
của các bộ vi xử lý, các hệthống có tính tự động hoá cao mới ra đời. Đặc tr-ng
của các hệ thống này đ-ợc mô tả bằng một công thức đơn giản: Phần cứng +
Phần mềm = ứng dụng. Theo công thức này thì khi tuỳ biến một trong 2 thành
phần là phần cứng hoặc phần mềm thì sẽ cho ra ứng dụng khác. Thông th-ờng
phần mềm là thành phần đ-ợc tuỳ biến.
Một hệ thống với các bộ vi xử lý có thể giả các suy nghĩ và hành động của
con ng-ời vì lý do đơn giản là chúng hoạt động theo một ch-ơng trình của ng-ời
thiết kế đ-a vào mà ch-ơng trình chính là các thuật toán là ý nghĩ của ng-ời lập
trình. Nh-vậy để một hệ thống có tính thông minh, tự động hoá cao thì phần
mềm viết cho nó là vấn đề hết sức quan trọng.
Một hệ thống với cùng một phần cứng nh-ng nếu nó đ-ợc viết hệ điều hành
thì khả năng của nó sẽ trở nên mạnh hơn rất nhiều so với một hệ thống chỉ có
một ch-ơng trình tuần tự. Với mục đích không ngừng đáp ứng các nhu cầu của
-10-
xã hội, hiện nay các môn họcvề hệ nhúng đã và đang đ-ợc đ-a vào giảng dạy tại
các tr-ờng Cao đẳng và Đại học. Tuy nhiên để có một hiệu qủa giảng dạy tốt
nhất thì cần có một ph-ơng pháp nghiên cứu và thiết kế đúng chính tắc và cũng
cần phải có một thiết bị phục vụ qua trình thí nghiệm.
Tr-ờng Đại học Công nghiệp Hà nội là một tr-ờng đào tạo các cử nhân và
các kỹ s-thực hành. Trong ch-ơng trình đào tạo cũng đã có môn kỹ thuật vi điều
khiển, đây có thể coi là nền tảng để tiếp cận với các hệ thống nhúng sử dụng vi
điều khiển có hệ điều hành. Việc nghiên cứu để đ-a vào giảng dạy môn thiết kế
hệ điều hành cho các hệ vi điều khiển là phù hợp với yêu cầu hiện tại.
Với sự h-ớng dẫn của TS Nguyễn Linh Giang, trong khuôn khổ luận văn
này, tôi mạnh dạn nghiên cứu về các nguyên tắc cơ bản khi thiết kế một hệ điều
hành trên hệ vi điều khiển.
Nội dung của luận văn bao gồm 4 ch-ơng, trong đó:
Ch-ơng 1: Giới thiệu tổng quan hệ điều hành.
Ch-ơng 2: Giới thiệu bộ vi điều khiển đ-ợc sử dụng để viết hệ điều hành và
ngôn ngữ lập trình cho vi điều khiển.
Ch-ơng 3. Thiết kế phần cứng hệ vi điều khiển.
Ch-ơng 4. Thiết kế hệ điều hành cho hệ vi điều khiển
Do thời gian và khả năng có hạn nên luận văn này sẽ còn nhiều thiếu sót.
Rất mong đ-ợc sự góp ý và thông cảm của các thầy giáo, cô giáo.
86 trang |
Chia sẻ: oanhnt | Lượt xem: 1307 | Lượt tải: 0
Bạn đang xem trước 20 trang tài liệu Luận văn Nghiên cứu, thiết kế hệ điều hành trên bộ vi điều khiển 8 bít, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
bộ giáo dục và đào tạo
tr−ờng đại học bách khoa hà nội
-----------------------------------------
luận văn thạc sỹ khoa học
Nghiên cứu, thiết kế hệ điều hành trên
bộ vi điều khiển 8 bít
ngành: xử lý thông tin và truyền thông
M∙ số:
vũ trung kiên
Ng−ời h−ớng dẫn khoa học: TS. Nguyễn Linh Giang
hà nội 2006
-2-
Lời cam đoan
Tôi xin cam đoan bản luận văn này là kết quả nghiên cứu của bản thân d−ới
sự h−ớng dẫn của TS. Nguyễn Linh Giang. Nếu có gì sai phạm, tôi xin hoàn toàn
chịu trách nhiệm.
Ng−ời làm cam đoan
Vũ Trung Kiên
-3-
Mục lục
Lời cam đoan.....................................................................................................2
Danh mục các ký hiệu, các chữ viết tắt ..........................................................5
Danh mục các bảng ..........................................................................................6
Danh mục các hình vẽ, đồ thị ..........................................................................7
Lời nói đầu ........................................................................................................9
Ch−ơng 1 - Tổng quan về hệ điều hành ......................11
1.1. Khái niệm về hệ điều hành (OS-Operating System)................................. 11
1.1.1. Khái niệm................................................................................................. 11
1.1.2. Chức năng của hệ điều hành. ................................................................... 11
1.1.3. Các thành phần của hệ điều hành............................................................. 13
1.2. Quản lý tiến trình......................................................................................... 16
1.2.1. Các trạng thái của một tiến trình.............................................................. 16
1.2.2. Khái niệm về tài nguyên “găng” và đoạn tới hạn .................................... 17
1.2.3. Hiện t−ợng bế tắc ..................................................................................... 19
1.3. Lập lịch cho CPU ......................................................................................... 20
1.3.1. Khái niệm giờ CPU.................................................................................. 20
1.3.2. Các trạng thái của tiến trình liên quan đến giờ CPU................................ 20
1.3.3. Lập lịch cho CPU..................................................................................... 22
1.4. Quản lý bộ nhớ ............................................................................................. 25
1.4.1. Yêu cầu phải quản lý bộ nhớ ................................................................... 25
1.4.2. Các sơ đồ quản lý bộ nhớ......................................................................... 26
Ch−ơng 2 - Vi điều khiển và ngôn ngữ lập trình
cho vi điều khiển ......................................................................28
2.1. Vi điều khiển........................................................................................28
2.1.1. Vi xử lý và vi điều khiển.......................................................................... 28
2.1.2. Tổ chức bộ nhớ của vi điều khiển. ........................................................... 30
2.1.3. Các bộ định thời. ...................................................................................... 35
2.1.4. Bộ xử lý ngắt. ........................................................................................... 37
2.2. Ngôn ngữ lập trình cho vi điều khiển......................................................... 39
-4-
2.2.1. Tổng quan về các ngôn ngữ lập trình cho vi điều khiển. ......................... 39
2.2.2. Những vấn đề với ngôn ngữ C viết cho các bộ vi điều khiển................... 42
Ch−ơng 3 - thiết kế hệ vi điều khiển ............................49
3.1. Xác định yêu cầu thiết kế. ........................................................................... 50
3.2. Lựa chọn cấu hình cho hệ thống................................................................. 51
3.2.1. Lựa chọn bộ điều khiển trung tâm. .......................................................... 51
3.2.2. Giao diện ng−ời sử dụng. ......................................................................... 52
3.2.3. Các thiết bị mô phỏng quá trình hoạt động của tiến trình. ...................... 53
3.3. Thiết kế mạch điện....................................................................................... 58
3.4. Đo thử và kiểm tra lỗi. ................................................................................. 59
Ch−ơng 4 - Thiết kế hệ điều hành .....................................60
4.1.1. Mục đích và yêu cầu thiết kế. .................................................................. 60
4.1.2. Mục đích. ................................................................................................. 60
4.1.2. Yêu cầu .................................................................................................... 63
4.2. Trình tự thiết kế hệ điều hành. ................................................................... 64
4.3. Xây dựng các tiến trình. .............................................................................. 65
4.3.1. Xây dựng các tác vụ t−ơng ứng các tiến trình.......................................... 65
4.3.2. Giải quyết bài toán tài nguyên găng ........................................................ 69
4.4. Lập lịch cho CPU. ........................................................................................ 71
4.4.1. Sự kiện và chuyển trạng thái giữa các tiến trình. ..................................... 71
4.4.2. Lập lịch cho CPU..................................................................................... 80
4.5. Quản lý bộ nhớ. ............................................................................................ 83
Kết luận và kiến nghị .....................................................................................86
Tài liệu tham khảo .........................................................................................87
-5-
Danh mục các ký hiệu, các chữ viết tắt
STT Chữ viết tắt Chữ đầy đủ
1 FCFS First Come First Served
2 FIFO First In First Out
3 LIFO Last In First Out
4 MCS Micro Controller System
5 OS Operating System
6 RTOS Real Time Operating System
7 RR Round Robbin
8 SJF Shortest Job First
9 SRT Shortest Remain Time
10 uC Micro Controller
-6-
Danh mục các bảng
Bảng 1.1. Trạng thái của các tiến trình............................................................... 19
Bảng 1.2. Thời gian thực hiện của các tiến trình................................................ 25
Bảng 1.3. Thời gian chờ của các tiến trình......................................................... 25
Bảng 2.1. Bộ nhớ dữ liệu trên chíp của AT89S52 .............................................. 33
-7-
Danh mục các hình vẽ, đồ thị
Hình 1.1. Các trạng thái của một tiến trình........................................................ 17
Hình 1.2. Các trạng thái của tiến trình liên quan đến giờ CPU.......................... 20
Hình 1.3. Sơ đồ thực hiện tiến trình ................................................................... 21
Hình 1.4. Sơ đồ tổ chức hàng đợi các tiến trình ................................................. 22
Hình 1.5. Sơ đồ Grant......................................................................................... 25
Hình 2.1. Sơ đồ khối của bộ vi điều khiển AT89S52 ......................................... 29
Hình 2.2. Tổ chức bộ nhớ của vi điều khiển ...................................................... 30
Hình 2.3. Sơ đồ ghép nối AT89S52 với EPROM............................................... 31
Hình 2.4. Sơ đồ ghép nối AT89S52 với RAM .................................................. 34
Hình 2.5. Giải mã địa chỉ cho các vi mạch nhớ ................................................. 34
Hình 2.6. Bộ nhớ dữ liệu đọc nh− bộ nhớ ch−ơng trình ..................................... 35
Hình 2.7. Hoạt động của Timer0 và Timer1 ở chế độ 1..................................... 36
Hình 2.8. Các nguồn ngắt của AT89S52............................................................ 38
Hình 3.1. Trình tự thiết kế phần cứng cho hệ thống.......................................... 49
Hình 3.2. Sơ đồ khối của hệ vi điều khiển ......................................................... 51
Hình 3.3. Ghép nối vi điều khiển với RAM ngoài. ............................................ 52
Hình 3.4. Giao diện ng−ời sử dụng trên hệ vi điều khiển................................... 53
Hình 3.5. Hiển thị trên LED 7 đoạn bằng kỹ thuật quét .................................... 54
Hình 3.6. Ghép nối ma trận LED trên hệ vi điều khiển ..................................... 57
Hình 3.7. Nguyên tắc xếp chữ trên ma trận LED............................................... 58
Hình 4.1. Các tác vụ đ−ợc thực hiện đồng thời (song song) .............................. 62
Hình 4.2. Các tác vụ đ−ợc thực hiện luân phiên liên tục.................................... 62
Hình 4.3. Giản đồ xung trên P1.......................................................................... 69
Hình 4.4. Chốt lại giá trị của P1......................................................................... 70
-8-
Hình 4.5. Các tiến trình đ−ợc phân bổ thời gian CPU bằng nhau ...................... 71
Hình 4.6. Chuyển giữa các tiến trình bằng sự kiện time out .............................. 73
Hình 4.7. Các tiến trình đ−ợc phân bổ thời gian CPU khác nhau ...................... 74
Hình 4.8. Ng−ời sử dụng ra lệnh vào các thời điểm khác nhau ......................... 75
Hình 4.9. Chuyển giữa cá tiến trình bằng sự kiện interrupt ............................... 76
Hình 4.9. Mô tả trạng thái của các tài nguyên của tiến trình. ............................ 77
Hình 4.10. Các tài nguyên cần l−u khi dừng một tiến trình. .............................. 78
Hình 4.11. Phân bổ ngăn xếp cho các tiến trình ................................................ 79
Hình 4.12. Lập lịch cho 8 tiến trình thực hiện quét chữ trên ma trận LED ....... 81
Hình 4.13. Lập lịch cho 4 tiến trình quét các số trên 4 LED 7 đoạn ................. 81
Hình 4.14. Lập lịch cho tiến trình điều khiển LCD........................................... 82
Hình 4.15. Lập lịch cho tiến trình thời gian thực .............................................. 82
Hình 4.16. Tổ chức bộ nhớ ROM của hệ vi điều khiển ..................................... 83
Hình 4.17. Thay đổi vị trí đặt các ch−ơng trình con phục vụ ngắt..................... 84
Hình 4.18. Phân bổ bộ nhớ ROM....................................................................... 85
Hình 4.19. Phân bổ bộ nhớ RAM....................................................................... 85
-9-
Lời nói đầu
Cùng với sự phát triển của khoa học kỹ thuật, cụm từ “tự động hoá” đã trở
nên hết sức phổ thông. Từ các máy móc tự động trong các nhà máy xí nghiệp
thay thế cho sức lao động của công nhân, từ các đồ gia dụng tự động trong gia
đình giúp ích cho ng−ời nội trợ...nói chung các thiết bị có khả năng tự động hoá
xuất hiện ở khắp mọi nơi. Một câu hỏi đặt ra với khá nhiều ng−ời là nhờ đâu mà
các thiết bị có khả năng tự động đ−ợc? Để trả lời câu hỏi này chúng ta cần phải đi
từ khi có cụm từ “tự động hoá” ra đời.
Tr−ớc kia, khi ch−a có công nghệ bán dẫn, các phần tử có tiếp điểm nếu
đ−ợc đầu nối với nhau theo một mạch logic nào đó thì vẫn có thể tạo ra một hệ
thống tự động, tuy nhiên khả năng đáp ứng và tính tự động cả hệ thống này
không cao. Công nghệ bán dẫn ra đời, nó giải quyết đ−ợc hạn chế về đáp ứng (tốc
độ) của các phần tử có tiếp điểm tuy nhiên cũng phải chờ đến khi có sự xuất hiện
của các bộ vi xử lý, các hệ thống có tính tự động hoá cao mới ra đời. Đặc tr−ng
của các hệ thống này đ−ợc mô tả bằng một công thức đơn giản: Phần cứng +
Phần mềm = ứng dụng. Theo công thức này thì khi tuỳ biến một trong 2 thành
phần là phần cứng hoặc phần mềm thì sẽ cho ra ứng dụng khác. Thông th−ờng
phần mềm là thành phần đ−ợc tuỳ biến.
Một hệ thống với các bộ vi xử lý có thể giả các suy nghĩ và hành động của
con ng−ời vì lý do đơn giản là chúng hoạt động theo một ch−ơng trình của ng−ời
thiết kế đ−a vào mà ch−ơng trình chính là các thuật toán là ý nghĩ của ng−ời lập
trình. Nh− vậy để một hệ thống có tính thông minh, tự động hoá cao thì phần
mềm viết cho nó là vấn đề hết sức quan trọng.
Một hệ thống với cùng một phần cứng nh−ng nếu nó đ−ợc viết hệ điều hành
thì khả năng của nó sẽ trở nên mạnh hơn rất nhiều so với một hệ thống chỉ có
một ch−ơng trình tuần tự. Với mục đích không ngừng đáp ứng các nhu cầu của
-10-
xã hội, hiện nay các môn học về hệ nhúng đã và đang đ−ợc đ−a vào giảng dạy tại
các tr−ờng Cao đẳng và Đại học. Tuy nhiên để có một hiệu qủa giảng dạy tốt
nhất thì cần có một ph−ơng pháp nghiên cứu và thiết kế đúng chính tắc và cũng
cần phải có một thiết bị phục vụ qua trình thí nghiệm.
Tr−ờng Đại học Công nghiệp Hà nội là một tr−ờng đào tạo các cử nhân và
các kỹ s− thực hành. Trong ch−ơng trình đào tạo cũng đã có môn kỹ thuật vi điều
khiển, đây có thể coi là nền tảng để tiếp cận với các hệ thống nhúng sử dụng vi
điều khiển có hệ điều hành. Việc nghiên cứu để đ−a vào giảng dạy môn thiết kế
hệ điều hành cho các hệ vi điều khiển là phù hợp với yêu cầu hiện tại.
Với sự h−ớng dẫn của TS Nguyễn Linh Giang, trong khuôn khổ luận văn
này, tôi mạnh dạn nghiên cứu về các nguyên tắc cơ bản khi thiết kế một hệ điều
hành trên hệ vi điều khiển.
Nội dung của luận văn bao gồm 4 ch−ơng, trong đó:
Ch−ơng 1: Giới thiệu tổng quan hệ điều hành.
Ch−ơng 2: Giới thiệu bộ vi điều khiển đ−ợc sử dụng để viết hệ điều hành và
ngôn ngữ lập trình cho vi điều khiển.
Ch−ơng 3. Thiết kế phần cứng hệ vi điều khiển.
Ch−ơng 4. Thiết kế hệ điều hành cho hệ vi điều khiển
Do thời gian và khả năng có hạn nên luận văn này sẽ còn nhiều thiếu sót.
Rất mong đ−ợc sự góp ý và thông cảm của các thầy giáo, cô giáo.
Hà nội, ngày 30 tháng 10 năm 2006
Học viên
Vũ Trung Kiên
-11-
Ch−ơng 1 - Tổng quan về hệ điều hành
1.1. Khái niệm về hệ điều hành (OS-Operating System)
1.1.1. Khái niệm
Khó có một khái niệm hay định nghĩa chính xác về hệ điều hành, vì hệ điều
hành là một bộ phận đ−ợc nhiều đối t−ợng khai thác nhất, họ có thể là ng−ời sử
dụng thông th−ờng, có thể là lập trình viên, có thể là ng−ời quản lý hệ thống và
tuỳ theo mức độ khai thức hệ điều hành mà họ có thể đ−a ra những khái niệm
khác nhau.
Khái niệm 1: Hệ điều hành là hệ thống ch−ơng trình với các chức năng giám
sát điều khiển việc thực hiện các ch−ơng trình của ng−ời sử dụng quản lý và phân
chia tài nguyên cho nhiều ch−ơng trình ng−ời sử dụng đồng thời sao cho việc
khai thác chức năng của hệ thống máy tính của ng−ời sử dụng là thuận lợi và hiệu
quả nhất.
Khái niệm 2: Hệ điều hành là một ch−ơng trình đóng vai trò nh− giao diện
giữa ng−ời sử dụng và phần cứng máy tính nó quản lý và điều khiển phần cứng
cũng nh− sự thực hiện của tất cả các ch−ơng trình.
Khái niệm thứ hai rất gần với các hệ điều hành đang sử dụng trên các máy
tính hiện nay trong khi khái niệm thứ nhất lại gần với các hệ thống đo l−ờng điều
khiển trong công nghiệp sử dụng các bộ điều khiển khả trình (Ví dụ nh− vi điều
khiển).
1.1.2. Chức năng của hệ điều hành.
Có thể nói hệ điều hành là 1 hệ thống các ch−ơng trình đóng vai trò trung
gian giữa ng−ời sử dụng và phần cứng. Nhiệm vụ chính của nó là cung cấp một
môi tr−ờng thuận lợi để ng−ời sử dụng dễ dàng thực hiện các ch−ơng trình ứng
dụng của họ trên máy tính và khai thác triệt để các chức năng của phần cứng.
-12-
Để đạt đ−ợc mục tiêu trên hệ điều hành phải thực hiện 2 chức năng chính
sau đây:
- Tạo ra một hệ thông mở rộng bao gồm các thành phần vật lý và các thành
phần logic:
Nh− chúng ta biết, một hệ thống khả trình (ví dụ nh− máy tính) gồm các bộ
phận chính nh−: Processor, Memory, I/O Device, Bus, vv, do đó để đối thoại
hoặc khai thác máy tính ng−ời sử dụng phải hiểu đ−ợc cơ chế hoạt động của các
bộ phận này và phải tác động trực tiếp vào nó tất nhiên là bằng những con số 0,1
(ngôn ngữ máy). Điều này là quá khó đối với ng−ời sử dụng hệ điều hành phải
che đậy các chi tiết phần cứng máy tính bởi một máy tính mở rộng, máy tính mở
rộng này có đầy đủ các chức năng của một máy tính thực nh−ng đơn giản và dễ
sử dụng hơn. Theo đó khi cần tác động vào máy tính thực ng−ời sử dụng chỉ cần
tác động vào máy tính mở rộng mọi sự chuyển đổi thông tin điều khiển từ máy
tính. Mục đích của chức năng này kà: Giúp ng−ời sử dụng khai thức các chức
năng của phần cứng máy tính dễ dàng và hiệu quả hơn.
- Quản lý tài nguyên của hệ thống:
Tài nguyên hệ thống có thể là: prrocessor, Memory, I/O Device..., đây là
những tài nguyên mà hệ điều hành dùng để cấp phát cho các tiến trình, ch−ơng
trình trong quá trình điều khiển sự hoạt động của hệ thống. Khi ng−ời sử dụng
cần thực hiện một ch−ơng trình hay một ch−ơng trình cần nạp thêm một tiến
trình mới vào bộ nhớ thì hệ điều hành phải cấp phát không gian nhớ cho ch−ơng
trình, tiến trình đó để ch−ơng trình, tíên trình đó nạp đ−ợc vào bộ nhớ và hoạt
động đ−ợc. Trong môi tr−ờng hệ điều hành đa nhiệm có thể có nhiều ch−ơng
trình, tiến trình đồng thời cần đ−ợc nạp vào bộ nhớ nh−ng không gian l−u trữ củâ
bộ nhớ có giới hạn do đó hệ điều hành phải tổ chức cấp phát bộ nhớ sao cho hợp
lý để đảm bảo tất cả các ch−ơng trình tiến trình khi cần để đ−ợc nạp vào bộ nhớ
để hoạt động. Ngoài ra hệ điều hành còn phải tổ chức bảo vệ các không gian nhớ
đã cấp cho các ch−ơng trình tiến trình để tránh sự truy cập bất hợp lệ và sự tranh
-13-
chấp bộ nhớ giữa các ch−ơng trình, tiến trình, đặc biệt là các tiến trình đồng thời
hoạt động trên hệ thống. Đây là một trong những nhiệm vụ quan trọng của hệ
điều hành.
Trong quá trình hoạt động của hệ thống đặc bệt là các hệ thống đa ng−ời
dùng đa ch−ơng trình, đa tiến trình. Còn xuất hiện một hiện t−ợng khác, đó là
nhiều ch−ơng trình, tiến trình đồng thời sử dụng một không gian nhớ hau một tập
tin (dữ liệu, ch−ơng trình) nào đó. Trong tr−ờng hợp này hệ điều hành phải tổ
chức việc chia sẻ và giám sát việc truy xuất đồng thời trên các tài nguyên nói
trên sao cho việc sử dụng tài nguyên có hiệu quả nh−ng tránh đ−ợc sự mất mát dữ
liệu và làm hỏng các tập tin.
Hai dẫn chứng điển hình giúp chúng ra thấy vai trò của hệ điều hành trong
việc quản lý tài nguyên hệ thống sau này chúng ra sẽ thấy việc cấp phát, chia sẻ,
bảo vệ tài nguyên của hệ điều hành là một trong những công việc khó khăn và
phức tạp nhất. Hệ điều hành đã chi phí nhiều cho công việc nói trên để đát đ−ợc
mục tiêu: Trong mọi tr−ờng hợp tất cả các ch−ơng trình, tiến trình nếu cần đ−ợc
cấp phát tài nguyên để hoạt động thì sớm muộn nó đều đ−ợc cấp phát và đ−ợc
đ−a vào trạng thái hoạt động.
1.1.3. Các thành phần của hệ điều hành
1.1.3.1. Thành phần quản lý tiến trình.
Hệ điều hành phải có nhiệm vụ tạo lập tiến trình và đ−a nó vào danh sách
quản lý tíên trình của hệ thống. Khi tiến trình kết thúc hệ điều hành phải loại bỏ
tiến trình ra lhỏi danh sác quản lý tiến trình của hệ thống.
Hệ điều hành phải cung cấp đầy đủ tài nguyên để tiến trình đi vào hoạt động
và phải đảm bảo đủ tài nguyên để duy trì sự hoạt động của tiến trình cho đến khi
tiến trình kết thúc. Khi tiến trình kết thúc hệ điều hành phải thu hồi những tài
nguyên mà hệ điều hành đã cấp cho tiến trình.
-14-
Trong quá trình hoạt động nếu vì một lý do nào đó tiến trình không thể tiếp
rục hoạt động đ−ợc thì hệ điều hành phải tạm dừng tiến trình thu hồi tài nguyên
mà tiến trình đang chiếm giữ, sau đó nếu diều kiện thuận lợi thì hệ điều hành
phải tái kích hoạt tiến trình để tiến trình tiếp tục hoạt động cho đến khi kết thúc.
Tro
Các file đính kèm theo tài liệu này:
- luan_van_thac_si_nghien_cuu,_thiet_ke_he_dieu_hanh_tren_bo_vi_dieu_khien_8_bit (1).pdf
- luan_van_thac_si_nghien_cuu,_thiet_ke_he_dieu_hanh_tren_bo_vi_dieu_khien_8_bit (2).pdf