giáo trình hệ điều hành nghề tin học ứng dụng cao đẳng

120 0 0
Tài liệu đã được kiểm tra trùng lặp
giáo trình hệ điều hành nghề tin học ứng dụng cao đẳng

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

 Hệ tháng file cāa UNIX cũng đ°ợc phân cấp theo một cây th° mÿc có các thuộc tính để kiểm soát thẩm quyền: quyền đọc, quyền sửa, quyền thực hiện cho bản thân ng°ßi tạo ra file, nhóm ng°

Trang 1

ĀY BAN NHÂN DÂN THÀNH PHà Hâ CHÍ MINH

TR¯àNG CAO ĐÀNG BÁCH KHOA NAM SÀI GÒN

Trang 2

Māc Lāc

Ch°¡ng 1: Gißi thißu chung vÁ hß điÁu hành 6

1.1 Khái nißm hß điÁu hành 6

1.1.1 Các thành phần hß thống 6

1.1.2 Chāc năng cÿa hß điÁu hành 6

1.1.3 Quá trình phát triển cÿa HĐH 6

1.2.1.5 HĐH Real time system 10

1.2.1.6 HĐH Handheld system (thi¿t bß cầm tay) 10

1.2.1.7 HĐH gaming system 11

1.2.1.8 HĐH IOS 11

1.2.2 D°ßi góc đá số ch°¡ng trình đ°ÿc sử dāng cùng lúc 11

1.2.3 D°ßi góc đá ng°ái dùng (truy suất tài nguyên cùng lúc) 11

1.3 S¡ l°ÿc lßch sử phát triển cÿa hß điÁu hành 11

2.1.2.1 Khái nißm bảng phân phối vùng nhß 32

2.1.2.2 Cài đặt bảng phân phối vùng nhß 32

Trang 3

2.2.1 Bản ghi logic và bản ghi vật lý 34

Trang 4

3.3.3.4.4 Trang đ°ÿc chia sẻ 72

Ch°¡ng 4: ĐiÁu khiển CPU, điÁu khiển quá trình 73

4.1 Trạng thái cÿa quá trình 73

4.2.1.1 Các đặc điểm cÿa ti¿n trình 77

4.2.1.2 ĐiÁu phối đác quyÁn và không đác quyÁn 78

4.2.3.2 Chi¿n l°ÿc phân phối xoay vòng (Round Robin) 82

4.2.3.3 ĐiÁu phối vßi đá °u tiên 83

4.2.3.4 Chi¿n l°ÿc công vißc ngắn nhất 84

4.2.3.5 Chi¿n l°ÿc điÁu phối vßi nhiÁu māc đá °u tiên 85

4.2.3.6 Chi¿n l°ÿc điÁu phối xổ số 86

4.3 Bài toán đồng bá hóa 86

4.3.1 Giải pháp Busy – Waiting 86

4.3.1.1 Giải pháp 2 quá trình 86

4.3.1.2 Giải pháp nhiÁu quá trình 89

4.3.2 Giải pháp Sleep and Wakeup 93

5.1.2 Hß điÁu hành đa xử lý tập trung 112

5.2 Thuật toán song song và ngôn ngữ lập trình song song 113

5.2.1 Thuật toán song song 113

Trang 5

5.2.1.1 Khái nißm thuật toán song song 113

5.2.1.2 Các māc đá song song 113

5.2.1.3 Phân loại các ki¿n trúc song song 114

5.2.1.4 Đánh giá đá phāc tạp cÿa thuật toán song song 114

5.3 Hß điÁu hành đa xử lý phân tán 116

5.3.1 Hß phân tán 116

5.3.2 Những đặc tr°ng chÿ y¿u cÿa hß phân tán 116

Trang 6

Ch°¡ng 1: Gißi thißu chung vÁ hß điÁu hành Gißi thißu:

- Ch°¡ng này giới thiệu lịch sử phát triển hệ điều hành, vai trò và các loại hệ điều hành

Māc tiêu cÿa bài:

trong hệ điều hành.

1.1 Khái nißm vÁ hß điÁu hành:

HĐH (OS – Operating System) là ch°¡ng trình trung gian giữa phần cứng máy tính và ng°ßi sử dÿng

Nhiệm vÿ cāa HĐH là quản lý tài nguyên cāa máy tính, thực thi các ch°¡ng trình ứng dÿng, hỗ trợ các chức năng mạng&

1.1.2 Chāc năng cÿa hß điÁu hành:

Phân chia thßi gian xử lý và định thßi CPU

Phái hợp và đãng bộ hoạt động giữa các processes (coordination & synchronization) Quản lý tài nguyên hệ tháng (thiết bị I/O ,bộ nhớ, file chứa dữ liệu,&)

Thực hiện và kiểm soát access control, protection

Duy trì sự nhất quán (integrity) cāa hệ tháng, kiểm soát lỗi và phÿc hãi hệ tháng khi có lỗi (error recovery)

Cung cấp giao diện làm việc cho users

1.1.3 Quá trình phát triển cÿa HĐH: - Cấu trúc đ¡n giản - MS-DOS

- Cấu trúc phức tạp h¡n – UNIX - Cấu trúc phân tầng

- Cấu trúc vi nhân (client – server) - Cấu trúc máy ảo

Trang 7

- Hệ điều hành Handheld system - Hệ điều hành Gaming system

- Hệ điều hành IOS (Internetwork Operating System) 1.2.1.1 HĐH MainFrame:

Hiện nay, mainframe đ°ợc định nghĩa là những cỗ máy tính có các thành phân bên trong độc lập nh°ng có khả năng phái hợp tát để cung cấp độ tin cậy á mức cao Nó có khả năng lấy vào một l°ợng dữ liệu khổng lã, tính toán, xử lí và xuất ra kết quả cũng khổng lã không kém Mainframe đòi hßi phải có một sự t°¡ng thích ng°ợc chặt chẽ với các phần mềm cũ bái những công ty, tổ chức lớn sử dÿng những phần mềm có tính chuyên biệt cao nên và rất tán kém nếu phải viết lại Ngoài ra, mainframe đ°ợc thiết kế để có thể chạy liên tÿc (uninterrupt) trong một thßi gian rất dài Đây cũng chính là yếu tá quan trọng nhất cāa mainframe bái nó ván đ°ợc dùng cho những mÿc đích mà chỉ cần vài phút hệ tháng bị sập là một "thảm họa" sẽ xảy ra, hoặc nếu hệ tháng ngừng chạy dù chỉ trong thßi gian ngắn thì chi phí để khôi phÿc hoạt động là cực kì đắt đß

Việc cập nhật phần mềm trên máy mainframe th°ßng đòi hßi thiết lập lại hệ điều hành hoặc một phần cāa nó Còn tính chất chạy không ngừng nghỉ cāa mainframe chỉ có đ°ợc khi sử dÿng những kiến trúc hệ điều hành ảo hóa nh° z/OS hay Parallel Sysplex cāa IBM, XPLC cāa Unisys Các kiến trúc ảo hóa này cho phép một hệ tháng đảm đ°¡ng nhiệm vÿ cāa hệ tháng khác trong quá trình ng°ßi ta cập nhật, nâng cấp hay sửa chữa

