Tin học
Bạn có muốn phản ứng với tin nhắn này? Vui lòng đăng ký diễn đàn trong một vài cú nhấp chuột hoặc đăng nhập để tiếp tục.

ĐỀ CƯƠNG VÀ TÀI LIỆU THAM KHẢO (BÀI 1->4)

Go down

ĐỀ CƯƠNG VÀ TÀI LIỆU THAM KHẢO (BÀI 1->4) Empty ĐỀ CƯƠNG VÀ TÀI LIỆU THAM KHẢO (BÀI 1->4)

Bài gửi  chauthanhvy146(I11C) 27/8/2011, 08:24

Đây là "ĐỀ CƯƠNG VÀ TÀI LIỆU THAM KHẢO (BÀI 1->4)" của các anh/chị lớp trước, các bạn tham khảo thêm nhé!
ĐỀ CƯƠNG VÀ TÀI LIỆU THAM KHẢO (BÀI 1->4)
CÂU HỎI

BÀI 1: GIỚI THIỆU HỆ ĐIỀU HÀNH

Câu 1: Mục đích, ý nghĩa và cấu trúc môn Hệ điều hành (HĐH).
Câu 2: Phân tích định nghĩa hệ điều hành là máy tính ảo hay máy tính mở rộng.
Câu 3: Phân tích định nghĩa hệ điều hành là bộ quản lý tài nguyên.
Câu 4: So sánh hệ điều hành đa chương với hệ điều hành đơn chương. Phân biệt hệ đa chương với hệ chia thời gian.
Câu 5: Đánh giá và so sánh vai trò sử dụng hệ điều hành Windows và Linux ở Việt Nam.
Câu 6: Phân biệt File-Server và Client-Server về bản chất.
Câu 7: Phân biệt các hệ gom cụm với hệ đa xử lí.
BÀI 2: CẤU TRÚC MÁY TÍNH

Câu 1: Trình bày quá trình khởi động máy và hệ điều hành.
Câu 2: Nguyên lí xử lí ngắt của hệ điều hành.
Câu 3: Tuyến thời gian của một tiến trình có 2 yêu cầu tới thiết bị ngoài.
BT Thể hiện tuyến thời gian của 1 tiến trình có 3 yêu cầu tới thiết bị ngoài.
Câu 4: Phân biệt phương thức nhập xuất đồng bộ với không đồng bộ,cho ví dụ minh họa.
Câu 5: Phân cấp bộ nhớ, so sánh các cấp.
Câu 6: Nguyên lí lưu gần (caching).
Câu 7: Trình bày thuật giải bảo vệ bộ nhớ bằng thanh ghi cơ sở và thanh ghi giới hạn.(Vẽ hình và giải thích)
Câu 8: Lập một chương trình tự động chạy theo thời gian.

BÀI 3: CẤU TRÚC HỆ ĐIỀU HÀNH

Câu 1: Thế nào là bộ thông dịch lệnh (Command-Interpreter). Phân biệt thông dịch với biên dịch.
Câu 2: Hai phương thức liên lạc giữa các tiến trình và phân biệt 2 tiến trình đó.(Vẽ hình)
Câu 3: Khái niệm và ứng dụng máy tính ảo.

BÀI 4: QUẢN LÍ TIẾN TRÌNH

Câu 1: Định nghĩa tiến trình và so sánh khái niệm tiến trình với chương trình.
Câu 2: Mô hình chuyển trạng thái của tiến trình.
Câu 3: Khái niệm khối kiểm soát tiến trình.
Câu 4: Mô hình luân chuyển CPU giữa 2 tiến trình và giải thích.
Câu 5: Khái niệm trình điều phối.
Câu 6: Phân biệt trình điều phối chậm với điều phối nhanh.
Câu 7: Lí do cộng tác giữa các tiến trình.
Câu 8: Phát biểu bài toán sản xuất tiêu thụ với những thuật giải phù hợp.
Câu 9: Tổ chức liên lạc trong hệ thống khách chủ, phân biệt giao thức TCP và UDP.
BÀI TRẢ LỜI

