Giáo trình Cấu trúc máy tính và Hệ điều hành
Mục tiêu cần đạt được về kiến thức và kỹ năng sau khi kết thúc môn học:
Kiến thức
Giải thích được cấu trúc và hoạt động máy vi tính thông qua các thành phần bộ xử lý,
bộ nhớ, bus, các thiết bị xuất nhập chính (đĩa từ, màn hình, máy in)
Hiểu được cấu trúc và hoạt động của bộ xử lý
Hiều được hoạt động của bộ nhớ
Hiều được các nguyên lý cơ bản của tập lệnh bộ xử lý
Kỹ năng
Hiểu các thông số kỹ thuật chính của máy vi tính
Biết cấu trúc, qui trình lắp máy vi tính thông qua công cụ giả lập
iều hành vàcho phép hệ điều hành bắt đầu hoạt động. */ Lý do nạp hệ điều hành Dễ dàng cho việc nâng cấp hệ điều hành Thêm những đặc điểm mới hoặc sửa chữa những lỗi trong hệ điềuhành thông qua việc ra những phiên bản mới, thay đổi một tập tin điều hành nhiều lựa chọn khác nhau cho nguoi dung. */ Tương tác HĐH và các thành phần của hệ thống Generated by Foxit PDF Creator © Foxit Software For evaluation only. Giáo Trình Cấu Trúc Máy Tính Và Hệ Điều Hành Khoa Tin Học – Ngoại Ngữ Tài liệu lưu hành nội bộ Trang 59 5/ Giao tiếp người dùng/HĐH Giao diện dòng lệnh (CLI_Command Line Interface): Là cơ chế cho phép người dùng tương tác với hệ điều hành bằng việc gõ vào các lệnh. Hệ điều hành sẽ thực hiện các tác vụ theo các lệnh đó. Các lệnh được nhập vào từ bàn phím. Người dùng kết thúc việc nhập một lệnhvăn bản bằng cách nhấn phím Enter. Bộ thông dịch lệnh _ (Command interpreter) sẽ nhận nội dung lệnh, phân tích và đưa ra các xử lý phù hợp. Đưa ra thông báo lỗi: lệnh sai cú pháp/lệnh không tồn tại Đưa ra kết quả ra màn hình (thông thường dưới dạng văn bản) Lệnh-command Lệnh ngắn gọn súc tích (tiếng Anh) Được bắt đầu từ dấu nhắc lệnh (prompt) Window : Linux: $ Bao gồm: từ khóa lệnh (+ tham số lệnh) Window: Xem thông tin hệ thống, hiện thị dưới dạng danh sách >SystemInfo /FO List Linux: Hiển thị danh sách các tập tin trong thư mục hiện hành, gồm cả các tập tin ẩn $ls –a Command Interpreter Là chương trình thông dịch ngôn ngữ dòng lệnh – thông dịch các lệnh đọc từ các thiết bị nhập (bàn phím) hoặc từ một tập tin (file). MS-DOS/Windows: COMMAND.COM/cmd. Exe Linux: BASH (Bourne-Again Shell), CSH (C Shell) Để thực hiện nhiều lệnh chỉ bằng một lệnh, có thể lưu chuỗi lệnh vào tập tin văn bản không định dạng (plain text) và ra lệnh cho CI thực thi tập tin này. Generated by Foxit PDF Creator © Foxit Software For evaluation only. Giáo Trình Cấu Trúc Máy Tính Và Hệ Điều Hành Khoa Tin Học – Ngoại Ngữ Tài liệu lưu hành nội bộ Trang 60 MS-DOS/Windows: Batch file (.bat) Linux: Shell script Ví dụ tập tin .bat Nội dung tập tin test.bat trong C:\ Batch file/Shell script có thể nhận lệnh từ giao diện dòng lệnh tập tin để tạo nhóm lệnh riêng Tiết kiệm thời gian Tự động làm một vài công việc thường xuyên 6/ Giao tiếp người dùng/HĐH Giao diện đồ hoạ (GUI_ Graphical User Interface):Tạo môi trường tương tác thân thiện giữa người dùng và hệ điều hành: Các hình tượng đồ họa thay thế các dòng lệnh tương tác với máy tinh. Các lệnh được lựa chọn nhờ thao tác chuột 7/Giao tiếp chương trình/HĐH API- Application Program Interface: Giao diện lập trình ứng dụng, cung cấp các hàm, thủ tục cho chương trình phần mềm truy nhập tới dịch vụ hệ thống (phần cứng) hoặc thư viện phần mềm System-Call: Lời gọi hệ thống:Cơ chế cho phép chương trình (tiến trình) yêu cầu một dịch vụ từ nhân hệ điều hành. @ echo off Echo day la file bat chay thu pause Dir c:\ Windows pause Generated by Foxit PDF Creator © Foxit Software For evaluation only. Giáo Trình Cấu Trúc Máy Tính Và Hệ Điều Hành Khoa Tin Học – Ngoại Ngữ Tài liệu lưu hành nội bộ Trang 61 BÀI 3 : CHỨC NĂNG VÀ DỊCH VỤ CỦA HỆ ĐIỀU HÀNH 1/ Quản lý tiến trình a/ Tiến trình trong môi trường Đa chương trình Mỗi tiến trình cần tài nguyên: Ví dụ: Không gian bộ nhớ (mã chương trình, dữ liệu, ngăn xếp (stack) CPU N tiến trình, 1 CPU N tiến trình, M CPU (N>M) Các tiến trình có thể xâm phạm lẫn nhau nếu truy nhập cùng một nguồn tài nguyên Ví dụ: Các giao dịch dữ liệu có thể cập nhật cùng một tập tin trong cơ sở dữ liệu b/ Chế độ xử lý của tiến trình Khi một tiến trình người dùng gọi đến một lời gọi hệ thống, tiến trình của hệ điều hành xử lý lời gọi này sẽ hoạt động trong chế độ đặc quyền Hoàn tất thì trả quyền điều khiển về cho tiến trình người dùng trong chế độ không đặc quyền. 2/ Trạng thái và chuyển trạng thái tiến trình Trong quá trình sống, một tiến trình thay đổi trạng thái Trạng thái của tiến trình tại một thời điểm được xác định bởi hoạtđộng hiện thời của tiến trình tại thời điểm đó Trạng thái tiến trình Trạng thái khởi tạo/new hay giữ chỗ/hold: Tiến trình được khởi tạo và chấp nhận bởi hệ thống Trạng thái sẵn sàng/ready: Các tài nguyên khác đã sẵn sàng và tiến trình chỉ còn đợi được phân phối CPU Trạng thái thực thi/running: Tiến trình thực thi. Trạng thái đợi/waiting hay khóa/blocked: Tiến trình đang đợi một sự kiện và không thể thực thi ngay. Trạng thái hoàn tất/finish/kết thúc/exit: Tiến trình kết thúc hoàn tất việc thực thi Tại một thời điểm, chỉ có một tiến trình có thể nhận trạng thái running trên một bộ xử lý bất kỳ. Trong khi đó, nhiều tiến trình có thể ở trạng thái blocked hay ready Chuyển trạng thái tiến trình Generated by Foxit PDF Creator © Foxit Software For evaluation only. Giáo Trình Cấu Trúc Máy Tính Và Hệ Điều Hành Khoa Tin Học – Ngoại Ngữ Tài liệu lưu hành nội bộ Trang 62 Các cung chuyển tiếp trong sơ đồ trạng thái biễu diễn sự chuyển trạng thái có thể xảy ra trong các điều kiện sau : Tiến trình mới tạo được đưa vào hệ thống Bộ điều phối cấp phát cho tiến trình một khoảng thời gian sử dụng CPU Tiến trình kết thúc Tiến trình yêu cầu một tài nguyên nhưng chưa được đáp ứng vì tài nguyên chưa sẵn sàng để cấp phát tại thời điểm đó ; hoặc tiến trình phải chờ một sự kiện hay thao tác nhập/xuất. Bộ điều phối chọn một tiến trình khác để cho xử lý . Tài nguyên mà tiến trình yêu cầu trở nên sẵn sàng để cấp phát ; hay sự kiện hoặc thao tác nhập/xuất tiến trình đang đợi hoàn tất. Các bộ lập lịch Bộ lập lịch chương trình/cấp cao: Lập lịch dài hạn: Sắp xếp các chương trình theo một thứ tự dựa trên đặc tính của các chương trình đó sao cho các chương trình đó có thể sử dụng được nguồn tài nguyên hệ thống một cách triệt để nhất có thể. Bộ lập lịch tiến trình/CPU/cấp thấp: Lập lịch ngắn hạn: Lựa chọn tiến trình nào sẽ được cấp phát CPU khi tiến trình đó ở trong hàng đợi sẵn sàng Chuyển đổi giữa các trạng thái Khởi tạo sang sẵn sàng: Được quyết định bởi bộ lập lịch chương trình. Sẵn sàng sang thực thi: Được quyết định bởi bộ lập lịch tiến trình, có đủ CPU Thực thi sang sẵn sàng:Ngắt Thực thi sang khóa: Tiến trình đợi một sự kiện xảy ra, cho phép các tiến trình khác có thể sử dụng CPU khóa sang sẵnsàng: Sự kiện được chờ đánh thức tiến trình đợi. Chuyển đổi ngữ cảnh (context switch) Chuyển đổi việc thực thi tiến trình này sang thực thi tiến trình khác. Chuyển đổi ngữ cảnh cần có Khối thông tin trạng thái điều khiển tiến trình PCB Generated by Foxit PDF Creator © Foxit Software For evaluation only. Giáo Trình Cấu Trúc Máy Tính Và Hệ Điều Hành Khoa Tin Học – Ngoại Ngữ Tài liệu lưu hành nội bộ Trang 63 Khối điều khiển tiến trình (PCB) Là cấu trúc dữ liệu/thông tin được hệ điều hành tạo ra nhằm lưu thông tin trạng thái cho mỗi tiến trình. Thông tin định danh cho tiến trình (PID, UID) Thông tin trạng thái cho tiến trình (biến trạng thái) Ngữ cảnh của tiến trình: Giá trị các thanh ghi của CPU mà tiến trình sử dụng (PC) Không gian nhớ (địa chỉ vùng nhớ) tiến trình sử dụng Danh sách các tập tin tiến trình sử dụng V...v Khối điều khiển tiến trình Thông tin giao tiếp: Các thông tin về quan hệ của tiến trình với các tiến trình khác trong hệ thống Tiến trình cha tiến trình tạo lập tiến trình này . Tiến trình con các tiến trình do tiến trình này tạo lập Độ ưu tiên : giúp bộ điều phối có thông tin để lựa chọn tiến trình được cấp CPU. Thông tin thống kê về hoạt động của tiến trình Thời gian đã sử dụng CPU, Thời gian chờ. Các thông tin này có thể có ích cho công việc đánh giá tình hình hệ thống và dự đoán các tình huống tương lai. Generated by Foxit PDF Creator © Foxit Software For evaluation only. Giáo Trình Cấu Trúc Máy Tính Và Hệ Điều Hành Khoa Tin Học – Ngoại Ngữ Tài liệu lưu hành nội bộ Trang 64 3/Quản lý bộ nhớ (Memory management) a/ Dịch và biên tập chương trình chạy Dịch chương trình ngôn ngữ thuật toán chương trình ngôn ngữ máy dưới dạng các modul độc lập Liên kết các modul theo các cấu trúc khác nhau tùy theo yêu cầu tạo thành chương trình hoànthiện (lưu trong bộ nhớ ngoài) Tải chương trình từ bộ nhớ ngoài vào bộ nhớ trong,thực hiện phép ánh xạ địa chỉ logic sang địa chỉ vật lý cụ thể của bộ nhớ -> định vị chương trình Chế độ bộ nhớ thực: Kích thước chương trình < kích thước bộ nhớ vật lý Chế độ bộ nhớ ảo: Kích thước chương trình > kích thước bộ nhớ vật lý b/ Tổ chức bộ nhớ Phân chương cố định Bộ nhớ chia làm n phần không bằng nhau(n chương) dànhcho n chương trình chạy song song Chương trình nạp toàn bộ vào một chương và tồn tại cho tới khi kết thúc Nhược điểm ∑ bộ nhớ tự do > Kích thước chương trình nhưng không thực thi được do phân đoạn Kích thước chương trình >Kích thước max của một chương Kích thước chương trình Phân lại bộ nhớ Generated by Foxit PDF Creator © Foxit Software For evaluation only. Giáo Trình Cấu Trúc Máy Tính Và Hệ Điều Hành Khoa Tin Học – Ngoại Ngữ Tài liệu lưu hành nội bộ Trang 65 4/ Tổ chức bộ nhớ trong máy IBM-PC System Call: Lời gọi hệ thống PCB (Process Control Block): Khối điều khiển tiến trình Schedular: Bộ lập lịch Context switch: Chuyển đổi ngữ cảnh SCB (Segment Control Block): Bảng quản lý phân đoạn PCB (Page Control Block): Bảng quản lý phân trang TÀI LIỆU THAM KHẢO 1. Managing and Maintaining Your PC, Ph.D Jean Andrews 2. Phần cứng máy tính, KS. Hoàng Thanh-Quốc Việt, NXB Thống Kê, 2000. 3. Pc Secrets, Translated by: Pham Quang Huy, NXB Thống Kê, 2001. 4. Website: PCLEHOAN.COM, DIENDANTINHOC.COM. Generated by Foxit PDF Creator © Foxit Software For evaluation only.
File đính kèm:
- Cấu trúc máy vi tính- - CT thuỷ lợi.pdf