Đái với các dòng máy lớn nh° mini và mainframe thì hệ điều hành chā đạo vẫn là UNIX Nh° đã nói, UNIX là sự kế thừa cāa MULTICS Thực tế MULTICS đã thất bại vì nó có quá nhiều tham vọng so với khả năng kỹ thuật đ°¡ng thßi Có ng°ßi đã so thất bại cāa MULTICS với thất bại cāa Babbage chế tạo máy tính á đại học Cambridge đầu thế kỷ thứ 19 Ken Thompson, một trong những thành viên chā chát xây dựng MULTICS đã quyết định viết lại hệ điều hành này trên máy PDP-11 Thay vì dùng PL/1 để viết cho MULTICS, ông đã xây dựng một ngôn ngữ lập trình thật hiệu quả - đó chính là ngôn ngữ C đ°ợc sử dÿng rộng rãi ngày nay Tên ban đầu hệ điều hành này là UNICS còn mang dấu ấn cāa MULTICS nh°ng tß ra khiêm tán h¡n (UNiplexed Information and Computing Servive) Từ này đ°ợc phát âm giáng nh° UNIX nên sau này mọi ng°ßi gọi luôn hệ điều hành này là UNIX Kết quả thành công h¡n mức trông đợi Thực tế sau này UNIX thay thế hẳn MULTICS và đ°ợc sử dÿng cho rất nhiều loại máy kể từ máy vi tính đến siêu máy tính Sau đây là một sá nét chính về hệ điều hành UNIX

 Thừa h°áng những tính năng có từ MULTICS, ngay từ đầu UNIX đã đ°ợc thiết kế là một hệ điều hành đa nhiệm và nhiều ng°ßi dùng với c¡ chế phân chia thßi gian Do quan niệm có nhiều ng°ßi dùng nên nó có c¡ chế kiểm soát thẩm quyền nghiêm ngặt để đảm bảo an toàn cho mỗi ch°¡ng trình cùng chạy trên máy tính

 Hệ tháng file cāa UNIX cũng đ°ợc phân cấp theo một cây th° mÿc có các thuộc tính để kiểm soát thẩm quyền: quyền đọc, quyền sửa, quyền thực hiện cho bản thân ng°ßi tạo ra file, nhóm ng°ßi sử dÿng và cho những ng°ßi khác

Trang 8

 UNIX cung cấp nhiều tiện ích d°ới dạng các lệnh Chúng bao gãm: các lệnh thao tác với file và th° mÿc, các ph°¡ng tiện để lọc, các ph°¡ng tiện lập trình, các hệ soạn thảo băn bản, các lệnh để quản trị hệ tháng Chuẩn POSIX (Portable Operating System Interface) 1003.2 cāa Hội đãng tiêu chuẩn cāa IEEE đã quy định cú pháp và ngữ nghĩa cāa khoảng 100 lệnh UNIX Các phiên bản UNIX sau này mặc dù có nhiều sáng tạo riêng nh°ng nói chung đều tuân thā POSIX

UNIX thực ra bắt đầu xuất hiện với các máy tính thế hệ 3 và có nhiều phiên bản, ngoài phiên bản đầu viết cho PDP 11, sau này còn có những phiên bản UNIX System V cāa AT&T, phiên bản UNIX cāa Đại học Berkerley với những tính năng mới nh° tính năng mạng theo giao thức TCP/IP hay bộ nhớ ảo cho phép máy tính có thể thực hiện các ch°¡ng trình lớn h¡n bộ nhớ vật lý cāa máy Chính vì UNIX dùng TCP/IP nên ng°ßi ta còn coi nh° UNIX đã khai sinh ra Internet

Ngày nay hầu hết các máy tính lớn đều sử dÿng UNIX SOLARIS cāa SUN, AIX cāa IBM, Alpha UNIX cāa DEC HP Unix cāa Hewlette Parkard đều là các phiên bản khác nhau cāa hệ điều hành UNIX UNIX cũng đ°ợc dùng trên các máy tính cá nhân nh° các phiên bản SOLARIS trên PC, SCO UNIX và gần đây là LINUX Đặc biệt LINUX là một hệ điều hành mã má, tạo điều kiện để những ng°ßi quan tâm có thể cùng tham gia phát triển UNIX LINUX đã nhận đ°ợc sự hỗ trợ cāa rất nhiều hãng máy tính và các hãng phần mềm lớn và là một hệ điều hành trên máy tính cá nhân rất có triển vọng

Ngoài giao diện lệnh cāa UNIX truyền tháng, ng°ßi ta cũng sử dÿng một giao diện đã hoạ là X - WINDOW

1.2.1.2 HĐH Desktop system (PC):

Với máy vi tính, hệ điều hành có những h°ớng phát triển °u tiên mới: đó là tính năng thân thiện (user-friendly) vì đái t°ợng sử dÿng th°ßng là những ng°ßi không chuyên nghiệp Một sá hệ điều hành nổi tiếng trong thßi kỳ này là DOS, WINDOWS trên các máy dòng PC với bộ xử lý Intel, MAC/OS trên các máy dòng Macintosh với bộ xử lý Motorola

Hệ điều hành DOS (Disk Operating System) đ°ợc xây dựng từ những năm 80 cho họ máy PC và đuợc sử dÿng rộng rãi suát thập kỷ 80 và đầu thập kỷ 90 cho đến khi bị Windows thay thế Ta tóm tắt một sá đặc điểm chính cāa hệ điều hành DOS:

 DOS là một hệ điều hành đ¡n ch°¡ng trình và cá nhân, theo đó mỗi lúc chỉ có một ch°¡ng trình cāa ng°ßi sử dÿng đ°ợc thực hiện trên máy

 DOS tổ chức thông tin trên đĩa từ theo các đ¡n vị quản lý gọi là file Các file đ°ợc tổ chức theo một cấu trúc phân cấp có dạng cây gọi là cấu trúc th° mÿc Đĩa chứa th° mÿc gác, mỗi th° mÿc có quyền chứa nhiều th° mÿc khác Các file có thể nằm á một th° mÿc cấp nào đó

 Giao tiếp giữa ng°ßi và máy theo kiểu lệnh Ví dÿ muán xoá một file có tên là GPT.PAS trên đĩa C ta gõ vào bàn phím lệnh DEL C:GPT.PAS sau đó bấm phím ↵ (phím Enter)  Về chức năng, trên DOS ta có thể thực hiện đ°ợc những công việc nh°: tổ chức th° mÿc