BÀI 1:GIỚI THIỆU HỆ ĐIỀU HÀNH
Câu 1:Mục tiêu,ý nghĩa,cấu trúc môn học hệ điều hành
Trả lời:
-Mục tiêu:Nhằm cung cấp các khái niệm cơ bản về cấu trúc và hoạt động của hệ điều hành.
-Ý nghĩa:
Hiểu sâu hơn về nguyên lý hoạt động của phần cứng và phần mềm máy tính.
Học phương pháp phân tích,thiết kế và lập trình một hệ thống lớn để áp dụng cho công tác nghiệp vụ sau này.
Là kiến thức cơ sở để từ đó sử dụng, khai thác hiệu quả những dịch vụ của hệ điều hành, tích cực xây dựng những ứng dụng với giao diện dễ sử dụng nhất.
-Cấu trúc môn học:
Môn học gồm có 8 chương:
• Giới thiệu hệ điều hành.
• Cấu trúc máy tính.
• Quản lý tiến trình.
• Đa luồng.
• Điều phối CPU.
• Đồng bộ hóa tiến trình.
• Deadlocks.
VD:sau khi chúng ta học xong môn này thì chúng ta có thể viết những chương trình ứng dụng từ đơn giản(gửi thông tin từ máy này qua máy khác) đến phức tạp(nâng cấp trình diện yahoo chat dễ sử dụng hơn),sau này có thể viết chương trình ứng dụng trong thực tế(phần mềm tự động cập nhật thông tin khi tới giờ)
Câu 2: Phân tích định nghĩa hệ điều hành là máy tính mở rộng hay máy tính ảo.
Trả lời:
- Coi nó như máy tính mở rộng vì nó ẩn các chi tiết của phần cứng máy tính dễ sử dụng hơn.
- Cung cấp các dịnh vụ khác cho phép các chương trình khác dễ sử dụng.
- Người sử dụng và người lập trình được cung cấp một giao diện đơn giản, dễ hiểu và không phụ thuộc vào thiết bị cụ thể.
- Thực tế: Hệ điều hành là một hệ thống bao gồm nhiều máy tính trừu tượng xếp thành nhiều lớp chồng lên nhau, máy tính mức dưới phục vụ cho máy tính mức trên.
- Bản thân chương trình ứng dụng cũng là một máy tính trừu tượng và phải dễ sử dụng nhất.
- Công việc của người lập trình là liên tục xây dựng các máy tính trừu tượng như vậy (cho người khác sử dụng và cho cả chính mình).
- Máy tính mở rộng là máy tính có thêm những chức năng có ích cho người dùng .
- Máy tính ảo là sự phát triển logic của kiến trúc phân lớp.
VD:các chương trình ứng dụng chạy trên windows,HĐH windows cho phép chúng ta tương tác với chúng thông qua các công(nút start trên màng hình)
Câu 3: Phân tích định nghĩa hệ điều hành là bộ quản lý tài nguyên.
Trả lời:
- Đáp ứng các yêu cầu sử dụng tài nguyên thiết bị như: CPU,Bộ nhớ trong,ổ đĩa,ổ băng,máy in,card mạng,...
- Trong trường hợp nhiều chương trình,nhiều người dùng cùng chia sẻ các tài nguyên chung như vậy, HĐH phải giải quyết các tranh chấp có thể xảy ra và đứng ra làm trung gian điều phối sao cho tài nguyên được sử dụng đúng thứ tự,dùng xong lại được cấp cho đối tượng khác sử dụng.
VD:3 chương trình cùng in ra một máy in duy nhất. Khó chấp nhận trường hợp 1 trang in xen kẽ nhiều kết quả từ nhiều nguồn khác nhau. HĐH giải quyết bằng cách đưa kết quả in của mỗi chương trình tạm thời ra đĩa cứng, sau đó lần lượt in từ đĩa vào thời điểm thích hợp.

