Khác biệt giữa bản sửa đổi của “Trình điều khiển thiết bị”

Nội dung được xóa Nội dung được thêm vào
Không có tóm lược sửa đổi
xóa phần linh tinh
Dòng 2:
 
Thường được gọi đơn giản là '''driver''', trình điều khiển thiết bị là phần mềm máy tính được viết riêng cho một thiết bị phần cứng cụ thể và một hệ điều hành cụ thể cho phép một chuơng trình, thường là hệ điều hành hoặc ứng dụng phần mềm, '''tương tác trong suốt''' với thiết bị đó. Trình điều khiển thiết bị cung cấp việc xử lý các [[ngắt]] cần thiết mà các giao tiếp phần cứng phụ thuộc thời gian bất đối xứng đòi hỏi.
''
 
'''Câu 2: Giải thích lý do trong lập lịch quá trình nhiều dòng xếp hàng thì các quá trình có nhiều thao tác vào-ra được xếp vào dòng ưu tiên cao hơn.'''''
 
(Trang 109??)
Khi một quá trình thực hiện vào-ra thì nó kết khối. Khi sử dụng một hàng đợi, thứ tự tương ứng với số lượng trao đổi thì không tính đến các yếu tố khác. Như vậy, việc ưu tiên liên quan đến quá trình với số lượng tra đổi vào-ra lớn. Do đó trong lập lịch quá trình nhiều dòng xếp hàng, việc ưu tiên
 
 
 
'''Câu 3: Giới thiệu về thuật toán đọc File trong hệ điều hành MS-DOS (minh họa bằng dạng đoạn chương trình hoặc sơ đồ khối).'''
 
( Trang 62- 63 )
Trong thuật toán này, giả sử:
- Nội dung bảng FAT được cho bởi một mảng FAT: FAT[i] cho biết nội dung ô FAT thứ i;
- K‎í hiệu EOF tương ứng với dấu hiệu ô FAT kết thúc File;
- Thủ tục DOC(i) thực hiện đọc nội dung cluster thứ i để sử dụng;
- L0 là độ dài File tính theo byte, N0 là số hiệu cluster đầu tiên của File. Hai giá
trị này có trong điểm vào của File;
- L1 là độ dài của cluster tính theo byte
- n là chỉ số cluster hiện thời, L là khối lượng byte đã đọc;
Biểu diễn đoạn chương trình:
 
n := N0;
L := 0;
Repeat
Doc(n);
L := L + L1;
n:= FAT[n];
Util (L>=L0) OR (n=EOF);
 
Điều kiện thoát khỏi vòng lặp (L>=L0) là điều kiện bổ sung, vì với File văn bản DOS, MS-DOS đưa thêm vào một đoạn 128 byte vào cuối File.
 
 
'''Câu 5: Trình bày bốn chế độ điều khiển CPU thực với một dòng xếp hàng các quá trình sẵn sàng'''
 
( Trang 107- 110 )
Bốn chế độ : - FCFS (First Come First Served)
- SJN (Shortest Job Next)
- SRTN (Shortest Remaining Time Next)
- RR (Round-Robin)
1/ FCFS:
Mục tiêu : điều phối cho thời gian chờ đợi trung bình cho mọi quá trình là như nhau.
Chế độ FCFS hoạt động theo dòng xếp hàng nguyên thuỷ, thực hiện lần lượt các quá trình theo thứ tự xếp hàng có sẵn.
Ưu điểm :
- Thao tác đơn giản
- Giờ của CPU không bị phân phối lại, chi phí tổ chức thực hiện thấp nhất
Nhược điểm :
- Không hiệu quả. Các quá trình ngắn cũng phải chờ đợi như các quá trình dài.
- Thời gian chờ đợi trung bình chung lớn. Khi tăng thời gian thực hiện của các quá trình thì thời gian trung bình chờ cũng tăng theo.
2/ SJN
Mục tiêu : cực tiểu hoá thời gian chờ đợi trung bình.
Chế độ SJN sắp xếp các quá trình theo thời gian đòi hỏi CPU thực hiện quá trình.
Ưu điểm :
- So với FCFS, SJN làm giảm thời gian chờ đợi trung bình.
- Nhanh chóng loại bỏ các tiến trình ngắn, giảm số lượng các tiến trình trong hàng đợi.
Nhược điểm :
- Vì SJN làm giảm số phần tử trong hàng đợi, dẫn đến sẽ có các phần tử khác được thêm vào, và nảy sinh sự phân phối lại. Do vậy sẽ có xu thế đẩy các quá trình dài về sau.
 
