Giáo trình Hệ điều hành: Khái niệm, Nguyên lý hoạt động và Quản lý tiến trình, bộ nhớ

Dưới đây là meta tags cho bài viết "Giáo trình Hệ điều hành - Khái niệm và Nguyên lý": { "ai_description": "Giới thiệu về hệ điều hành, nguyên lý và kiến

Chuyên ngành

Công nghệ thông tin

Người đăng

Ẩn danh

Thể loại

Giáo trình

2013

183
1
0

Phí lưu trữ

45 Point

Tóm tắt

I. Tổng quan về giáo trình hệ điều hành Từ Minh Phương

Giáo trình Hệ điều hành của tác giả Từ Minh Phương được biên soạn tại Học viện Công nghệ Bưu chính Viễn thông, xuất bản năm 2013 tại Hà Nội. Đây là tài liệu giảng dạy chính thức dành cho sinh viên đại học, cao đẳng ngành công nghệ thông tin. Giáo trình trình bày kiến thức về các khái niệm và nguyên lý hoạt động của hệ điều hành nói chung, không dựa trên một hệ điều hành cụ thể nào. Tuy nhiên, để tạo liên kết giữa lý thuyết và thực tế, nhiều kỹ thuật từ các hệ điều hành phổ biến tại Việt Nam được sử dụng làm ví dụ minh họa. Nội dung giáo trình được chia thành bốn chương chính, bao gồm giới thiệu chung về hệ điều hành, quản lý tiến trình, quản lý bộ nhớ và hệ thống tệp. Mỗi chương cung cấp nền tảng lý thuyết vững chắc kết hợp với ví dụ thực tiễn, giúp người học hiểu sâu về cách hệ điều hành vận hành trong hệ thống máy tính hiện đại.

1.1. Vai trò của hệ điều hành trong hệ thống máy tính

Hệ điều hành là thành phần trung gian giữa phần cứng và người sử dụng máy tính. Hệ điều hành quản lý và điều phối tất cả tài nguyên của hệ thống bao gồm bộ nhớ, bộ xử lý, thiết bị ngoại trừ và hệ thống tệp. Giáo trình của Từ Minh Phương nhấn mạnh rằng nắm vững kiến thức về hệ điều hành là cơ sở cho việc hiểu biết sâu sắc toàn bộ hệ thống máy tính. Kiến thức này bao gồm ba dạng chính: kỹ năng cài đặt và sử dụng, kiến thức thiết kế xây dựng,以及 các nguyên lý chung về hệ điều hành. Đây là phần kiến thức bắt buộc đối với chuyên gia công nghệ thông tin và các ngành liên quan.

1.2. Cấu trúc nội dung bốn chương của giáo trình

Giáo trình được tổ chức thành bốn chương có hệ thống. Chương 1 trình bày những khái niệm chung, vai trò, các thành phần chức năng, kiến trúc thông dụng và quá trình phát triển hệ điều hành. Chương 2 tập trung vào quản lý tiến trình trong hệ thống đa tiến trình với một CPU, bao gồm khái niệm tiến trình, trạng thái, điều độ và đồng bộ hóa. Chương 3 đề cập đến quản lý bộ nhớ với các kỹ thuật phân chương, phân trang, phân đoạn và bộ nhớ ảo. Chương 4 giới thiệu hệ thống tệp, quản lý dữ liệu lưu trữ và các phương pháp tổ chức tập tin trên đĩa.

II. Phân tích kiến thức quản lý tiến trình trong giáo trình

Quản lý tiến trình là một trong những nội dung trọng tâm của giáo trình hệ điều hành Từ Minh Phương. Chương 2 của giáo trình đi sâu vào cách hệ điều hành quản lý nhiều tiến trình đồng thời trên một bộ xử lý CPU duy nhất. Nội dung bao gồm định nghĩa tiến trình, các trạng thái của tiến trình từ lúc tạo ra đến khi kết thúc, cùng các thao tác quản lý liên quan. Giáo trình phân tích vấn đề điều độ tiến trình, tức là cách hệ điều hành quyết định tiến trình nào được sử dụng CPU và trong bao lâu. Một khái niệm quan trọng khác là đồng bộ hóa các tiến trình đồng thời, giải quyết các vấn đề xung đột khi nhiều tiến trình truy cập tài nguyên chung. Giáo trình sử dụng ví dụ minh họa bằng cả Java và Windows API, cho thấy cách tạo đa luồng bằng phương thức kế thừa class Thread hoặc triển khai giao diện Runnable trong Java, cũng như hàm CreateThread trong Windows. Những ví dụ cụ thể này giúp người học liên kết lý thuyết với thực hành lập trình hệ thống.

2.1. Khái niệm tiến trình và trạng thái tiến trình

Tiến trình là đơn vị thực thi cơ bản trong hệ điều hành, đại diện cho một chương trình đang chạy. Giáo trình trình bày các trạng thái chính của tiến trình gồm trạng thái sẵn sàng, trạng thái chạy và trạng thái chờ. Mỗi tiến trình có thông tin quản lý riêng bao gồm mã tiến trình, trạng thái hiện tại, bộ đếm chương trình và thông tin về tài nguyên đang sử dụng. Việc hiểu rõ vòng đời của tiến trình là nền tảng để nắm bắt các cơ chế điều độ và đồng bộ hóa mà hệ điều hành sử dụng để quản lý hiệu quả nhiều tiến trình chạy đồng thời trên cùng một CPU.

2.2. Kỹ thuật đa luồng trong Java và Windows

Giáo trình minh họa kỹ thuật đa luồng qua hai nền tảng phổ biến. Trong Java, luồng được tạo bằng cách kế thừa class Thread và phủ quyết phương thức run(), hoặc triển khai giao diện Runnable. Phương thức Thread.yield() giúp đảm bảo không luồng nào chiếm CPU quá lâu. Trong Windows, hàm CreateThread của Windows API cho phép tạo luồng với các tham số quản lý chi tiết. Chương trình ví dụ tạo ba luồng chạy đồng thời, mỗi luồng in ra các số theo bước nhảy khác nhau, kết quả trộn lẫn cho thấy tính chất đồng thời của đa luồng.

III. Giải pháp quản lý bộ nhớ và hệ thống tệp trong giáo trình

Chương 3 và chương 4 của giáo trình Từ Minh Phương trình bày hai trụ cột quan trọng trong kiến trúc hệ điều hành: quản lý bộ nhớ và hệ thống tệp. Về quản lý bộ nhớ, giáo trình giới thiệu các vấn đề liên quan đến bộ nhớ và địa chỉ, sau đó trình bày các kỹ thuật tổ chức chương trình bao gồm phân chương, phân trang và phân đoạn. Khái niệm bộ nhớ ảo được giải thích chi tiết, cho phép hệ thống sử dụng dung lượng đĩa cứng như một phần mở rộng của bộ nhớ vật lý, giúp chạy các chương trình lớn hơn khả năng chứa của RAM. Về hệ thống tệp, giáo trình đề cập đến cách tổ chức, quản lý và truy cập dữ liệu lưu trữ trên các thiết bị ngoại trừ. Các lệnh dòng lệnh như dir, ls, copy được giới thiệu như công cụ cơ bản để thao tác với tệp. Giáo trình cũng đề cập đến giao diện đồ họa như Windows Explorer và X Windows, giúp người dùng thao tác trực giác hơn. Hệ thống tệp đảm bảo dữ liệu được lưu trữ có tổ chức, dễ tìm kiếm và bảo mật.

3.1. Các kỹ thuật phân trang và phân đoạn bộ nhớ

Giáo trình trình bày ba kỹ thuật tổ chức bộ nhớ chính. Phân chương chia bộ nhớ thành các vùng cố định, đơn giản nhưng có thể gây lãng phí. Phân trang chia bộ nhớ thành các trang kích thước bằng nhau, cho phép ánh xạ linh hoạt giữa địa chỉ logic và vật lý. Phân đoạn chia chương trình theo đơn vị logic như hàm, dữ liệu, giúp bảo vệ và chia sẻ dễ dàng hơn. Kết hợp phân trang và phân đoạn tạo ra hệ thống quản lý bộ nhớ hiệu quả, được áp dụng rộng rãi trong các hệ điều hành hiện đại.

3.2. Giao diện người dùng và chương trình tiện ích

Hệ điều hành cung cấp hai loại giao diện chính cho người sử dụng. Giao diện dòng lệnh yêu cầu nhập lệnh dạng văn bản qua bộ dịch lệnh như cmd.exe của Windows hay terminal của Linux. Giao diện đồ họa sử dụng cửa sổ, biểu tượng và chuột, trực giác hơn cho người dùng phổ thông. Ngoài ra, hệ điều hành thường tích hợp các chương trình tiện ích như nén tệp, sao lưu dữ liệu, trình soạn thảo văn bản và trình dịch ngôn ngữ. Các bản phân phối Linux như Ubuntu, RedHat có bộ tiện ích đa dạng khác nhau tùy theo mục đích sử dụng.

IV. Kết luận và ứng dụng thực tiễn của giáo trình hệ điều hành

Giáo trình Hệ điều hành của Từ Minh Phương là tài liệu học tập có giá trị cao cho sinh viên và người làm công nghệ thông tin. Điểm mạnh của giáo trình nằm ở cách tiếp cận tổng quát, không phụ thuộc vào hệ điều hành cụ thể, giúp người học nắm vững nguyên lý cốt lõi có thể áp dụng cho bất kỳ hệ điều hành nào. Các ví dụ minh họa từ Windows, Linux và Java tạo cầu nối hiệu quả giữa lý thuyết và thực hành. Kiến thức từ giáo trình này có ứng dụng rộng rãi trong nhiều lĩnh vực. Lập trình viên hệ thống sử dụng để hiểu cách quản lý tiến trình và bộ nhớ. Quản trị viên mạng áp dụng kiến thức về hệ thống tệp và bảo mật. Chuyên gia DevOps cần hiểu hệ điều hành để tối ưu hóa hiệu suất máy chủ. Giáo trình cũng cung cấp nền tảng vững chắc cho việc nghiên cứu sâu hơn về phân tán, điện toán đám mây và các xu hướng tính toán mới. Đây là tài liệu không thể thiếu trong tủ sách của bất kỳ ai theo đuổi ngành công nghệ thông tin tại Việt Nam.

4.1. Ứng dụng kiến thức hệ điều hành trong nghề nghiệp IT

Kiến thức từ giáo trình được áp dụng rộng rãi trong nhiều vị trí nghề nghiệp. Lập trình viên ứng dụng cần hiểu tiến trình và luồng để viết chương trình đa nhiệm hiệu quả. Quản trị viên hệ thống sử dụng kiến thức về quản lý bộ nhớ và hệ thống tệp để giám sát, tối ưu hóa máy chủ. Chuyên gia an ninh mạng dựa vào nguyên lý bảo vệ bộ nhớ và quản lý truy cập để xây dựng hệ thống phòng thủ. Kỹ sư DevOps áp dụng kiến thức hệ điều hành để triển khai container, ảo hóa và quản lý hạ tầng đám mây.

4.2. Xu hướng phát triển và vị trí của giáo trình trong đào tạo

Giáo trình được xuất bản năm 2013 nhưng các nguyên lý cốt lõi trình bày vẫn giữ nguyên giá trị. Quản lý tiến trình, bộ nhớ và hệ thống tệp là nền tảng không thay đổi dù công nghệ phát triển. Tuy nhiên, người học cần bổ sung kiến thức về các xu hướng mới như hệ điều hành thời gian thực, hệ điều hành cho thiết bị IoT, container hóa và điện toán biên. Giáo trình của Từ Minh Phương đóng vai trò là bước đệm vững chắc, giúp sinh viên tự tin tiếp cận các chủ đề nâng cao hơn trong ngành hệ thống và mạng.

Tóm tắt và mô tả trên trang này được tạo với sự hỗ trợ của AI từ nội dung tài liệu gốc; tài liệu do người dùng đóng góp và được kiểm duyệt trước khi xuất bản. Báo lỗi nội dung.

21/04/2026
He dieu hanh tu minh phuong giao trinh hdh cuuduongthancong com

Trích đoạn nội dung tài liệu

CHƯƠNG 1: GIỚI THIỆU CHUNG 1. CÁC THÀNH PHẦN CỦA HỆ THỐNG MÁY TÍNH Một hệ thống máy tính nói chung có thể phân chia sơ bộ thành phần cứng và phần mềm. Phần cứng cung cấp các tài nguyên cần thiết cho việc tính toán, xử lý dữ liệu. Phần mềm gồm các chương trình quy định cụ thể việc xử lý đó.

Để thực hiện công việc tính toán hoặc xử lý dữ liệu cụ thể cần có các chương trình gọi là chương trình ứng dụng. Có thể kể một số chương trình ứng dụng thường gặp như chương trình soạn thảo văn bản, chương trình trò chơi, hệ quản trị cơ sở dữ liệu, chương trình truyền thông. Phần cứng có thể biểu diễn như lớp dưới cùng, là cơ sở của toàn hệ thống. Đây là những thiết bị cụ thể như CPU, bộ nhớ, thiết bị nhớ ngoài, thiết bị vào ra.

Chương trình ứng dụng là lớp trên của hệ thống, là phần mà người dùng xây dựng nên và tương tác trong quá trình giải quyết các nhiệm vụ của mình. (Khái niệm người dùng ở đây bao gồm cả người sử dụng thuần tuý lẫn người viết ra các chương trình ứng dụng) Ngoài phần cứng và trình ứng dụng, hệ thống máy tính còn có một thành phần quan trọng là hệ điều hành. Hệ điều hành là phần mềm đóng vai trò trung gian giữa phần cứng và người sử dụng cùng các chương trình ứng dụng của họ. Nhiệm vụ của hệ điều hành là làm cho việc sử dụng hệ thống máy tính được tiện lợi và hiệu quả.

Các chương trình ứng dụng khi chạy đều cần thực hiện một số thao tác chung như điều khiển thiết bị vào ra. Những thao tác phân phối và điều khiển tài nguyên chung như vậy sẽ được gộp chung lại trong phạm vi hệ điều hành. Nhờ có hệ điều hành, người dùng có thể dễ dàng tương tác và sử dụng máy tính, ví dụ bằng cách thông qua các giao diện đồ họa. Cũng nhờ có hệ điều hành, phần cứng của máy tính được quản lý và sử dụng hiệu quả hơn.

Người sử dụng Chương trình ứng dụng, chương trình hệ thống và tiện ích Hệ điều hành Phần cứng Hình 1.1: Các thành phần của hệ thống máy tính Ngoài chương trình ứng dụng và hệ điều hành còn có các chương trình hệ thống và chương trình tiện ích. Đây là những chương trình không thuộc phần cốt lõi của hệ điều hành 8 Giới thiệu chung nhưng được xây dựng để thực hiện những thao tác thường diễn ra trong hệ thống hoặc giúp người dùng thực hiện một số công việc dễ dàng hơn. Các thành phần của hệ thống máy tính được thể hiện trên hình 1.1, trong đó phần cứng là lớp dưới cùng và người dùng giao tiếp với trình ứng dụng là thành phần trên cùng của hệ thống. TỔ CHỨC PHẦN CỨNG CỦA MÁY TÍNH Hệ điều hành giao tiếp trực tiếp với phần cứng máy tính và quản lý các tài nguyên phần cứng.

Các khái niệm về tổ chức phần cứng rất quan trọng và cần thiết cho việc tìm hiểu về hệ điều hành. Để thuận lợi cho việc trình bầy về hệ điều hành, phần này sẽ tóm tắt một số nội dung liên quan về tổ chức và kiến trúc phần cứng của máy tính. Kiến trúc chung. Máy tính bao gồm một hoặc nhiều CPU (khối xử lý trung tâm), bộ nhớ chính, các đĩa từ và thiết bị nhớ SSD (còn gọi là đĩa điện tử), màn hình, các thiết bị vào ra dữ liệu khác như chuột, bàn phím, máy in, màn cảm ứng, micro, loa, … Các bộ phận này được kết nối trao đổi thông tin với nhau thông qua bus hệ thống như minh họa trên hình 1.

Màn hình Các đĩa Bộ nhớ CPU chính Bus hệ thống Hình 1. Các thành phần của phần cứng máy tính CPU và quy trình thực hiện lệnh. CPU (khối xử lý trung tâm) là thành phần quan trọng nhất của hệ thống máy tính. CPU bao gồm khối ALU thực hiện các phép toán số học và logic, khối điều khiển thực hiện việc giải mã lệnh và điều khiển hoạt động chung.

Ngoài ra còn có các thanh ghi, thực chất là bộ nhớ của CPU dùng để lưu các dữ liệu tạm thời và các thông tin về trạng thái của CPU và toàn hệ thống. Nhiệm vụ chủ yếu của CPU là thực hiện các chương trình. Mỗi chương trình là một tập hợp các lệnh để chỉ thị cho CPU biết cần làm gì. Khi chương trình được thực hiện, các lệnh của chương trình được đọc vào và lưu trong bộ nhớ chính.

CPU lần lượt đọc từng lệnh từ bộ nhớ chính và thực hiện lệnh. Tùy vào lệnh cụ thể, việc thực hiện một lệnh có thể dẫn tới yêu cầu có thêm các thao tác đọc hoặc ghi bộ nhớ khác. Ví dụ lệnh tăng giá trị một biến đòi hỏi thao tác đọc giá trị biến đó từ bộ nhớ, sau đó ghi giá trị mới ra bộ nhớ. 9 Giới thiệu chung Ngắt.

Quá trình thực hiện các lệnh của chương trình diễn ra tuần tự, sau khi xong một lệnh CPU sẽ thực hiện lệnh tiếp theo, trừ khi có các lệnh rẽ nhánh hay vòng lặp. Tuy nhiên, trong hệ thống máy tính còn có các sự kiện xẩy ra và cần được CPU xử lý kịp thời. Ví dụ, thiết bị phần cứng có thể gửi tín hiệu để thông báo xẩy ra sự kiện cần xử lý, như khi người dùng bấm bàn phím. Việc xử lý sự kiện các sự kiện như vậy được thực hiện nhờ cơ chế ngắt (interrupt).

Thiết bị phần cứng có thể yêu cầu thực hiện ngắt bằng cách gửi tín hiệu qua bus. Phần mềm, tức là chương trình đang thực hiện, cũng có thể yêu cầu ngắt bằng cách sử dụng lời gọi hệ thống (system call). Chẳng hạn khi cần ghi ra file, chương trình có thể gửi yêu cầu ngắt dưới dạng lời gọi hệ thống ghi ra file. Hệ thống sẽ chuyển sang xử lý ngắt trước khi quay lại thực hiện tiếp chương trình theo thứ tự thông thường.

Khi có ngắt, CPU sẽ tạm dừng công việc đang thực hiện và chuyển sang thực hiện hàm xử lý ngắt. Sau khi thực hiện xong hàm xử lý ngắt, hệ thống sẽ quay lại điểm tạm dừng và thực hiện tiếp công việc bị ngắt. Cơ chế xử lý ngắt cụ thể phụ thuộc vào từng dòng máy tính và hệ điều hành, tuy nhiên thông thường các máy tính sử dụng cơ chế xử lý ngắt như sau. Các hàm xử lý ngắt được lưu trong bộ nhớ.

Các hàm xử lý ngắt do phần cứng đảm nhiệm được lưu trong bộ nhớ ROM hoặc EPROM như một thành phần của phần cứng, ví dụ như một thành phần của BIOS trên PC. Hàm xử lý ngắt của hệ điều hành được tải vào và lưu trong bộ nhớ RAM. Địa chỉ các hàm xử lý ngắt được lưu trong một mảng gọi là vec tơ ngắt, nằm ở phần địa chỉ thấp của bộ nhớ, bắt đầu từ địa chỉ 0. Mỗi phần tử của vec tơ ngắt có kích thước cố định và chứa con trỏ tới hàm xử lý ngắt tương ứng.

Như vậy, ví dụ khi xuất hiện ngắt có số thứ tự bằng 2, CPU sẽ đọc nội dung ô thứ 2 của vec tơ ngắt để có địa chỉ hàm xử lý ngắt, sau đó chuyển tới địa chỉ này để thực hiện hàm xử lý ngắt. Các hệ điều hành thông dụng như Windows, Linux xử lý ngắt theo quy trình này. Trong các hệ điều hành đa chương trình, tức là hệ điều hành cho phép nhiều tiến trình được thực hiện đồng thời, hệ điều hành thường sử dụng ngắt từ bộ định thời timer để thu hồi quyền điều khiển CPU từ một chương trình đang thực hiện để phân phối cho chương trình khác. Timer là một cơ chế phần cứng cho phép sinh ra ngắt sau một khoảng thời gian do hệ điều hành quy định.

Ngắt này được chuyển cho hàm xử lý ngắt của hệ điều hành xử lý, thường là để phân phối lại quyền sử dụng CPU. Bộ nhớ chính. Bộ nhớ chính là nơi chứa các chương trình đang được thực hiện, bao gồm cả các lệnh của chương trình cũng như dữ liệu. Bộ nhớ chính là dạng bộ nhớ cho phép đọc và ghi theo thứ tự bất kỳ, gọi là bộ nhớ truy cập ngẫu nhiên (Random Access Memory - RAM), do vậy thường được gọi tắt là RAM.

Cần lưu ý rằng, máy tính có một số dạng bộ nhớ khác, ví dụ như bộ nhớ chỉ cho phép đọc (ROM), hoặc bộ nhớ chỉ cho phép ghi với thiết bị ghi đặc biệt (EPROM), và các loại bộ nhớ này có thể kết hợp với RAM để tạo thành bộ nhớ chính của máy tính. Bộ nhớ máy tính có thể coi như một mảng các ô nhớ được đánh địa chỉ. Bộ nhớ thường được truy cập theo đơn vị là byte (B), mỗi byte gồm 8 bit (b). Một số máy tính sử dụng đơn vị bộ nhớ là từ (word), mỗi từ có thể có kích thước bằng 2, 4, 8 byte; tuy nhiên, kiểu đơn vị bộ nhớ này ít thông dụng trong các máy tính hiện nay.

Như vậy, mỗi byte của bộ nhớ được coi là một ô nhớ và được truy cập theo địa chỉ của byte. 10 Giới thiệu chung Để tính các lượng bộ nhớ lớn hơn, các đơn vị là lũy thừa bậc 2 của byte thường được sử dụng như: kilobyte (KB) = 210 byte, megabyte (MB) = 220 byte, gigabyte (GB) = 230 byte, terabyte (TB) = 240 byte, petabyte (PB) = 250 byte, hexabyte (HB) = 260 byte. Cách tổ chức và đơn vị bộ nhớ như vậy cũng được sử dụng cho các dạng bộ nhớ khác như bộ nhớ ngoài của máy tính. Tổ chức hệ thống bộ nhớ.

Ngoài bộ nhớ chính (RAM), máy tính còn nhiều dạng bộ nhớ khác như bộ nhớ thanh ghi, bộ nhớ trên đĩa… Lý do phải sử dụng nhiều dạng bộ nhớ là do không có dạng thiết bị nhớ nào thỏa mãn đồng thời các yêu cầu đặt ra về lưu trữ thông tin. Bộ nhớ máy tính lý tưởng là bộ nhớ thỏa mãn đồng thời các yêu cầu chính sau: 1) dung lượng lớn; 2) tốc độ truy cập nhanh; 3) giá thành thấp; 4) có khả năng lưu trữ lâu bền cả khi có điện và không có điện. Những yêu cầu này là mâu thuẫn với nhau, chẳng hạn thiết bị nhớ tốc độ cao có giá cao và không lưu được thông tin khi không có điện. Cụ thể, bộ nhớ chính, được xây dựng dựa trên công nghệ DRAM (dynamic random-access memory), mặc dù có tốc độ truy cập tương đối cao xong không đủ lớn để lưu trữ thường xuyên tất cả chương trình và dữ liệu.

Ngoài ra, nội dung bộ nhớ sử dụng DRAM sẽ bị xóa khi tắt nguồn, do vậy không phù hợp để lưu trữ lâu thông tin lâu dài.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