Câu 4: Phân biệt HĐH đa chương với HĐH đơn chương, Phân biệt hệ đa chương với hệ chia thời gian.
Trả lời:
* Hệ đa chương với hệ đơn chương.
- hệ đa chương với nhiều tác vụ trong bộ nhớ:
Nhiều tác vụ (tiến trình) cùng một lúc trong bộ nhớ.
Khi một tác vụ không cần đến CPU (ví dụ, do phải thực hiện I/O với thiết bị ngoài), tác vụ khác được thi hành.
- Hệ đơn chương:
Mỗi thời điểm chỉ có một tác vụ (không tính nhân và các tiến trình của HĐH) trong bộ nhớ.
* Hệ đa chương với hệ chia thời gian.
- Hệ chia thời gian:
hệ chia thời gian cũng là hệ đa chương, hệ chia thời gian ít nhất là hệ đa chương.
Mỗi tác vụ chỉ được dùng CPU trong một khoảng thời gian ngắn (VD là 20ms), sau đó bị ngắt, chuyển sang tác vụ khác, cứ thế xoay vòng.
Mỗi người dùng điều có cảm giác là máy tính chỉ phục vụ cho mình là duy nhất.
VD:
* Hệ đa chương:1 người có thể làm nhiều công việc cùng 1 lúc như vừa lau nhà,rửa chén,giặc đồ.
* Hệ đơn chương:1 người chỉ làm được 1 công việc mà thôi,nếu rửa chén thì không lau nhà.
* Hệ chia thời gian:1 người chỉ làm công việc lau nhà trong 1 khoảng thời gian nhất định là 5h rồi sẻ chuyển sang công việc khác cũng với lượng thời gian nhất định.

Câu 5: Đánh giá vai trò sử dụng HĐH Windows và Linux tại Việt Nam
(Tự trả lời)
Câu 6: Phân biệt File-Server và Client-Server
Trả lời :
- File-Server:
File-Server Là máy chủ không tính toán nhiều, chỉ làm dịch vụ tập tin cho máy khác.
- Client-Server :
Mô hình Client-Server là một mô hình được sử dụng rộng rãi trong mạng máy tính. Ý tưởng của mô hình này là máy con (đóng vài trò là máy khách) gửi một yêu cầu để máy chủ (đóng vai trò người cung ứng dịch vụ), máy chủ sẽ xử lý và trả kết quả về cho máy khách.
VD:trong 1 công ty,các máy của nhân viên đoáng vai trò là các Client-Server,có 1 máy dùng để trao đổi thông tin giữa các máy nhân viên với nhau là File-Server.

Câu 7 :Phân biệt các hệ gom cụm với các hệ đa xử lý.
Trả lời :
*Hệ gom cụm :
- Nhiều máy nối mạng để cùng thưc hiện việc chung.
- Phân loại:
Gom cụm đối xứng:các máy ngang hàng về chức năng,Mối máy thực hiện phần việc của mình và giám sát lẫn nhau.
Gom cụng phi đối xứng:Một máy chạy trong hot Standby Mode,Nghĩa là chỉ giám sát công việc các máy khác nhưng sẽ đảm đương công việc của máy gặp sự cố.
* Hệ đa xử lý :
- Hệ đa xử lý là hệ hỗ trợ nhiều CPU còn gọi là hệ song song .
- Giúp tăng thông suất, tiết kiệm và tăng độ tin cậy.
- Phân loại:
Đa xử lý đối xứng:Có nhiều CPU cùng vận hành và sử dụng chung bộ nhớ, thiết bị. Các CPU này ngang hàng về chức năng
Đa xử lý phi đối xứng: Các CPU sử dụng chung bộ nhớ, thiết bị. Mỗi CPU thực hiện 1 chức năng riêng. Có 1 CPU Master điều phối công việc cho các CPU Slaves còn lại.
VD:
* Hệ gom cụm:1 nhóm sinh viên làm đồ án,các thành viên trong nhóm có quyền hạn ngang nhau,không có sự phân biệt giữa các thành viên,nếu có 1 người trong nhóm bị bệnh thì sẻ có người đảm đương công việc của người đó!
* Hệ đa xử lý:1 nhóm sinh viên làm đồ án,các thành viên trong nhóm hỗ trợ lẫn nhau để làm đồ án,nếu có 1 người trong nhóm bị bệnh thì nhóm trưởng sẽ phân chia công việc của người đó đồng điều cho các thành viên trong nhóm.