(tạo mới, xoá, di chuyển từ th° mÿc này tới th° mÿc khác, xem danh mÿc các file cāa một th° mÿc), tổ chức file (tạo bản sao trong các th° mÿc khác nhau, xóa, xem nội dung), thực hiện các ch°¡ng trình, đặt chế độ làm việc (đặt cấu hình hệ tháng, đặt thßi gian), tổ chức xử lý theo lô Các ứng dÿng trên DOS đ°ợc xem nh° một lệnh So với các hệ điều hành tr°ớc đó thì DOS rất dễ sử dÿng

Windows cũng là một hệ điều hành nổi tiếng cho các máy PC vì phong cách giao tiếp theo kiểu đã hoạ rất thân thiện Nếu trong môi tr°ßng DOS, giao diện cāa các phần mềm do chính

Trang 9

ch°¡ng trình ứng dÿng tạo ra thì trong windows, giao diện tiêu chuẩn đ°ợc hỗ trợ ngay á mức hệ điều hành Kiểu giao tiếp với các biểu t°ợng (icon) thực đ¡n trải xuáng (pulldown menu), cửa sổ ứng dÿng (window), hộp thoại để đặt tham sá (dialog box) và c¡ chế chỉ định bằng chuột (mouse) đã trá thành chuẩn cho giao tiếp đã hoạ cho đến ngày nay

Thực ra hệ điều hành thực hiện thành công giao tiếp theo kiểu này đầu tiên không phải là Windows cāa Microsoft mà là MAC/OS trên họ máy Macintosh cāa hãng Apple ngay từ năm 1985 Microsoft chỉ là ng°ßi đi sau, thực hiện lại và cải tiến các ý t°áng đã đ°ợc Apple sử dÿng trong dòng máy Macintosh

1.2.1.3 HĐH Multiprocessor system:

Hầu hết các hệ tháng ngày nay là các hệ tháng đ¡n xử lý; nghĩa là chỉ có một CPU chính Tuy nhiên, các hệ tháng đa xử lý (hay còn gọi là hệ song song hay hệ kết nái chặt) đ°ợc phát triển rất quan trọng Các hệ tháng nh° thế có nhiều h¡n một bộ xử lý trong giao tiếp gần, chia sẻ bus máy tính, đãng hã, đôi khi còn là bộ nhớ hay thiết bị ngoại vi Hệ tháng đa xử lý có ba °u điểm chính:

 Thông l°ợng đ°ợc gia tăng: bằng cách tăng sá l°ợng bộ xử lý, chúng ta hy vọng thực hiện nhiều công việc h¡n với thßi gian ít h¡n Tỉ lệ giữa sự tăng tác với N bộ xử lý không là N; đúng h¡n nó nhß h¡n N Trong khi nhiều bộ xử lý cộng tác trên một công việc, một l°ợng chi phí phải chịu trong việc giữ các thành phần làm việc phù hợp Chi phí này cộng với chi phí cạnh tranh tài nguyên đ°ợc chia sẻ, làm giảm kết quả đ°ợc mong đợi từ những bộ xử lý bổ sung T°¡ng tự nh° một nhóm gãm N lập trình viên làm việc với nhau không dẫn đến kết quả công việc đang đạt đ°ợc tăng N lần

 Tính kinh tế cāa việc má rộng: hệ tháng đa xử lý có thể tiết kiệm nhiều chi phí h¡n hệ tháng đ¡n bộ xử lý, bái vì chúng có thể chia sẻ ngoại vi, thiết bị l°u trữ và điện Nếu nhiều ch°¡ng trình điều hành trên cùng tập hợp dữ liệu thì l°u trữ dữ liệu đó trên một đĩa và tất cả bộ xử lý chia sẻ chúng sẽ rẻ h¡n là có nhiều máy tính với đĩa cÿc bộ và nhiều bản sao dữ liệu

 Khả năng tin cậy đ°ợc gia tăng: nếu các chức năng đ°ợc phân bổ hợp lý giữa các bộ xử lý thì lỗi trên một bộ xử lý sẽ không dừng hệ tháng, chỉ năng lực bị giảm Nếu chúng ta có 10 bộ xử lý và có 1 bộ xử lý bị sự cá thì mỗi bộ xử lý trong 9 bộ xử lý còn lại phải chia sẻ cāa công việc cāa bộ xử lý bị lỗi Do đó, toàn bộ hệ tháng chỉ giảm 10% năng lực h¡n là dừng hoạt động Các hệ tháng đ°ợc thiết kế nh° thế đ°ợc gọi là hệ tháng có khả năng chịu lỗi Việc điều hành vẫn tiếp tÿc trong sự hiện diện cāa lỗi yêu cầu một c¡ chế cho phép lỗi đ°ợc phát hiện, chuẩn đoán và sửa lỗi nếu có thể Hệ tháng Tandem sử dÿng sự nhân đôi phần cứng và phần mềm để đảm bảo sự điều hành vẫn tiếp tÿc mặc dù có lỗi xảy ra Hệ tháng này chứa hai bộ xử lý, mỗi bộ xử lý có bộ nhớ cÿc bộ riêng Các bộ xử lý đ°ợc nái kết bái một bus Một bộ xử lý chính và bộ xử lý kia là dự phòng Cả hai bản sao đ°ợc giữ á mỗi bộ xử lý: một là chính và một là dự phòng Tại các điểm kiểm tra trong việc thực thi cāa hệ tháng, thông tin trạng thái cāa mỗi công việc-gãm một bản sao hình ảnh bộ nhớ-đ°ợc chép từ máy chính tới máy dự phòng Nếu một lỗi đ°ợc phát hiện, bản sao dự phòng đ°ợc kích hoạt và đ°ợc khái động lại từ điểm kiểm tra mới nhất Giải pháp này đắt vì nó bao gãm việc nhân đôi phần cứng

Các hệ tháng đa xử lý thông dÿng nhất hiện nay sử dÿng đa xử lý đái xứng Trong hệ tháng này mỗi bộ xử lý chạy bản sao cāa hệ điều hành và những bản sao này giao tiếp với các bản sao khác khi cần Vài hệ tháng sử dÿng đa xử lý bất đái xứng Trong hệ tháng này mỗi bộ xử lý đ°ợc gán một công việc xác định Một bộ xử lý chā điều khiển hệ tháng; những bộ xử lý còn lại hoặc

Trang 10

chß bộ xử lý chā ra chỉ thị hoặc có những tác vÿ đ°ợc định nghĩa tr°ớc C¡ chế này định nghĩa mái quan hệ chā-tớ Bộ xử lý chính lập thßi biểu và cấp phát công việc tới các bộ xử lý tớ

1.2.1.4 HĐH Distributed system:

Một "hệ tháng phân tán" (Distributed Systems-từ giß xin đ°ợc phép sử dÿng từ gác tiếng Anh) đ°ợc định nghĩa là một tập hợp các tiến trình điện toán (process) độc lập, đ°ợc kết nái với nhau bái một hệ tháng mạng (network) để các process này có thể truyền nhận thông tin ('process' á đây đ°ợc định nghĩa là một đ¡n vị điện toán đ°ợc vận hành với một không gian bộ nhớ riêng biệt, không trùng lặp với các process khác) Các process này phái hợp hoạt động với nhau nh° một thực thể duy nhất đái với ng°ßi dùng bên ngoài nhằm thực thi một nhiệm vÿ nào đó Dựa theo định nghĩa này thì nhiều process trên cùng 1 máy tính cũng có thể đ°ợc coi nh° Distributed Systems (DS) Dĩ nhiên trên thực tế, ng°ßi ta quan tâm đến việc vận hành nhiều máy tính cùng với nhau, cho nên chúng ta có thể ngầm hiểu là các process này chạy trên các máy tính riêng biệt.

1.2.1.5 HĐH Real time system:

RTOS (real-time operating system) hay hệ điều hành thßi gian thực là một hệ điều hành (OS) nhằm phÿc vÿ các ứng dÿng thßi gian thực, với khả năng xử lý dữ liệu đầu vào nhanh chóng do không có sự chậm trễ cāa bộ đệm (buffer)

Hệ điều hành thßi gian thực (RTOS) đ°ợc sử dÿng trong môi tr°ßng có sá l°ợng lớn các sự kiện, tác vÿ, cần xử lý trong thßi gian ngắn hoặc trong thßi hạn nhất định Với RTOS, thßi gian xử lý đ°ợc tính bằng phần m°ßi giây hoặc ít h¡n Quá trình xử lý trong RTOS phải diễn ra trong các ràng buộc, giới hạn thßi gian đ°ợc chỉ định, nếu không sẽ dẫn đến lỗi hệ tháng

Khác với các hệ điều hành thông th°ßng nh° Windows, Android, iOS,& chứa rất nhiều ứng dÿng và tính năng nên cần có thßi gian khái chạy khi má ứng dÿng lên, RTOS đ°ợc thiết kế cho các nhiệm vÿ đặc biệt, với thßi gian thực thi các tác vÿ trong thßi gian chính xác, các lỗi đ°ợc ô lập và xử lý nhanh chóng

1.2.1.6 HĐH Handheld system (thi¿t bß cầm tay):

Hệ điều hành di động (tiếng Anh "mobile operating system") là một hệ điều hành dành cho các thiết bị điện thoại di động, máy tính bảng, đãng hã thông minh, laptop 2 trong 1 (laptop

có thể chuyển giữa chế độ máy tính và máy tính bảng), hoặc các thiết bị di động khác Trong khi

đa phần các máy tính xách tay (laptop) cũng có tính "di động", nh°ng các hệ điều hành th°ßng đ°ợc sử dÿng trên chúng không đ°ợc xem là hệ điều hành di động, vì các hệ điều hành này đ°ợc thiết kế ban đầu cho máy tính để bàn và không có hoặc không cần các tính năng di động cÿ thể Ngày nay, sự phân biệt giữa hệ điều hành cho máy tính để bàn và hệ điều hành di động càng trá nên mß dần, khi một sá hệ điều hành mới hoặc các phiên bản mới cho phép hỗ trợ cả hai nền tảng di động và cá định

Hệ điều hành di động kết hợp các tính năng cāa một hệ điều hành cho máy tính cá nhân với các tính năng khác hữu ích cho việc sử dÿng di động hoặc cầm tay; th°ßng bao gãm hầu hết các chức năng đ°ợc coi là cần thiết trong các hệ tháng di động hiện đaị nh°: màn hình cảm ứng, mạng thiết bị di động, Bluetooth, Wi-Fi Protected Access, Wi-Fi, Hệ tháng Định vị Toàn cầu (GPS), máy ảnh sá cho phép chÿp ảnh và quay video, nhận dạng tiếng nói, thu âm, ch¡i nhạc, kết nái tr°ßng gần, và đèn hãng ngoại điều khiển từ xa

Thiết bị di động có khả năng truyền thông di động (ví dÿ: điện thoại thông minh) hiện nay đa sá chứa hai hệ điều hành di động - 1 là nền tảng giao diện phần mềm chính và 2 là một hệ điều hành thßi gian thực cấp thấp điều khiển sóng thu phát và các linh kiện phần cứng khác Các nghiên

Trang 11

cứu chỉ ra rằng các hệ tháng cấp thấp có thể chứa một loạt các lỗ hổng bảo mật cho phép các tin tặc có ý đã xấu tấn công vào thiết bị và nắm đ°ợc quyền kiểm soát cao đái với thiết bị di động cāa ng°ßi dùng khác

1.2.1.7 HĐH gaming system:

Dùng trong các dòng thiết bị ch¡i game nh° Play Station, Xbox, Nintendo và các thiết bị ch¡i game cầm tay&

1.2.1.8 HĐH IOS:

Hệ điều hành cāa thiết bị Cisco:

+ T°¡ng tự nh° một máy tính, một router hoặc switch hoạt động thì phải có hệ điều hành Cisco Internetwork Operating System (IOS) là phần mềm hệ tháng trong các thiết bị cāa Cisco Nó là công nghệ cát lõi đ°ợc má rộng trên hầu hết các dòng sản phẩm cāa Cisco

+ Cisco IOS cung cấp cho các thiết bị với các dịch vÿ mạng sau đây: => Chức năng định tuyến và chuyển mạch

=> Tin cậy và truy cập bảo mật vào tài nguyên mạng => Khản năng má rộng hệ tháng

+ Mạng có máy chā: LAN, WAN,&

1.3 S¡ l°ÿc lßch sử phát triển cÿa hß điÁu hành:1.3.1 Lßch sử phát triển:

Thế hệ 1 (1945-1955):

- Thiết kế, xây dựng, lập trình, thao tác: do 1 nhóm ng°ßi, ch°a có HĐH

Thế hệ 2 (1955-1965):

- Xuất hiện sự phân công công việc

- Hoạt động d°ới sự điều khiển đặc biệt cāa 1 ch°¡ng trình

Trang 12

Thế hệ 3 (1965-1980):

- MULTICS, UNIX

Thế hệ 4 (1980):

1.3.2 Cấu trúc hß thống: 1.3.2.1 Cấu trúc đ¡n giản:

- Khi thiết kế, do giới hạn về dung l°ợng bộ nhớ nên không phân chia thành các module

(modularization) và ch°a phân chia rõ chức năng giữa các phần cāa hệ tháng Ch°¡ng trình ứng dÿng có thể truy xuất các hàm I/O trong ROM BIOS để ghi trực tiếp lên màn hình hay hay bộ điều khiển đĩa

Trang 14

1.3.2.4 Cấu trúc vi nhân (client – server)

Phân chia module theo microkernel (CMU Mach OS, 1980) Chuyển một sá chức năng cāa OS từ kernel space sang user space

Thu gọn kernel => microkernel, microkernel chỉ bao gãm các chức năng tái thiểu nh° quản lý tiến trình, bộ nhớ và c¡ chế giao tiếp giữa các tiến trình