3/ SRTN
Mục tiêu : Ưu tiên điều phối cao hơn cho các quá trình có xác suất đòi hỏi thời gian CPU nhỏ là cao hơn.
Chế độ SRTN hoạt động căn bản như trong SJN, tuy nhiên có bước cải tiến đó là sử dụng thời gian thực hiện còn lại làm tham số điều khiển. Hệ thống sử dụng nguyên tắc: “kế tiếp là quá trình với thời gian còn lại nhỏ nhất”.
Ưu điểm :
- Đảm bảo thời gian chờ đợi trung bình chung, ưu tiên các quá trình ngắn hơn quá trình dài.
Nhược điểm :
- Phức tạp thêm do phải ghi nhận thời gian thực hiện của các quá trình mỗi lần vào CPU.
 
4/ RR
Mục tiêu : điều phối đồng đều cho các quá trình.
Chế độ RR sử dụng lượng tử thời gian. Mỗi quá trình trong hàng đợi nhận được một lượng tử thời gian q và nếu quá trình thực hiện hết thời lượng này mà không kết thúc hoặc không bị kết khối thì nó sẽ được đưa và cuối hàng đợi.
Ưu điểm :
- Quá trình đòi hỏi ít thời gian sẽ kết thúc nhanh hơn. Uu tiên quá trình ngắn, nhưng cũng không tổn hại lớn cho các quá trình dài.
- q có độ dài càng thích hợp thì hệ thống càng được thực hiện nhanh.
Nhược điểm :
- Do phải thường xuyên phân phối lại giờ CPU nên thời gian chờ đợi trung bình chung có thể lớn hơn FCFS.
 
 
'''Câu 6: Trình bày các nội dung cơ bản về swapping bộ nhớ.'''
 
( Trang 83- 84 )
Swapping là cách thức hệ thống thực hiện việc chuyển giao nội dung một số phần bộ nhớ ra đĩa từ để giải phóng bộ nhớ cho một yêu cầu phân phối hiện tại.
Swapping áp dụng chủ yếu cho điều phối bộ nhớ liên tục song trong một số trường hợp cũng được dùng trong điều phối bộ nhớ gián đoạn.
Về hình thức có thể coi swapping là một biến thể của overlay.
Môđun hệ thống của swapping là swapper, có các chức năng:
- Swap out : chọn quá trình để đưa ra đĩa từ
- Swap in : chọn quá trình để đưa trở lại từ đĩa từ vào bộ nhớ trong
- Định vị và quản l‎ý không gian swap
 
 
'''Câu 7: Trình bày các nội dung về kiểu dữ liệu semaphore nhị phân và đa giá trị (giá trị, phép toán)'''
 