BÀI 2:CẤU TRÚC MÁY TÍNH
Câu 1:Trình bày quá trình khởi động máy tính và HĐH
Trả lời:
- Sau khi bật nguồn, chương trình mồi Bootstrap lấy từ ROM hoặc EEPROM được khởi động cùng chức năng khởi hoạt các thiết bị hệ thống:các thanh ghi CPU,Bộ nhớ,...Sau đó khởi động hạt nhân của hệ điều hành nạp từ đĩa cứng.
- Hạt nhân của HĐH khởi động tiến trình đầu tiên gọi là INIT và chờ các sự kiện có thể xảy ra.

Câu 2: Nguyên lý ngắt của HĐH
Trả lời:
- Có hai loại ngắt chính:
Tín hiệu ngắt từ các thiết bị(Ngắt cứng) truyền qua system Bus.
Tín hiệu ngắt từ chương trình người dùng (ngắt mềm) nhờ lời goị hệ thống. Lệnh đặc biệt này là cơ chế để tiến trình người dùng yêu cầu một dịch vụ của HĐH.
- Với mỗi loại ngắt, có đoạn mã riêng của HĐH dùng để xử lý.
- Các HĐH hiện đại được dẫn dắt bởi các sự kiện. Nếu không có tiến trình nào vận hành,không có thiết bị I/O nào làm việc,HĐH im lặng chờ và theo dõi.
- Thông thường, mỗi loại ngắt tương ứng với một dòng trong bảng chứa con trỏ tới chương trình xử lý loại ngắt đó (Bảng véc-tơ ngắt). Bảng này nằm ờ vùng thấp của RAM.
- Cơ chế xử lý ngắt phải có trách nhiệm ghi lại địa chỉ lệnh bị ngắt để sau đó có thể quay lại địa chỉ này cùng với nhiều thông tin khác có thể được ghi vào ngăn xếp hệ thống với nguyên tắc làm việc LIFO.
VD:
* Ngắt cứng:khi chương trình đang chạy thì bị ngắt do có câu lệnh buột phải ngắt chương trình.
* Ngắt mềm:khi chương trình đang chạy nhưng người dùng muốn sử dụng thao tác khác nên máy tính phải dừng việc đang làm và thực thi hiệu lệnh của người dùng.

Câu 3: Tuyến thời gian của một tiến trình có các yêu cầu tới thiết bị ngoài.
Trả lời:


Câu 4: Phân biệt phương thức nhập xuất đồng bộ với phương thức nhập xuất không đồng bộ.(ví dụ minh họa)
Trả lời:
* Nhập/xuất đồng bộ:
- Là nhập/xuất khi mà tiến trình người dùng phải chờ cho đến khi nhập xuất kết thúc rồi mới chạy tiếp.
- Khi dữ liệu truyền tới phần cứng tiến trình người dùng phải chờ một khoảng thời gian để xuất thông tin.
* Nhập/xuất không đồng bộ:
- Là nhập/xuất được tiến hành song song, đồng thời với tiến trình người dùng.
VD:
* Nhập/Xuất đồng bộ:Với thiết bị bàn phím chương trình phải chờ người dùng bấm Yes hoặc No,với kết quả Yes hoặc No chương trình mới chạy tiếp.
* Nhập xuất không đồng bộ:khi người dùng nhập xong thì chương trình sẽ tự động xuất ra mà không cần phải hỏi ý kiến của người dùng.
Câu 5: Phân cấp các loại bộ nhớ, trình bày vai trò các loại bộ nhớ với nhau.
Trả lời:
* Có 2 bộ nhớ chính:
- Bộ nhớ chính
Chương trình máy tính phải nạp vào RAM trước khi thực hiện.
Lệnh cần thực hiện phải được nạp vào thanh ghi của CPU
Các tác tử tương ứng cũng được lấy từ RAM.
Lý tưởng nhất là chương trình và dữ liệu đều nằm trong RAM nhưng không khả thi vì RAM quá nhò và là loại bộ nhớ không chắc do nội dung bị xóa khi mất điện.
RAM được sử dụng làm bộ nhớ sơ cấp so với bộ nhớ trên các thiết bị ngoài.
- Đĩa từ:
Dung lượng lớn.
Giá rẻ.
Dùng chứa chương trình và dữ liệu.
Nội dung không bị xóa khi mất điện.
Được sử dụng làm bộ nhớ thứ cấp so với RAM.