Giao tiếp giữa các module qua c¡ chế truyền thông điệp

Mô hình client-server trên 1 máy

Mô hình client-server trên hệ tháng mạng nhiều máy

Trang 15

Một sá HĐH hiện đại sử dÿng vi nhân:

- Tru64 UNIX (Digital UNIX tr°ớc đây): nhân Mach

- Apple MacOS Server: nhân Mach

- QNX–vi nhân cung cấp: truyền thông điệp, định thßi CPU, giao tiếp mạng cấp thấp và

ngắt phần cứng

Windows NT: chạy các ứng dÿng khác nhau win32, OS/2, POSIX (Portable OS for uniX)

1.3.3 Cài đặt Linux:

1.3.3.1 Cấu hình máy ảo Linux:

Tại màn hình chính cāa VMware, bạn chọn Create a New Virtual Machine.

Tạo máy ảo mßi

Tiếp theo, chọn Installer disc image file (iso) vào chọn Browse để má cửa sổ chọn tệp

Trang 16

Cài đặt từ file iso

Chọn file cài đặt đã tải về tr°ớc đó và bấm Open để tải lên

Chán file iso Kali Linux

Trang 17

Chọn Next và tiếp tÿc quá trình cài đặt

Nhấp chán Next

Thiết lập thông tin cho máy ảo, bao gãm:

 Hệ điều hành (Guest operating system): Linux

 Phiên bản (Version): Other Linux 5.x kernel 64-bit hoặc Other Linux 4.x kernel 64-bit Sau đó, chọn Next và đến b°ớc tiếp theo

Trang 18

Cài đặt máy ảo

Đặt tên và chọn th° mÿc l°u ổ cứng ảo Sau đó, chọn Next

Cài đặt ổ cāng ảo

Trang 19

Chỉ định dung l°ợng, cách l°u trữ cho ổ cứng ảo và bấm Next để tiếp tÿc

Chán dung l°ÿng cho ổ cāng ảo

Chọn Finish để hoàn tất cài đặt máy tính ảo.

Hoàn tất cài đặt

Trang 20

1.3.3.2 Cài đặt Linux:

B°ớc 1: Khởi đáng máy ảo vừa tạo b¿ng cách nhấp chán Play virtual machine.

Khái chạy máy ảo

B°ßc 2: Chọn Graphical Install và ấn Enter

Chọn chế độ cài đặt

Trang 21

B°ßc 3: Chọn ngôn ngữ cho hệ tháng và bấm Continue để tiếp tÿc

Thiết lập ngôn ngữ

B°ßc 4: Chọn quác gia mà bạn đang sinh sáng, sau đó bấm Continue

Chọn Quác gia

Trang 22

B°ßc 5: Tùy chọn layout cho bàn phím mà bạn muán sử dÿng và tiếp tÿc chọn Continue

Chọn kiểu bàn phím

B°ßc 6: Đặt tên cho máy chā (hostname) và chọn Continue để chuyển sang b°ớc tiếp theo

Chọn tên cho host

Trang 23

B°ßc 7: Nhập tên đầy đā cho ng°ßi dùng (full name for the new user) và tiếp tÿc bấm Continue

Nhập tên đầy đā

B°ßc 8: Đặt tên ng°ßi dùng (user name) cho tài khoản cāa bạn và chọn Continue

Chọn tên ng°ßi dùng

Trang 24

B°ßc 9: Tạo mật khẩu cho ng°ßi dùng và chọn Continue Bạn cần nhớ mật khẩu để có thể đăng nhập vào Kali Linux sau khi cài đặt xong nhé

Thiết lập mật khẩu ng°ßi dùng

B°ßc 10: Tiến hành chọn múi giß cho hệ điều hành và bấm Continue

Cài đặt thßi gian

Trang 25

B°ßc 11: Chọn phân vùng cài đặt cho hệ điều hành Kali Linux, bạn chọn Manual và bấm Continue để phân vùng theo cách thā công

Phân vùng theo cách thā công

B°ßc 12: Chọn đúng ổ cứng mà bạn đã tạo phân vùng tráng lúc đầu, sau đó chọn Continue để chuyển sang b°ớc tiếp theo

Chọn phân vùng cho ổ cứng

Trang 26

B°ßc 13: Chọn Yes để xác nhận tạo phân vùng tráng tạo và bấm Continue

Tạo phân vùng tráng

B°ßc 14: Chọn phân vùng tráng vừa đ°ợc tạo (th°ßng sẽ có dòng FREE SPACE) và bấm Continue

Chọn phân vùng tráng

Trang 27

B°ßc 15: Chọn Automatically partition the free space và bấm Continue Trình cài đặt tự

động chia phân vùng cho các tập tin

Tự động chia phân vùng

B°ßc 16: Chọn All files in one partition và tiếp tÿc bấm Continue Nếu bạn có kinh

nghiệm về máy tính, bạn có thể tự động chia sá phân vùng cho các hệ tháng tập tin

Tất cả các tập tin chung một phần vùng

Trang 28

B°ßc 17: Chọn Finish partitioning and write changes to disk và bấm Continue để hoàn

tất việc chia phân vùng ổ cứng

Hoàn tất việc chia phân vùng cho ổ cứng

B°ßc 18: Nhấp chọn Yes và bấm Continue để ghi các thay đổi vào ổ đĩa cứng

Ghi lại các thay đổi

Trang 29

B°ßc 19: Lựa chọn các phần mềm muán cài đặt và bấm Continue Nếu bạn không có kết

nái mạng, các phầm mềm sẽ đ°ợc cài đặt sau khi quá trình cài đặt hệ điều hành hoàn tất

Cài đặt các phần mềm

B°ßc 20: Chọn Yes để cài đặt GRUB boot Loader và bấm Continue

Cài đặt GRUB boot Loader

Trang 30

B°ßc 21: Chọn ổ cứng đầu tiên cāa hệ điều hành và bấm Continue

Chọn ổ cứng chứa hệ điều hành gác

B°ßc 22: Vậy là bạn đã cài đặt xong Kali Linux Giß thì chọn Continue để khái động lại

máy ảo nhé

Kết thúc quá trình cài đặt

Trang 31

Sau khi khái động lại, bạn chỉ cần nhập tên và mật khẩu là có thể sử dÿng

Kali Linux trên VMware

Ch°¡ng 2: ĐiÁu khiển dữ lißu 2.1 Các ph°¡ng pháp tổ chāc và truy nhập dữ lißu:

2.1.1 Bản quản lý th° māc tập tin: 2.1.1.1 Khái nißm:

Tr°ớc khi tập tin đ°ợc đọc, tập tin phải đ°ợc má, để má tập tin hệ tháng phải biết đ°ßng dẫn do ng°ßi sử dÿng cung cấp và đ°ợc định vị trong cấu trúc đầu vào th° mÿc (directory entry) Directory entry cung cấp các thông tin cần thiết để tìm kiếm các khái Tùy thuộc vào mỗi hệ tháng, thông tin là địa chỉ trên đĩa cāa toàn bộ tập tin, sá hiệu cāa khái đầu tiên, hoặc là sá I-node