(Trang 128)
1/ semaphore nhị phân
Dijkstra đã sử dụng hai toán tử: P (SIGNAL – yêu cầu tài nguyên) và V (WAIT – giải phóng tài nguyên). Các toán tử này làm việc trên các biến gọi là semaphore. Trong semaphore nhị phân, tương ứng với giá trị 1 là mở semaphore (cho phép chạy) còn giá trị 0 là đóng semaphore (không chạy).
Phép toán: với mỗi semaphore, gắn một danh sách các quá trình đi tới samephore.
P(s), V(s): các toán tử thực hiện. s: biến semaphore nhị phân.
P(s): if s=1
then s<-0 {đóng semaphore}
else Kết khối quá trình này (chứa lời gọi P(s)) theo s;
đặt một quá trình đang chuẩn bị vào bộ xử lý
V(s): if Danh sách quá trình chờ đợi s không rỗng
then Tách khối quá trình chờ đợi s
else s<-1 {mở semaphore}
(Trang 133-134)
2/ semaphore đa giá trị
Một semaphore đa giá trị s nhận các giá trị từ 0 đến N (N là số tài nguyên cùng loại). Khi s =0 tức là không còn tài nguyên rỗi để thực hiện nhu cầu.
Phép toán: P(s), V(s): các toán tử thực hiện. s: biến semaphore đa giá trị.
P(s): if s>0
then ss-1
else Kết khối quá trình theo s
đặt một quá trình đang chuẩn bị vào CPU
V(s): if Danh sách quá trình chờ đợi s không rỗng
then Tách khối quá trình chờ đợi
else ss+1
 
 
'''Câu 8: Trình bày giải pháp chữ ký điện tử liên quan tới tính toàn vẹn dữ liệu. Giải pháp này có thực sự chống được kẻ tấn công thay đổi nội dung thông điệp hay không ?'''
 
Chữ ký điện tử (Digital Signature) dựa trên kỹ thuật sử dụng mã hóa khóa công
khai. Trong đó, cả người gửi và người nhận, mỗi người có một cặp khóa là khóa bí mật,
hay riêng tư (Private Key) và khóa công khai (Public Key).
Chữ ký điện tử hoạt động khi một người gửi một thông điệp, người đó dùng
khóa riêng c ủa mình để mã hóa thông điệp sang một dạng khó nhận dạng. Người nhận
dùng khóa công khai của người gửi để mã hóa thông điệp. Tuy nhiên, để an toàn thật sự
phải có các bước bổ sung. Do đó, thuật toán băm MD5 và thuật toán mã hóa RSA có thể
được áp dụng để xây dựng ứng dụng chữ ký điện tử
'''Câu 9: Trình bày khái niệm bế tắc và điều kiện nảy sinh bế tắc.'''
 
(Trang 134- 135)
1/ Khái niệm:
Bế tắc là hiện tượng khi một nhóm các quá trình bị kết khối một cách lâu dài.
2/ Điều kiện nảy sinh:
Bế tắc khi xảy ra đồng thời 4 điều kiện sau:
- Loại trừ việc dùng chung (chiếm giữ và chờ đợi): các quá trình không chia sẻ dùng đồng thời mà có nhu cầu sử dụng độc lập tài nguyên hệ thống, không nhường cho các quá trình khác và đồng thời yêu cầu thêm tài nguyên mới.
- Chờ đợi : quá trình có nhu cầu tài nguyên mới và chỉ khi mà nhu cầu được đáp ứng thì mới tiếp tục thực hiện.
- Không được phân phối lại : Không được bổ sung thêm tài nguyên và không thực hiện việc phân phối lại tài nguyên cho các quá trình.
- Sự chờ đợi vòng tròn : các quá trình chờ đợi vòng tròn lẫn nhau.
 
 
 
'''Câu 10: Trình bày khái niệm tách khối, kết khối trong điều khiển dữ liệu.'''
 
(Trang 44)
1/ Tách khối:
- Tách khối là quá trình từ các khối đưa ra được các bản ghi cần tìm có liên quan đến khối đó. Tách khối diễn ra sau khi hệ thống đã đọc một khối từ ngoài vào bộ nhớ trong và trước khi chương trình người dùng xử lý bản ghi. Việc tách khối có thể do hệ điều hành hoặc do người dùng đảm nhận.
 
2/ Kết khối:
- Kết khối là quá trình ngược lại với tách khối. Kết khối diễn ra sau khi chương trình người dùng chuẩn bị xong nội dung bản ghi và đưa bản ghi đó vào khối để chuyển ra ngoài. Việc kết khối cũng có thể do hệ điều hành hoặc người dùng đảm nhận.
 
[[Thể loại:Phần mềm]]