Câu 6: Nguyên tắc lưu gần.
Trả lời:
- Là nguyên tắc quan trọng của hệ thống máy tính.
- Thông tin từ RAM có thể được cơ chế phần cứng đưa vào bộ nhớ nhanh hơn gọi là Cache. Khi CPU cần chính thông tin đó,không cần phải truy xuất RAM, mà lấy ngay từ Cache.
- Loại bộ nhớ này không do HĐH quản lý và cấp phát.
-Thực tế, RAM là loại Cache nhanh so với đĩa cứng và HĐH có chức năng quản lý sự lưu chuyển dữ liệu giữa hai loại bộ nhớ này.
VD:khi ta đanh 1 địa chỉ vào wed để tìm kiếm thông tin thì RAM đã thực hiện lưu lại đại chỉ này trên Cache,nếu ta đánh vào đó từ khóa gần giống với từ khóa ta vừa nhập vào thì nó sẽ hiện ra luôn từ khóa ta vừa nhập vào cho ta chọn.

Câu 7:Trình bày thuật giải bảo vệ bộ nhớ bằng thanh ghi cơ sở và thanh ghi giới hạn(vẽ hình và giải thích).
Trả lời:


CPU tính toán ra 1 địa chỉ và địa chỉ này phải được kiểm tra tính hợp lệ.
- Nếu địa chỉ nhỏ hơn giá trị lưu trong thanh ghi cơ sở thì hệ thống sẽ báo lỗi.
- Nếu địa chỉ lớn hơn hoặc bằng giá trị lưu trong thanh ghi cơ sở thì tiếp tục được kiểm tra với giá trị trong thanh ghi giới hạn cộng với giá trị trong thanh ghi cơ sở:
Nếu địa chỉ lớn hơn hoặc bằng tổng trên thì hệ thống sẽ báo lỗi truy cập sai địa chỉ.
VD:
HĐH cho ra 1 địa chỉ có chỉ số là 300041,HĐH sẽ tiến hành kiểm tra bằng thanh ghi cơ sở(so sánh 300041 có lớn hơn hoặc bằng 300040(là chỉ số của thanh ghi cơ sở) )nếu đúng thì nó sẽ chuyển qua thanh ghi giới hạn để tiếp tục kiểm tra(so sánh 300041 có nhỏ hơn 420940(là chỉ số của thanh ghi giới hạn))nếu đúng thì nó sẽ thực hiện công việc,nếu 1 trong hai tiến trình kiểm tra phát hiện bị sai thì sẽ thoát ra khỏi chương trình.

BÀI 3: CẤU TRÚC HỆ ĐIỀU HÀNH
Câu 1: Thế nào là bộ thông dịch lệnh. Phân biệt thông dịch với biên dịch.
Trả lời:
* Bộ thông dịch lệnh:
- Giao diện dòng lệnh là một phương thức giao tiếp giữa User và HĐH.
- Một số HĐH coi Command-Interpreter là bộ phận của hạt nhân trong khi MS-DOS và UNIX chỉ coi là chương trình đặc biệt.
- Giao diện do Command-Intepreter hỗ trợ được gọi là Shell.
- Một trong những "vỏ" thân thiện đầu tiên xuất hiện trong HĐH Mac OS cho máy tính Macintosh.
- * Phân biệt thông dịch với biên dịch:
- Thông dịch: Là nhận được lệnh nào, bộ thông dịch phân tích lệnh đó rồi thực hiện luôn.
- Biên dịch: Là chuyển đổi toàn bộ chương trình của người dùng, bao gồm các lệnh cần thực hiện sang ngôn ngữ máy rồi mới thực hiện cả chương trình.
VD:
*Thông dịch:khi ta dùng “google dịch” thì ta đánh vào từ nào nó sẽ dịch ra cho ta từ đó luôn,ta không cần phải nhấn nút “dịch”.
* Biên dịch:khi ta viết chương trình trên Visual C sau khi viết xong ta phải nhấn phím F5 thì chương trình mới chạy.