2.1.1.2 Cài đặt bảng th° māc:

Bảng này th°ßng đ°ợc cài đặt á phần đầu cāa đĩa Bảng là dãy các phần tử có kích th°ớc xác định, mỗi phần tử đ°ợc gọi là 1 entry Mỗi entry sẽ l°u thông tin về tên, thuộc tính, vị trí l°u trữ&cāa một tập tin hay th° mÿc

Trang 32

2.1.2 Bản phân phối vùng nhß

2.1.2.1 Khái nißm bảng phân phối vùng nhß:

Bảng này th°ßng đ°ợc sử dÿng phái hợp với bảng quản lý th° mÿc tập tin, mÿc tiêu là cho biết vị trí khái vật lý cāa một tập tin hay th° mÿc nào đó, nói khác đi là l°u giữ dãy các khái trên đĩa cấp phát cho tập tin l°u dữ liệu hay th° mÿc Có một sá ph°¡ng pháp đ°ợc cài đặt

2.1.2.2 Cài đặt bảng phân phối vùng nhß: a/ Đßnh vß liên ti¿p:

L°u trữ tập tin trên các dãy khái liên tiếp Ph°¡ng pháp này có 2 °u điểm:

+Dễ dàng cài đặt

+Dễ dàng thao tác vì toàn bộ tập tin đ°ợc đọc từ đĩa bằng thào tác đ¡n giản không cần định vị lại

Ph°¡ng pháp này cũng có 2 khuyết điểm:

+Không linh động, trừ khi biết tr°ớc kích th°ớc tái đa cāa tập tin +Sự phân mảnh trên đĩa gây lãng phí lớn

Trang 33

Để cài đặt đ°ợc, khái đĩa không đ°ợc liệt kê trong th° mÿc mà đ°ợc thay thế bằng một cấu trúc dữ liệu, th° mÿc sẽ trß tới cấu trúc này Hê5 tháng tạo 1 tập tin mới có kiểu Link, tập tin mới này chỉ chứa đ°ßng dẫn cāa tập tin đ°ợc liên kết

Trang 34

Cách thứ nhất không hiệu quả khi truy xuất những tập tin có kích th°ớc lớn, do đó hầu hết các hệ tháng tập tinđề dùng khái có kích th°ớc cá đinh

2.1.5 Đá an toàn cÿa hß thống tập tin:

Một hệ thóng tập tin bị hßng còn nguy hiểm h¡n máy tính bị hßng vì những h° hßng trên thiết bị sẽ it chi phí h¡n là hệ tháng tập tin vì nó ảnh h°áng đến các phần mềm trên đó H¡n nữa hệ tháng tập tin không thể cháng lại đ°ợc những h° hßng do phần cứng gây ra, vì vậy chúng phải cài đặt một sá chức năng để bảo vệ

2.1.5.1 Quản lý khối bß hỏng:

Đĩa th°ßng có những khái bị hßng trong quá trình sử dÿng Có 2 giải pháp:

+ Phần mềm: hệ tháng tập tin xây dựng 1 tập tin chứa các khái hßng Kỹ thuật này loại trừ chúng ra khßi danh sách các khái tráng, do đó nó sẽ không đ°ợc cấp phát cho tập tin

+ Phần cứng: dùng sector trên đĩa để l°u giữ danh sách các khái bị hßng Khi bộ kiểm soát thực hiện lần dầu tiên, nó đọc những khái bị hßng và dùng 1 khái thừa để l°u giữ Từ đó không cho truy cập những khái hßng

2.1.5.2 Backup:

Tập tin trên đĩa đ°ợc backup bằng cách chép lại toàn bộ qua 1 đĩa khác, hoặc trên các băng từ

2.1.5.3 Tính không đổi cÿa hß thống tập tin:

Khi truy xuất 1 tập tin, trong quá trình thực hiện, nếu có xảy ra những sự cá làm hệ tháng ngừng hoạt động đột ngột, lúc đó hàng loạt thông tin ch°a đ°ợc cập nhật lên đĩa Vì vậy mỗi lần khßi động, hệ tháng sẹ thực hiện việc kiểm tra trên hai phần khái và tập tin Việc kiểm tra thực hiện, khi phát hiện ra lỗi sẽ tiến hành sửa chữa cho các tr°ßng hợp cÿ thể

2.2 Bản ghi và khối:

2.2.1 Bản ghi logic và bản ghi vật lý:

Một trong những h°ớng tiếp cận trung tâm nhằm tổ chức quản lý bộ nhớ 1 cách hiệu quả là đ°a ra khái niệm không gian địa chỉ đ°ợc xây dựng trên không gian nhớ vât lý Việc tách rßi 2 không gian này giúp HĐH dễ dàng xây dựng các c¡ chế và chiến l°ợc quản lý bộ nhớ hữu hiệu

+ Địa chỉ logic: còn gọi là địa chỉ ảo, tất cả các địa chỉ do bộ xử lý tạo ra

+ Địa chỉ vật lý: là địa chỉ thực tế mà trình quản lý bộ nhớ nhìn thấy và thao tác + Không gian địa chỉ: là tập hợo tất cả các địa chỉ ảo phát sinh bái 1 ch°¡ng trình + Không gian vật lý: là tập hợp tất cả các địa chỉ vật lý t°¡ng ứng với các địa chỉ ảo Địa chỉ ảo và vật lý là nh° nhau trong ph°¡ng thức kết buộc địa chỉ vào thßi điểm biên dịch cũng nh° vào thßi điểm nạp Tuy nhiên có sự khác biệt giữa địa chỉ ảo và vật lý trong ph°¡ng thức kết buộc vào thßi điểm xử lý

MMU (memory-management unit) là một c¡ chế phần cứng đ°ợc sử dÿng để thực hiện chuyển đổi địa chỉ ảo thành địa chỉ vật lý vào thßi điểm xử lý

Ch°¡ng trình cāa ng°ßi sử dÿng chỉ thao tác trên các địa chỉ ảo, không bao giß nhìn thấy các địa chỉ vật lý Địa chỉ thực sự ứng với vị trí cāa dữ liệu trong bộ nhớ chỉ đ°ợc xác định khi thực hiện truy xuất đến dữ liệu

Trang 35

2.2.2 Khối (block):

Thông th°ßng mỗi tập tin th°ßng đ°ợc l°u trên 1 sá khái VD: 1 đĩa có 32768 byte trên 1 track, thßi gian quay là 16.67 msec, thßi gian tìm kiếm trung bình là 30msec thì thßi gian tính bằng msec để đọc 1 khái kích th°ớc kbyte là:

30 + 8.3 + (k/32768) x 16.67 Từ đó tháng kê đ°ợc kích th°ớc khái thích hợp phải < 2k Thông th°ßng kích th°ớc khái là 512, 1k hay 2k