Câu 2: Phương thức liên lạc giữa các tiến trình. Phân biệt hai mô hình đó (vẽ hình).
Trả lời:

- Liên lạc giữa các tiến trình: Bằng thông điệp(Messages) và qua Vùng nhớ chung.Trao đổi thông tin giữa các tiến trình trên một máy/giữa các máy khác nhau trong mạng.
-Liên lạc giữa các tiến trình:
Mỗi máy tính trong mạng có HostName và IP Address. Các tên này được HĐH chuyển đổi thành một số nguyên gọi là HostID.
Mỗi tiến trình có ProcessName và ProcessID.
Cặp số (HostID, ProcessID) xác định duy nhất tiến trình trong mạng và được dùng để mở/đóng kết nối với tiến trình đó.
Các lời gọi hệ thống kiểu Open,Close,Read,Write,Wait để thao tác với tiến trình.
- Truyền thông điệp: Tiến trình A sẽ truyền dữ liệu thông qua hệ thống, Tiếntrình B sẽ nhận dữ liệu từ hệ thống.
- Dùng bộ nhớ chung: Tiến trình A sẽ truyền dữ liệu vào bộ nhớ chia sẻ (dùng chung), Tiến trình B sẽ lấy dữ liệu tù bộ nhớ chia sẻ này.

Câu 3: Các chương trình hệ thống.
Trả lời:
- Còn gọi là các trình tiện ích.
- Các nhóm trình tiện ích:
Quản lý tập tin/thư mục:Tạo lập,loại bỏ,sao chép,đổi tên,In ấn,Liệt kê.
Cung cấp thông tin về trạng thái hệ thống: Ngày,Giờ,Bộ nhớ trống,Số Users.
Chỉnh lý tập tin: Soạn thảo văn bản (NotePad,WordPad).
Một số trình biên dịch/Thông dịch: C,C ,VB.
Nạp và liên kết chương trình: Loaders, Linkage Editors.
Liên lạc: Gửi/nhận thông điệp giữa các máy, trình duyệt (Web Browser), Thư điện tử, Truyền file,...
Shell: Command-Interpreter, Desktop Window.

Câu 4: Khái niệm và ứng dụng của máy tính ảo.
Trả lời:
* Máy tính ảo:
- Là sự phát triển lô-gic của kiến trúc phân lớp.
- Bằng cách điều phối CPU và kỹ thuật bộ nhớ ảo, có thể tạo cho người dùng ảo giác rằng người đó đang dùng bộ xử lý, bộ nhớ và các thiết bị của riêng mình.
- Nói cách khác: Máy tính ảo của người dùng được giả lập trên nền máy tính vật lý.
* Ứng dụng của máy tính ảo:
- Tính bảo mật cao do các máy ảo độc lập với nhau. Các tài nguyên của máy vật lý được bảo vệ hoàn toàn vì các máy tính ảo có thiết bị ảo (ví dụ, ổ đĩa ảo). Có thể lấy từ Internet về một chương trình lạ và thử chạy trên máy ảo mà không sợ bị ảnh hưởng (VD như virut) vì nếu có sao thì cũng chỉ hỏng máy ảo.
- Dễ phát triển hệ thống (System Development) mà không sợ làm ảnh hưởng đến công việc toàn hệ máy đang vận hành. HĐH là chương trình phức tạp,cần liên tục thử nghiệm, tinh chỉnh, hoàn thiện và nâng cấp. Có thể tiến hành phát triển hệ thống trên một máy ảo thay vì làm trên máy thực. Thành công rồi mới chuyển nhanh sang máy thực (máy vật lý).
VD:1 số phần mềm như VMWare, Virtual PC, VirtualBox .

BÀI 4: QUẢN LÝ TIẾN TRÌNH
Câu 1: Định nghĩa tiến trình, so sánh tiến trình với chương trình.
Trả lời:
* Định nghĩa tiến trình:
- Tiến trình (Process) là chương trình trong thời gian thực hiện (đặt dưới sự quản lý của HĐH).
* So sánh tiến trình với chương trình:
- Bản thân chương trình không là tiến trình vì là thực thể thụ động, trong khi tiến trình là một thực thể hoạt động với nhiều thông tin về trạng thái trong đó có bộ đếm chương trình cho biết vị trí lệnh hiện hành.
- Nhiều tiến trình có thể liên quan đến một chương trình và là các thực thể khác nhau khi vận hành.
- Mỗi tiến trình có thể sinh ra nhiều tiến trình con khác khi thực hiện.
- Tiến trình cần các tài nguyên (CPU, Memory, Tập tin, Thiết bị I/O,...) để hoàn thành công việc.
- Tài nguyên cấp cho tiến trình ngay từ đầu (Khi tiến trình được tạo lập) hoặc trong thời gian vận hành và được thu hồi hết khi tiến trình hoàn tất.
VD:chúng ta đang ghi âm(là 1 tiến trình).
Chúng ta viết 1 chương trình trên visual C (là 1 chương trình).

Câu 2: Mô hình trạng thái của tiến trình.
Trả lời:
- có 5 trạng thái:
Mới (New) - Tiến trình vừa được tạo lập.
Đang chạy (Running) - Các lệnh đang thực hiện.
Đang chờ (Waiting) - Tiến trình chờ 1 sự kiện phải xảy ra (Kết thúc I/O,Tín hiệu từ tiến trình khác,...).
Sẵn sàng (Ready) - Tiến trình chờ để được ấn định CPU.
Kết thúc (Terminated) - Tiến trình vừa được thực hiện xong công việc.
- Sơ đồ chuyển trạng thái tiến trình.
VD:chúng ta sử dụng phần mềm quay video.

Câu 3:Thế nào là khối kiểm soát tiến trình (PCB).
Trả lời:
PCB là một cấu trúc dữ liệu được hệ điều hành duy trì cho mỗi tiến trình dùng để chứa các thông tin cần thiết về tiến trình đó. PCB chứa "Bản sao công việc của tiến trình".

Câu 4: Luân chuyển CPU giữa hai tiến trình.
Trả lời:

Câu 5: Khái niệm trình điều phối.
Trả lời:
- Nhằm mục đích sử dụng tối đa công thức của CPU.
-Tạo cho người dùng cảm giác luôn làm việc với chương trình của mình.CPU liên tục chuyển đi chuyển lại giữa các tiến trình.
VD:Khi người tham gia giao thông đi trên đường gặp đèn đỏ,thì phải dừng lại chờ,nhưng ta sẽ tắt máy và ngủ luôn ở đó,chờ khi công an giao thông đến kêu ta dậy thì ta sẽ đi tiếp.

Câu 6: Phân biệt điều phối chậm với nhanh
Trả lời:
* Điều phối chậm:
- Chọn tiến trình từ Job Queue để đưa vào Ready Queue.
- Kiểm soát độ đa chương (Số tiến trình trong bộ nhớ).
- Do có nhiều thời gian (vài phút), loại Scheduler này có điều kiện để lựa chọn kỹ các tiến trình cần nhằm phối hợp cân đối hai loại tiến trình:
Hướng CPU (CPU-Bound): Tính toán nhiều, Ít I/O.
Hướng I/O(I/O-Bound): Tính toán ít, Nhiều I/O.
- Mục đích: Cân bằng tải cho toàn hệ thống.
*Điều phối nhanh:
- Còn gọi là Điều phối CPU.
- Chọn tiến trình từ Ready Queue để cấp CPU (đưa sang trạng thái Running).
- Có tần suất công việc cao. Thường cứ 100ms lại tốn 10ms để xác định tiến trình kế tiếp cần chuyển sang Running, như vậy 10/(100 10)=9% thời gian CPU để điều phối công việc.