Trang 36

2.3 ĐiÁu khiển buffer(điÁu khiển phòng đßm):

Buffer đ°ợc biết đến là vùng đệm dữ liệu đ°ợc l°u trữ tạm thßi trong bộ nhớ RAM trong thßi gian dữ liệu chß đ°ợc chuyển tới vị trí khác Có 3 loại buffer: trung chuyển, xử lý và vòng tròn.

Để giảm thßi gian chß đợi, hệ tháng có thể tổ chức nhiều phòng đệm vào, khi hết thông tin á 1 phòng đệm, hệ tháng sẽ chuyển sang phòng đệm khác

+ Phòng đệm ra chỉ ghi thông tin Trong hệ tháng có lệnh để giải phóng phòng đệm (ghi vật lý) Khi có chỉ thị ghi (write), thông tin đ°ợc đ°a vào phòng đệm Khi phòng đệm ra đầy, hệ tháng sẽ đ°a thông tin ra thiết bị ngoại vi Hệ tháng cũng có thể tổ chức nhiều phòng đệm ra

¯u điểm: + Đ¡n giản

+ Có hệ tháng song song cao vì tác độ giải phòng vùng đệm lớn + Có tính chất đa năng, thích ứng với mọi ph°¡ng pháp truy cập Nh°ợc điểm:

Trang 37

+ Không mất thßi gian chuyển thông tin trong bộ nhớ trong, thích hợp khi cần kích th°ớc bản ghi dữ liệu lớn

+ Buffer địa chỉ cāa hệ tháng Đọc - Ghi – Xử lý

+ Có sự đãng bộ cāa Đọc – Ghi - Xừ lý (thực hiện song song)

+ Th°ßng áp dÿng cho hệ c¡ sá dữ liệu và hữu dÿng nhất khi l°ợng thông tin vào bằng l°ợng thông tin ra

2.4 Quy trình chung điÁu khiển nhập-xuất:

Thiết bị nhập xuất đa đạng, nhiều loại thiết bị, mỗi loại có nhiều kiểu khác nhau theo: + Quan điểm kỹ thuật (phần cứng): là các thiết bị với bộ vi xử lý, motor, cac linh kiện khác

+ Quan điểm lập trình (phần mềm): giao diện nh° phần mềm để nhận lệnh, thực hiện và trả về kết quả

Vai trò cāa hệ điều hành trong nhập/xuất máy tính là quản lý và điều khiển các thao tác nhập/xuất và các thiết bị nhập/xuất

Điều khiển các thiết bị đ°ợc nái kết tới máy tính là mái quan tâm chā yếu cāa ng°ßi thiết kế hệ điều hành Vì các thiết bị nhập/xuất rất khác nhau về chức năng và tác độ (xem xét chuột, đĩa cứng, và CD-ROM) nên sự đa dạng về ph°¡ng pháp là cần thiết để điều khiển chúng Các ph°¡ng pháp này hình thành một hệ tháng nhập/xuất con (I/O subsystem) cāa nhân, tách rßi phần còn lại cāa nhân từ sự phức tạp cāa việc quản lý các thiết bị nhập/xuất

Công nghệ thiết bị nhập/xuất thể hiện hai xu h°ớng trái ng°ợc nhau Xu h°ớng thứ nhất, chúng ta tăng sự chuẩn hoá phần mềm và giao diện phần cứng Xu h°ớng này giúp chúng ta hợp tác những thế hệ thiết bị đ°ợc cải tiến vào các máy tính và hệ điều hành đã có Xu h°ớng thứ hai, chúng ta tăng sự đa dạng cāa các thiết bị nhập/xuất Thiết bị mới là rất khác với các thiết bị tr°ớc đó đã tạo ra một trá ngại để hợp nhất chúng vào máy tính và hệ điều hành cāa chúng ta Trá ngại này đ°ợc giải quyết bái sự kết hợp kỹ thuật phần cứng và phần mềm Các thành phần phần cứng nhập/xuất c¡ bản nh° cổng, bus và bộ điều khiển thiết bị chứa trong một dãy rộng các thiết bị nhập/xuất Để đóng gói các chi tiết và sự khác biệt cāa các thiết bị khác nhau, nhân cāa hệ điều hành đ°ợc chỉ dẫn để dùng các modules trình điều khiển thiết bị Các trình điều khiển thiết bị (device driver) hiện diện một giao diện truy xuất thiết bị đãng nhất tới hệ tháng con nhập/xuất, nh° các lßi gọi hệ tháng cung cấp một giao diện chuẩn giữa ứng dÿng và hệ điều hành

2.4.1 Phần cāng nhập/xuất:

Các máy tính điều hành nhiều loại thiết bị Hầu hết chúng thuộc các chāng loại phổ biến nh° thiết bị l°u trữ (đĩa, băng từ), thiết bị truyền (card mạng, modem) và thiết bị giao diện ng°ßi dùng (màn hình, bàn phím, chuột),

Trang 38

Một thiết bị giao tiếp với một hệ tháng máy tính bằng cách gái các tín hiệu qua dây cáp hay thậm chí qua không khí Các thiết bị giao tiếp với máy bằng một điểm nái kết (cổng-port) nh° cổng tuần tự Nếu một hay nhiều thiết bị dùng một tập hợp dây dẫn, nái kết đ°ợc gọi là bus Một bus là một tập hợp dây dẫn và giao thức đ°ợc định nghĩa chặt chẽ để xác định tập hợp thông điệp có thể đ°ợc gái qua dây Trong thuật ngữ điện tử, các thông điệp đ°ợc truyền bái các mẫu điện thế điện tử đ°ợc áp dÿng tới các dây dẫn với thßi gian đ°ợc xác định Khi thiết bị A có một cáp gán vào thiết bị B, thiết bị B có một cáp gán vào thiết bị C và thiết bị C gán vào một cổng máy tính, sự sắp xếp này đ°ợc gọi là chuỗi nái tiếp Một chuỗi nái tiếp th°ßng điều hành nh° một bus

2.4.1.1 Thăm dò:

Giao thức hoàn chỉnh cho việc giao tiếp giữa máy tính và bộ điều khiển rất phức tạp nh°ng ký hiệu bắt tay (handshaking) là đ¡n giản Giả sử rằng 2 bits đ°ợc dùng để hợp tác trong mái quan hệ ng°ßi sản xuất-ng°ßi tiêu thÿ giữa bộ điều khiển và máy chā Bộ điều khiển hiển thị trạng thái cāa nó thông qua bit bận (busy bit) trong thanh ghi trạng thái Bộ điều khiển đặt bit bận khi nó đang làm việc và xoá bit bận khi nó sẳn sàng nhận lệnh tiếp theo Máy tính ra tín hiệu mong muán bằng bit sẳn sàng nhận lệnh (command-ready bit) trong thanh ghi lệnh Máy tính thiết lập bit sẳn sàng nhận lệnh khi một lệnh sẳn dùng cho bộ điều khiển thực thi Thí dÿ, máy tính viết dữ liệu xuất thông qua một cổng, hợp tác với bộ điều khiển bằng cách bắt tay nh° sau:

1 Máy tính lặp lại việc đọc bit bận cho tới khi bit này bị xoá

2 Máy tính thiết lập bit viết trong thanh ghi lệnh và viết một byte vào thanh ghi dữ liệu xuất 3 Máy tính đặt bit sẳn sàng nhận lệnh

4 Khi bộ điều khiển nhận thấy rằng bit sẳn sàng nhận lệnh đ°ợc đặt, nó đặt bit bận

5 Bộ điều khiển đọc thanh ghi lệnh và thấy lệnh viết Nó đọc thanh ghi xuất dữ liệu để lấy một byte và thực hiện nhập/xuất tới thiết bị

6 Bộ điều khiển xoá bit sẳn sàng nhận lệnh, xoá bit lỗi trong thanh ghi trạng thái để hiển thị rằng thiết bị nhập/xuất thành công, và xoá bit bận để hiển thị rằng nó đ°ợc kết thúc Vòng lặp này đ°ợc lặp cho mỗi byte

Trong b°ớc 1, máy tính là chß đợi bận hay thăm dò Nó á trong một vòng lặp, đọc thanh ghi trạng thái cho đến khi bit bận đ°ợc xoá Nếu bộ điều khiển và thiết bị nhanh thì ph°¡ng pháp này là một ph°¡ng pháp phù hợp Nh°ng nếu chß lâu máy chā chuyển sang một tác vÿ khác Sau đó, máy tính làm thế nào để biết khi nào bộ điều khiển rảnh? Đái với một sá thiết bị, máy tính phải phÿc vÿ thiết bị nhanh chóng hoặc dữ liệu sẽ bị mất Thí dÿ, khi dữ liệu đang truyền vào cổng tuần tự từ bàn phím, một vùng đệm nhß trên bộ điều khiển sẽ tràn và dữ liệu sẽ bị mất nếu máy tính chß quá lâu tr°ớc khi trả về các bytes đ°ợc đọc

Trong nhiều kiến trúc máy tính, 3 chu kỳ lệnh CPU đā để thăm dò một thiết bị: read một thanh ghi thiết bị, thực hiện phép tính luận lý and để lấy bit trạng thái và tách ra (branch) nếu khác

0 Rõ ràng, thao tác thăm dò c¡ bản là đā Nh°ng thăm dò trá nên không đā khi đ°ợc lặp lại nhiều lần, hiếm khi tìm một thiết bị sẳn sàng phÿc vÿ trong lần thăm dò đầu tiên, trong khi cần dùng CPU để xử lý cho các công việc khác Trong tr°ßng hợp nh° thế, sẽ hiệu quả h¡n để sắp xếp bộ điều khiển phần cứng thông báo cho CPU khi nào thiết bị sẳn sàng phÿc vÿ h¡n là yêu cầu CPU lặp lại việc thăm dò cho việc hoàn thành nhập/xuất C¡ chế phần cứng cho phép một thiết bị thông báo tới CPU đ°ợc gọi là ngắt (interrupt)

Trang 39

ngắt, thực hiện xử lý cần thiết, thực thi chỉ thị return from interrupt để trả về CPU trạng thái thực

thi tr°ớc khi ngắt Chúng ta nói rằng bộ điều khiển thiết bị sinh ra một ngắt bằng cách xác định tín hiệu trên dòng yêu cầu ngắt và bộ quản lý xoá ngắt bằng cách phÿc vÿ thiết bị Hình XI-1 tóm tắt chu kỳ nhập/xuất h°ớng ngắt (interrupt-driven I/O cycle)

2.4.1.3 Truy xuất bá nhß trực ti¿p:

Đái với một thiết bị thực hiện việc truyền lớn nh° ổ đĩa, nó sẽ lãng phí khi dùng bộ vi xử lý để theo dõi các bit trạng thái và đẩy dữ liệu vào thanh ghi điều khiển từng byte một Nhiều máy tính muán giảm đi gánh nặng cho CPU bằng cách chuyển một sá công việc này tới một bộ điều khiển có mÿc

đích đặc biệt đ°ợc gọi là bộ điều khiển truy xuất bộ nhớ trực tiếp (direct memory-access-DMA)

Trang 40

Để khái tạo một thao tác chuyển DMA, máy tính viết một khái lệnh DMA vào bộ nhớ Khái này chứa một con trß chỉ tới nguãn chuyển, một con trß chỉ tới đích chuyển và đếm sá l°ợng byte đ°ợc chuyển CPU viết địa chỉ cāa khái lệnh này tới bộ điều khiển DMA, sau đó CPU tiếp tÿc làm công việc khác Bộ điều khiển DMA xử lý để điều hành bus bộ nhớ trực tiếp, đặt các địa chỉ trên bus để thực hiện việc chuyển mà không có sự trợ giúp cāa CPU Một bộ điều khiển DMA

đ¡n giản là một thành phần chuẩn trong PCs, và bảng nhập/xuất bus chính (bus-mastering I/O

boards) để PC th°ßng chứa phần cứng DMA tác độ cao Quá trình này đ°ợc mô tả trong hình

2.4.2 Phần mÁm nhập/xuất:

Mÿc tiêu chung cāa thiết bị logic là dể biểu diễn Thiết bị logic đ°ợc tổ chức thành nhiều lớp Lớp d°ới cùng giao tiếp với phần cứng, lớp trên cùng giao tiếp tát, thân thiện với ng°ßi sử dÿng Khái niệm then chát cāa thiết bị logic là độc lập thiết bị, ví dÿ : có thể viết ch°¡ng trình truy xuất file trên đĩa mềm hay đĩa cứng mà không cần phải mô tả lại ch°¡ng trình cho từng loại thiết bị Ngoài ra, thiết bị logic phải có khả năng kiểm soát lỗi Thiết bị logic đ°ợc tổ chức thành bán lớp:

+ Kiểm soát lỗi + Điều khiển thiết bị

+ Phần mềm hệ điều hành độc lập thiết bị + Phần mềm mức ng°ßi sử dÿng

2.4.2.1 Kiểm soát ngắt:

Ngắt là một hiện t°ợng phức tạp Nó phải cần đ°ợc che dấu sâu trong hệ điều hành, và một phần ít cāa hệ tháng biết về chúng Cách tát nhất để che dấu chúng là hệ điều hành có mọi tiến trình thực hiện thao tác nhập xuất cho tới khi hoàn tất mới tạo ra một ngắt Tiến trình có thể tự khóa lại bằng cách thực hiện lệnh WAIT theo một biến điều kiện hoặc RECEIVE theo một thông điệp

Ngày đăng: 02/06/2024, 11:50

Tài liệu cùng người dùng

Tài liệu liên quan