Câu 7: Lý do cộng tác giữa các tiến trình.
Trả lời:
- Chia sẽ thông tin: Một tiến trình sử dụng thông tin do tiến trình khác cung cấp.
- Tăng tốc tính toán: Các tiến trình làm việc song song trên cùng một hoặc nhiều máy tính để giải quyết bài toán chung.
- Đảm bảo tính đơn thể: Chương trình được chia thành các đơn thể chức năng riêng vận hành trong các tiến trình hoặc luồng khác nhau.
- Đảm bảo tính tiện dụng: Người dùng có khả năng làm nhiều việc cùng một lúc: Soạn thảo, In ấn, Lấy file về,...
VD:Nhu cầu nối mạng internet của chúng ta.

Câu 8: Phát biểu bài toán Sản xuất-Tiêu thụ với thuật giải phù hợp.
Trả lời:
* Phát biểu bài toán Sản xuất-Tiêu thụ.
- Giả sử có bộ nhớ đệm (buffer) bao gồm nhiều khoang chứa (Items) được tiến trình Producer lần lượt đưa các sản phẩm S1, S2,... vào.
- Tiến trình Consumer lần lượt lấy sản phẩm ra theo đúng thứ tự.
- Công việc của Producer phải đồng bộ với Consumer: Không được đưa sản phẩm vào khi buffer đầy, không được lấy ra khi chưa có sản phẩm.
* Thuật giải chờ bận (Busy-Waiting).
- Tiến trình sản xuất:
CODE:
Code:
item nextProduced;
while (1)
{
while (((in 1) % BUFFER_SIZE) == out);
buffer[in] = nextProduced;
in = (in 1) % BUFFER_SIZE;
}

- Tiến trình tiêu thụ.
CODE:
Code:
item nextConsumed;
while (1)
{
while (in == out);
nextConsumed = buffer[out];
out = (out 1) % BUFFER_SIZE;
}



Câu 9: Tổ chức liên lạc trong hệ thống Khách-Chủ qua Sockets. Phân biệt giao thức TCP với UDP.
Trả lời:
* tổ chức liên lạc trong hệ thống Khách-Chủ.
- Khái niệm Hốc liên lạc (Socket)
Hốc là điểm đầu của liên kết truyền thông, được đặc trưng bởi cặp số (IP Address, Port Number) trong mạng Client/Server.
Server chờ yêu cầu từ Client bằng cách nghe vào cổng (Port) định trước:
• Telnet Server nghe vào cổng 23
• FTP Server nghe vào cổng 21
• Web Server nghe vào cổng 80
•Thông thường các cổng với số hiệu dưới 1024 là các cổng chuẩn của hệ thống.
Khi Client phát sinh yêu cầu nối, nó được cấp một cổng nào đó sau 1024.
- Phân loại hốc liên lạc
Có kết nối - Connection-Oriented (TCP - Transmission Control Protocol): Thiết lập sẵn mối liên kết giữa hai đầu (hai máy) trước khi truyền.
Không kết nối - Connectionless (UDP - User Datagram Protocol): Không phải thiết lập mối liên kết sẵn trước khi truyền, do đó dễ dàng liên lạc với nhiều máy cùng một lúc, Nhưng không đảm bảo bằng TCP.
* Phân biệt TCP với UDP
Giống nhau : đều là các giao thức mạng TCP/IP, đều có chức năng kết nối các máy lại với nhau, và có thể gửi dữ liệu cho nhau....
Khác nhau:
các header của TCP và UDP khác nhau ở kích thước (20 và 8 byte) nguyên nhân chủ yếu là do TCP phải hỗ trợ nhiều chức năng hữu ích hơn (như khả năng khôi phục lỗi). UDP dùng ít byte hơn cho phần header và yêu cầu xử lý từ host ít hơn.
TCP :
- Dùng cho mạng WAN
- Không cho phép mất gói tin
- Đảm bảo việc truyền dữ liệu
- Tốc độ truyền thấp hơn UDP
UDP:
- Dùng cho mạng LAN
- Cho phép mất dữ liệu
- Không đảm bảo.
- Tốc độ truyền cao, VolP truyền tốt qua UDP

[url][/url]
chauthanhvy146(I11C)
chauthanhvy146(I11C)

Tổng số bài gửi : 18
Join date : 26/08/2011

Về Đầu Trang Go down

Về Đầu Trang

- Similar topics

 
Permissions in this forum:
Bạn không có quyền trả lời bài viết