Tải bản đầy đủ (.doc) (19 trang)

ĐỀ CƯƠNG MÔN NGUYÊN LÝ CÁC HỆ ĐIÊU HÀNH

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (160.79 KB, 19 trang )

ĐỀ CƯƠNG MÔN NGUYÊN LÝ CÁC HỆ ĐIÊU HÀNH
Câu 1: trình bày về phần cứng và đánh giá tài nguyên về phần cứng.
Trả lời:
Theo cách tiếp cận của hệ điều hành, các tài nguyên điển hình thuộc phần cứng bao
gồm:
- Bộ xử lý trung tâm (CPU)
- Bộ nhớ trong
- Thiết bị ngoại vi: hệ thống vào ra.
a.Bộ xử lý trung tâm (CPU)
- Tốc độ xử lý: thể hiện tốc độ làm việc của máy tính, nó được tính theo tần số đồng
hồ nhịp hoặc số lượng phép tính trong 1 giây. Đơn vị tính là MHz.
- Bộ nhớ CPU: bộ nhớ cache L2
Pen 3:128256 Kb
Pen 4 (478): 5121 M
Pen 4 (775): 1 M2 M
Pen D (pen dual): 1 M 4M
Dualco 1.5 nhân, cache L2: 1M2M
Cor 2 dual 2 nhân, cache L2: 2M 4M
Cor i3 3 nhân, cache L2: 4M
Cor i5 4 nhân
Chip Celeron: cache L2 rất nhỏ(rất là chậm).
b.Bộ nhớ trong
- Dung lượng bộ nhớ: đánh giá khả năng đồng thời lưu trữ thong tin, là những thông
tin cung cấp cho CPU làm việc. Ở bộ nhớ trong sẽ được địa chỉ hóa để truy nhập.
- Thời gian truy nhập của bộ nhớ là phải đồng nhất .
Bộ nhớ ram: từ MB GB
SDRAM: 64 Mb  256 Mb
DRAM1: 128 Mb  1G
DRAM2: 512MB 2G
DRAM3: 1G  4G
c. Hệ thống ngoại vi


- Đảm nhiệm việc trao đổi thông tin giữa môi trường bên ngoài vào trung tâm của
máy tính.
- Kênh truyền: là bộ xử lý vào ra, nó thay cho CPU đảm nhận được điều khiển sự trao
đổi thông tin từ bộ nhớ trong với các thiết bị bên ngoài.
Kênh sẽ làm tăng hiệu quả hệ thống, khi lệnh điều khiển công việc vào ra thì CPU có
thể làm công việc khác tăng hiệu suất làm việc của CPU.
Kênh sẽ có 1 bộ lệnh làm việc riêng và hoạt động theo chương trình gọi là chương
trình kênh và CPU sẽ đảm nhận việc khởi động các chương trình kênh này phân ra 2
loại
+ Kênh chậm (đa tuyến): phím, chuột, màn hình, máy in….
+ Kênh nhanh(kênh chọn): các thiết bị lưu trữ ổ cứng, ổ CD,…
Mainboard: cổng giao tiếp (usb,…), khe cắm (PCI, AGP,…)
- Thiết bị điều khiển phân cấp chức năng của hệ thống vào ra dưới sự điều khiển
của các kênh, thiết bị điều khiển, nhận điều khiển từ kênh, nhận thông tin theo
đường truyền để đưa ra hoặc đưa vào các bít dữ liệu.
- Thiết bị ngoại vi: thực hiện thao tác đưa thông tin ra và nhập thông tin vào từ
các vật dẫn bên ngoài.
- Thiết bị nhập: chuột, bàn phím, máy quét, webcam, microphone, card lan,
modem…
- Thiết bị ra: màn hình, máy in, loa….
- Thiết bị lưu trữ: ổ đĩa (CD, HDD, Floppy), usb…
Câu 2: Trình bày các thành phần chính của Hệ Điều Hành và phân loại Hệ Điều
Hành.
• Các thành phần chính của hệ điều hành
Hệ điều hành gồm 2 thành phần chính:
- Thành phần điều khiển.
- Thành phần xử lý.
+ Thành phần điều khiển.
Các thành phần điều khiển liên quan đến chức năng điều khiển và phân
phối công việc của Hệ điều hành. Khi một chương trình điều khiển hoạt động

nó không cho ra một sản phẩm mới mà nó chỉ cho ra sự tác động tới hoạt động
của máy tính.
Các chương trình điều khiển: - Chương trình dẫn dắt.
: - Chương trình điều khiển bài toán.
: - Chương trình điều khiển vào ra.
: - Chương trình tải.
+ Thành phần xử lý.
Bao gồm các chương trình mà qua sự thực hiện của nó thì một sản phẩm sẽ
được tạo ra. Bao gồm các bộ dịch, các chương trình tính toán hoặc các chương
trình soạn thảo.
• Phân loại hệ điều hành.
Hệ điều hành gồm 3 loại: - Hệ điều hành đơn nhiệm( Đơn chương trình).
: - Hệ điều hành đa nhiệm (Đa chương trình).
: - Hệ điều hành thời gian thực.
+ Hệ điều hành đơn nhiệm.
Đối với hệ điều hành này nó sẽ phục vụ một chương trình từ lúc ban đầu
cho đến lúc kết thúc, trong bộ nhớ trong tại một thời điểm chỉ có một người
dùng.
+ Hệ điều hành đa nhiệm ( Đa chương trình).
Đối với hệ điều hành đa nhiệm thì nó cho phép bên trong máy tính tại môt
thời điểm có nhiều chương trình ở bộ nhớ trong và các chương trình đều có
yêu cầu phân phối bộ nhớ trong và CPU dể thực hiện.
+ Hệ điều hành thời gian thực.
Có một số bai toán trong lĩnh vực điều khiển cần phải được giải quyết
trước những thời điểm nhất định và sau thời điểm đó bài toán trở thành vô
nghĩa. Đối với hệ thống máy tính như vậy thì cần phải có hệ điều hành chạy
thời gian thực. Trong thời gian thực thì mỗi bài toán này được thực hiện trước
thời điểm đó.
Câu 3: Các phương pháp tổ chức và truy nhập dữ liệu
1) Các phương pháp tổ chức dữ liệu :

a) Khái niệm về file dữ liệu:
Là tập hợp các bản ghi có tổ chức, các bản ghi có thứ tự hay chính là vị trí
logic trên đĩa từ .
Dựa vào các mục đích sử dụng người ta đưa ra 4 kiểu tổ chức :
+ Tổ chức kế tiếp
+ Tổ chức chỉ số kế tiếp
+ Tổ chức thư viện
+ Tổ chức trực tiếp
b) Tổ chức kế tiếp:
Các bản ghi được sắp xếp logic theo trình tự làm việc, thứ tự trình bày trên
vật dẫn ngoài trùng với thứ tự đưa bản ghi vào trong file.
c) Tổ chức chỉ số kế tiếp :
Việc sắp xếp tìm kiếm các file theo một trình tự gắn với các bản ghi và mỗi
bản ghi được gắn tương ứng với chỉ số làm việc bao gồm 3 thông số :chỉ số
rãnh, chỉ số trụ, chỉ số chính.
d) Tổ chức thư viện :
Các file được tổ chức theo kiểu 1 thư mục và một tập hợp File gồm nhiều
file thành phần . Mỗi file thành phần được tổ chức thành các file thành phần
nhỏ hơn.
e) Tổ chức trực tiếp:
Tồn tại tương ứng giữa định vị khối của file với địa chỉ thực sự trên đĩa từ
và không qua địa chỉ số nào cả.
2) Các phương pháp truy nhập dữ liệu :
a) Truy nhập tuần tự :
Lần lượt các bản ghi trong file .vì vậy luông biết bản ghi tiếp theo sử lý là
bản ghi nào và hệ điều hành sẽ biết được vị trí vật dẫn ngoài của bản ghi
được sử lý.
b) Truy nhập cơ sở :
Khi sử lý 1 bản ghi hệ thống chưa biết vị trí bản ghi tiếp theo nên mức ghi
tự động hóa thấp -> đòi hỏi người lập trình phải tìm ra bản ghi mong muốn

-> vẫn đề đồng bộ được đặt ra .
3) Chức năng hệ thống bảo vệ dữ liệu.
a) Bảo quản dữ liệu trên vật dẫn ngoài :
Các file dữ liệu được tổ chức lưu trữ của hệ thông dữ liệu và tuân theo quy
định của hê điều hành trên các vật dẫn ngoài như băng từ, đĩa từ.
b) Đảm bảo tổ chức khác nhau cho dữ liệu và định vị.
Hệ điều hành sẽ đảm bảo được lưu trữ file trên các vật dẫn ngoài để đáp
ứng với nhu cầu của người sử dụng .
c) Thực hiện các truy nhập khác nhau tới dữ liệu .
d) Thực hiện việc tìm hiểu tự động hóa dữ liệu theo ký hiệu riêng không theo
địa chỉ.
e) Có sự độc lập cao nhất
Câu 4:Trình bày bản ghi logic và bản ghi vật lý, quá trình kết khối quá trình
tách khối.
Trả lời
* Trình bày bản ghi logic và bản ghi vật lý:
a. Bản ghi logic và bản ghi vật lý.
Một mặt, file được tổ chức thành các đơn vị dữ liệu để chương trình ứng dụng xử
lý: đó là các bản ghi logic (thường gọi tắt là bản ghi). Quy cách và nội dung của bản
ghi logic được xác định theo chương trình ứng dụng.
Mặt khác, việc lưu file trên vật dẫn ngoài tuân theo quy tắc làm việc của hệ điều
hành đối với vật dẫn ngoài đó: file được xếp trên bộ nhớ ngoài thành các bản ghi vật
lý (phổ biến hơn được gọi là khối). thông thường, khối là đơn vị bộ nhớ ngoài mà hệ
điều hành thực hiện việc đọc/ ghi đối với file. Chẳng hạn, MS-DOS, một cluster
chính là một khối trên đĩa từ và file đươc lưu trữ trên một tập hợp các cluster của đĩa
từ.
b. Bản ghi theo tổ chức của file: có ba dạng tổ chức bản ghi logic.
Thông thường, có ba dạng bản ghi phổ biến là dạng cố định, dạng động và dạng
không xác định. Dạng của bản ghi cảu file dữ liệu sẽ quy định tới cách thức xử lý của
hệ điều hành đối với file.

Dạng cố định (F): mọi bản ghi trong file có độ dài cố định và như nhau (mỗi
bản ghi có thể có dấu hiệu điều khiển). làm việc với các file gồm các bản ghi dạng F
rất tiện lợi, từ vị trí của bản ghi đầu tiên và số thứ thự của một bản ghi có thể nhận
được từ vị trí của bản ghi đó. Việc định vị bản ghi theo số hiệu là hoàn toàn xác định.
Mặt khác , các công việc chuẩn bị để xử lý các bản ghi dạng F là đơn giản.
Dạng động V: độ dài của bản ghi thay đổi từ bản ghi này cho tới bản ghi khác,
song ngay khi xử lý bản ghi thì hệ điều hành đã biết độ dài của bản ghi đó: trong một
phần nội dung của bản ghi đã ghi nhận độ dài của bản ghi. Tùy thuộc vào độ dài mỗi
bản ghi có thể chuẩn bị các công việc liên quan để xử lý chúng. Chẳng hạn việc tách
các bản ghi từ một khối sau khi đọc từ vật dẫn ngoài vào bộ nhớ trong.
* Quá trình kết khối quá trình tách khối:
Một khối có thể chứa một hoặc một vài bản ghi và ngược lại, một bản ghi có thể
được xếp trên một hoặc hoặc một số khối. như vậy tồn tại mối quan hệ giữa khối với
bản ghi và điều đó liên quan đến vấn đề xác định bản ghi theo khối.
Việc tổ chức file trên vật dẫn ngoài theo các khối là công việc hệ điều hành(do các
chương trình của các phương pháp truy nhập đảm nhận) và như đã nói khối vào bộ
nhớ trong hoặc đưa dữ liệu lên một khối là do hệ điều hành đảm nhận. ta có thể gọi
quá trình đó là quá trình vào ra vật lý.
Sau khi hệ điều hành đã đưa một khối vào bộ nhớ trong, cần phải xác định bản ghi
hiện thời để chương trình người dùng xử lý. Đó là quá trình 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 đó. Quá trình này diễn ra sau khi hệ điều hành đã đọc một khối từ vật dẫn ngoài
vào bộ nhớ trong và trước khi chương trình dùng xử lý bản ghi. Tùy thuộc vào
phương pháp truy nhập dữ liệu mà tách khối hoặc do hệ điều hành hoặc do chính
chương trình người dùng đảm nhận.
Sau khi chương trình người dùng chuẩn bị xong nội dung bản ghi, thông tin trên
bản ghi đó đã đúng như yêu cầu của người dùng, cần đưa nó lên vật dẫn theo đơn vị là
khối, vì vậy bản ghi nói trên phải được xếp vào một khối tương ứng (quá trình đó gọi
là kết khối). khi khối đã đầy đủ thông tin được xử lý thì hệ điều hành cần đặt đúng
khối đã có vào vị trí đã dành cho nó trên vật dẫn ngoài.

Về hình thức, kết khối là quá trình ngược lại với quá trình 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 để đưa ra vật dẫn ngoài.
Chương trình người dùng xử lý dữ liệu tại những vùng bộ nhớ theo quy định của
chương trình, được gọi là vùng làm việc. hệ điều hành đọc khối vào các vùng nhớ
trung gian được gọi là vùng đệm vào (buffer vào) trước khi dữ liều được chương
trình xử lý. Sau khi chương trình xử lý dữ liệu xong. Bản ghi đã hoàn thiện được kết
khối vào các vùng nhớ đệm ra (buffer ra) trước khi được hệ điều hành đưa ra vật dẫn
ngoài.
Do hệ điều hành do hệ điều hành
Bộ nhớ trong
Sơ đồ trong hình 2.1 diễn tả sơ lược về hai quá trình trên. Trong sơ đồ này, giai đoạn
đọc vật lý (khi vào) và ghi vật lý (khi ra) do chương trình của phương pháp truy nhập
phải đảm nhận. giai đoạn tách khối và kết khối hoặc do hệ điều hành đảm nhận hoặc
do chương trình người dùng đảm nhận tùy thuộc vào file dữ liệu nói trên được mở
làm việc theo phương pháp truy nhập nào. Tùy thuộc vào phương pháp truy nhập mà
các quá trình nói trên được thực hiện theo các cách thức khác nhau như trình bày ở
các mục sau.
Theo sơ đồ trên đây, ta có thể nhận thấy rằng mỗi phương pháp tổ chức và truy nhập
dữ liệu bao gồm một số thành phố cơ bản như sau (Môdun chương trình có thể được
phát hiện thành nhóm modun chương trình).
+ modun chương trình đảm bảo chức năng tổ chức lưu trữ và định vị trên vật dẫn
ngoài.
Khối ngoài Khối ngoài
Buffer vào Buffer raVùng làm việc
+ môdun chương trình đảm bảo vào/ra mỗi khối(bản ghi vật lý) đối với mỗi xác
định.
+ môdun chương trình đảm bảo việc tách/kết khối theo bản ghi đối với file xác
định.
Trong mục tiếp theo, chúng ta có thể xem xét cách tổ chức dữ liệu trên đĩa từ trong

hệ điều hành MS-DOS và qua đó khảo sát sự hoạt động của hai môdun chương trình
đầu tiên. Các nội dung liên quan đến tổ chức và điều khiển buffer môdun chương
trình cơ bản nói trên.
Câu 5: trình bày về vai trò và cách sử dụng buffer.
Trả lời:
• Vai trò của buffer:
• Là bộ nhớ trong lưu trữ tạm thời các dữ liệu vào ra. Như vậy sẽ thuận
tiện cho việc vào ra dữ liệu.
• Chương trình người dùng có thể làm việc với 1 hay nhiều file ngoài. Tốc
độ đọc và sử lý chương trình khác nhau. Cho nên để có hiệu quả hơn cho
việc vào ra thì các buffer được liên kết với nhau tạo thành xâu các
buffer. Tùy theo hệ điều hành riêng mà số lượng các buffer sẽ được ấn
định ( nó sẽ đặt trong tập tin là conffig.sys , buffer = n ).
• Sử dụng buffer:
Có 2 phương pháp điển hình khi sử dụng buffer: sử dụng buffer theo khẳng
định và sử dụng buffer theo đòi hỏi.
• Buffer theo khẳng định:
• Áp dụng cho các chương trình file dữ liệu được mở đê làm việc theo
phương pháp truy nhập đã biết trước được số bản ghi cần xử lý. Vì vậy
mức độ tự động hóa là cao và tốc độ là nhanh thể hiện:
+ khâu tách khối, kết khối, quá trình đồng bộ hóa, quá trình kiểm
tra sai sót đều do các chương trình heek thống đảm nhiệm dẫn tới các
câu lệnh người dung đơn giản tốc độ của chương trình chạy nhanh.
• Sử dụng buffer theo khẳng định là truy cập file tuần tự. ngay khi mở file
để đọc, khối đầu tiên của file đã được vào bộ nhớ và bản ghi đàu tiên đã
được tách ra sẵn sàng làm việc.
• Buffer theo đòi hỏi:
• Được áp dụng với phương pháp truy nhập dữ liệu. người sử dụng xác
định chương trình của mình sẽ chủ động làm việc với bản ghi nào, và hệ
điều hành không thể tự đọc tự ghi các khối tương ứng vào bộ nhớ trong.

• Mức độ tự động hóa thấp, nhưng sự chủ động của người dung với dữ liệu
của chương trình là cao.
Câu 6: Trình Bày phương pháp điều khiển bộ nhớ liên tục theo phương pháp đa
bài toán
a. giới thiệu chung
- Trong chế độ đa chương trình trong bộ nhớ tồn tại 1 số chương trình thực
hiện đồng thời. Để làm được việc ghi nhận được nhiều chương trình thì
bộ nhớ trong được chia thành các miền.
- 1 bài toán cơ bẩn là số lượng và kích cỡ của các chương sẽ được phân
chia ra làm 2 lớp bài toán chương trình và xử lý: tính toán nhiều và vào
ra nhiều.
- Để dạt được hiệu quả xử lý cao thì trong 1 thời điểm bộ nhớ tồn tại 5 ->
6 chương trình cùng 1 lúc
Vì vậy tồn tại chiến lược giới hạn tĩnh và giới hạn động.
b. chiến lược giới hạn tĩnh(cận cố định)
- Phân phối bộ nhớ liên tục là chiến lược giới hạn tĩnh hay còn gọi là chiến
lược phân chương.
- Bộ nhớ được chia thành các chương: gán tên chương trình, địa chỉ, dung
lượng trong quá trình khởi tạo hệ điều hành.
- Đối với 1 bài toán : khi được load vapf bộ nhớ nó sẽ được gán với 1 hoặc
vài chương bộ nhớ.
Phân phối bộ nhớ cho bài toán có 2 hướng:
+ Phân phối nhanh nhất là bài toán được gắn với chương đầu tiên và có đủ
độ rộng để chứa cho chương trình.
+ Phân phối tối ưu là bài toán tìm độ dài tối ưu nhất
- Không có chương trình nào đủ để phân phối chương trình.
- Mọi Chương trình đã được tải .
- 1 số chương rỗi , mỗi chương rỗi không đủ chứa bài toán song nối vài
chương rỗi tạo ra 1 vùng bộ nhớ đủ để tải bài toán.
- Việc phân phối bộ nhớ cho bài toán được coi như gắn với mỗi chương

có 1 dòng xếp hàng các bài toán cần được phân phối bộ nhớ đối với nó.
Mỗi bài toán lại có thể gắn với 1 chương, có sự chung nhau giữa 1 số
dòng xếp hàng.
c. Chiến lược giới hạn động (cận thay đổi)
- Chế độ phân phối chương vùng nhớ tĩnh không tối ưu được bộ nhớ cho
nên để phân phối được bộ nhớ liên tục thì chế độ giưới hạn thay đổi
được áp dụng
- Đặc điểm
+ Trong quá trình làm việc các chương trình được thực hiện và giải phóng
các vùng nhớ giải phóng có thể liên tục rời rạc
+ Khi điều khiển bộ nhớ theo cận thay đổi sẽ sử dụng linh hoạt và tối ưu bộ
nhớ cho phép độ dài của modun chương trình là lớn và các vùng nhớ rỗi sẽ
được linh hoạt.
- Cần phải đảm bảo
+ quản lý bộ nhớ phải luôn thay đổi
+ luôn định vị lại bộ nhớ cho các chương trình(vì khi phân phối bộ nhớ
thay đổi thì dẫn đến bộ nhớ trong cũng thay đổi).
+ Nhiều khi gây ảnh hưởng đến công việc thực hiện 1 chương trình bởi vì
không phải lúc nào cũng cho định vị lại.
+ Nếu như 1 chương trình đang đợi kết quả vào ra thì việc định vị lại sẽ gặp
trở ngại lớn trong quá trình liên kết của chương trình đối với chương trình.

Câu 7. Cách thức overlay.
- Để khắc phục được hiện tường thiếu bộ nhớ khi phân phối liên tục một số hệ thống
cho phép chương trình hoạt động theo chế độ overlay
- Chế độ overlay cho phép tổ chức chương trình thanh các đơn vị chương trình và
đảm bảo các điều kiện sau:
+ Phân phối bộ nhơ cho chương trình trong một miền liên tục
+ Môđun tải gồm một số chương trình và một số môđun tải như vạy tạo thanh file
trên đĩa.

+Trong tập hợp các mô đun chương trình sẽ nảy sinh độc lập nghĩa là một nhóm
mô đun trong bộ nhớ không đòi hỏi một nhóm mô đun khác trong bộ nhớ. Quan hệ
phụ thuộc là một nhóm môđun trong bộ nhớ đòi hỏi 1 nhóm môđun khác trong bộ
nhớ .
+Trong các môđun luôn tồn tại trong quá trình các chương trình thực hiện gọi là
môđun chương trình chính. Các mô đun khác trong chương trinh đều phụ thuộc
vào mô đun chính và được tổ chức dưới dang hình cây.
Ví dụ: A(40kb), B(30kb), C(25kb), D, E, G, H(10kb), J, K(5kb)
A(40kb)
B(30kb) C(25kb)
D(10kb) J(5kb) G(10kb) H(10kb)
E(10kb) K(5kb)
Câu 8 : Trình bày cách điều khiển bộ nhớ gián đoạn:
*) Tổ chức gián đoạn :
- Tại cùng một thời điểm có nhiều người cùng làm việc với máy, nó tồn tại nhiều
chương trình có mạng trong bộ nhớ trong.
- Hệ thống chương trình cần được định vị được bộ nhớ đối với mỗi tên trong chương
trình có nghĩa là phải ánh xạ không gian tên vào địa chỉ vật lý.Trong quá trình đó nảy
sinh ra không gian địa chỉ ảo.Ánh xạ từ không gian lên tới bộ nhớ vật lý được chia
làm 2 bước :
b1: Do chương trình dịch đảm nhận ( xđ được địa chỉ ảo ,địa chỉ ảo có thể là các số,
ký tự hoặc chỉ dẫn gia số ).
Tập hợp các địa chỉ ảo được gọi là không gian địa chỉ ảo.
b2: Do hệ điều hành đảm nhiệm ( ánh xạ địa chỉ ảo vào địa chỉ vật lý( địa chỉ thật )
giai đoạn này nảy sinh quá trình tải chương trình vào bộ nhớ trong tại vùng nhớ còn
rỗi.
Sơ đồ :
Không gian tên Chương trình dịch hệ điều
thực hiện hành
Không gian Địa chỉ vật lý

địa chỉ ảo
*) Điều khiển bộ nhớ ảo theo Segment :
- Khái niệm về Segment :
+) Người sử dụng không nhất thiết quan niệm không gian của chương trình là liên tục
mà có thể quan niệm chương trình là 1 tập hợp các phần logic (được gọi là Segment ).
+) Việc định ra các Segment bao gồm tên của Segment, độ dài Segment biến động
trong suốt thời gian sử dụng là do người lập trình thiết lập.
- Điều khiển bộ nhớ theo Segment :
+) Hệ thống chỉ cần quản lý bảng Segment tổng thể mà mỗi chương trình chiếm 1
vùng liên tục trong bảng này tương ứng với 1 Segment trong 1 chương trình người
dùng.
+) Địa chỉ của các Segment cần hướng tới đã có mặt tại bộ nhớ trong trong trường
hợp không tìm thấy trong bộ nhớ được giải quyết bằng cách sinh ra 1 chương trình
ngắt gọi là chương trình đặt Segment.
- Chức năng của chương trình đặt Segment:
+) Đưa 1 số Segment ra bộ nhớ ngoài để giải phóng bộ nhớ khi cần thiết.
+) Chuyển dich CPU sang phục vụ chương trình khác vì chương trình này đang trong
trạng thái chờ (khi nào giải phóng xong thì nó lại quay lại thực hiện tiếp ).
+) Khi đọc Segment vào bộ nhớ trong thì đồng thời thực hiện biến đổi được phần tử
của Segment.
*) Ưu điểm của Segment :
- Đảm bảo việc tải các Segment của chương trình vào bộ nhớ mà không cần sự can
thiệp của người dùng.
Tên logic Địa chỉ ảo Địa chỉ thực
- Cho phép điều chỉnh các liên kết và khi hướng tới Segment tên của nó được sử dụng
ngay trong thời gian sử dụng ,không phải ánh xạ mọi địa chỉ khác nhau từ không gian
địa chỉ thực.
- Bộ nhớ được sử dụng khá hiệu quả (sử dụng tối đa bộ nhớ).
Câu 9: trình bày trạng thái quá trình và chuyển trạng thái.
Trả lời:

*) trạng thái của quá trình:
Trong chế độ đa chương trình 1 quá trình sẽ nhận một trong ba trạng thái:
chuẩn bị, thực hiện, chờ đợi.
- Tại một thời điểm bắt đầu của một bộ xử lý ít nhất 1 quá trình có thể thực hiện
lệnh của mình (đang được phân phối CPU). Đây là quá trình đang trong trạng
thái sử dụng ( thực hiện) đang chiếm giữ CPU.
- Một quá trình có thể đi tới trạng thái thực hiện khi nó đang ở trạng thái chuẩn
bị. Các quá trình ở trạng thái chuẩn bị được cung cấp đầy đủ các yêu cầu về bộ
nhớ và một số các tài nguyên khác có thể thực hiện được. Nó chỉ có chờ đợi
duy nhất một tài nguyên là CPU.
- Nếu một quá trình mà thiếu các tài nguyên khác CPU thì sẽ được rơi vào trạng
thái kết khối ( chờ đợi tài nguyên).
- Quá trình ở trạng thái sử dụng, chuẩn bị hay kết khối đều sử dụng bộ nhớ ảo.
Khi quá trình thực hiện thì bộ xử lý ảo được giải phóng và bộ xử lý ảo được
loại bỏ công việc được đưa tới dòng xếp hàng ra để in các loại dữ liệu cần đưa
ra.
*) Mô tả chi tiết chuyển trạng thái của một quá trình.
Dòng
xếp
hàng
vào
Dòng
xếp
hàng ra
Chuẩn bị
sẵn sàng
Thực hiện
(sử dụng)
Chờ đợi
(kết khối)

Hình 1: Điều phối CPU ảo và CPU thực cho quá trình
- Quá trình ở trạng thái thực hienejL: sẽ được chuyển 3 hướng.
• Quá trình sẽ được thực hiện và giải phóng CPU ảo.
• Quá trình được kết khối do có nhu cầu vào / ra mới tiếp tục thực hiện. Và nó
sẽ rơi vào trạng thái kết khối cho tới khi nhu cầu nói trên được thực hiện.
• Quá trình rời bỏ CPU theo chương trình điều khiển do thời gian dành cho nó
trong chu kỳ đã hết. Quá trình như vậy chuyển sang trạng thái chờ chuẩn bị.
- Khi sự kiện gây ra kết khối được giải quyết quá trình ở bộ nhớ trong sẽ được
chương trình hệ thống tách khối đưa nó về trạng thái chuẩn bị.
- Quá trình ở trạng thái chuẩn bị được luôn chuyển vào trạng thái sử dụng khi
CPU đã rỗi dành cho nó.
Câu 10 . Điều phối 1 dòng xếp hàng :
Nguyên tắc điều phối CPU đầu tiên theo góc độ toán học . Nguyên tắc này quan niệm
rằng mọi người dùng được xem xét đồng nhất, bình đẳng . Điều đó biểu thị rằng về
trung bình , một quá trình chờ đợi là đồng nhất .
- Hệ thống sau khi hoàn thiện tác động liên quan tới khởi tạo hệ thống , hệ thống
làm việc đã đủ lâu điều phối sự thực hiện của các quá trình .
- Giả thiết rằng , hệ thống làm việc theo chế khẳng định , không thay đổi theo
thời gian . Khi đó quá trình nào đó được đưa vào trạng thái chuẩn bị có thể thay
đổi thời gian chờ đợi .
- Giá trị trung bình của các đại lượng này khi tính đến số vô hạn các thay đổi
được gọi là thời gian chờ đợi trung bình đối với quá trình đã cho. Có thể xây
dựng thuật toán , dựa theo hàng đợi để tính toán điều phối
- Nguyên tắc theo định hướng tới mục tiêu là đảm bảo rằng mọi quá trình đều có
cùng thời gian chời đợi trung bình như nhau
+ Chiến lược đầu tiên quan tâm là chiến lược “ Người vào trước được phục vụ trước
“:
- Mục đích thực hiện chiến lược này là điều phối CPU sao cho thời gian chờ đợi
trung bình cho mọi quá trình là như nhau . Có thể xem xét các quá trình theo
thứ tự xuất hiện của chúng và cho phép mỗi quá trình thực hiên tới từng loại

trường hợp quá trình phải rơi vào trạng thái kết khối.
- Theo phía người dùng cơ chế PCPS bị hạn chế là các quá trình ngắn cũng phải
chờ đợi như những quá trình dài .
- Thời gian chời đợi trung bình có thể tăng một cách không hạn chế và hệ thống
tiệm cận giới hạn của việc tải các quá trình
- Khi tăng thời gian chời đợi thì thời gian trung bình chờ cũng tăng lên.
+ Chiến lược SJN:
- Do FCFS là không đầy đủ khi xem xét vấn đề cực tiểu hóa thời gian chờ đợi
trung bình chung.
- Khi so sánh FCFS , SJN làm giảm thời gian chờ đợi trung bình
- SJN chỉ quan tâm đến ,một số bất định là thời gian thực hiện toàn bộ chương
trình nên có xu hướng cực đoan là đẩy các chương trình người dùng có thời
gian thực hiện lâu về sau mà không cần biết thực hiện chương trình đó chỉ cần
sử dụng CPU với thời gian bao lâu vì nó đã thực hiện nhiều lần.
- Khi sử dụng SRT , thường xuyên thực hiện việc phân phối lại CPU và có thể sử
dụng thuật toán đối với SJN khi phân phối lại CPU.
- Trong SJN và SRT người dùng với những thời gian xử lý ngắn ưu tiên hơn
người dùng với thời gian sử lý dài .
Một nguyên lý nhằm rút ngắn thời gian chờ đợi trung bình chung là xây dựng
độ ưu tiên điều phối cao hơn cho các quá trình có tính chất là xác xuất đòi hỏi thời
gian CPU nhỏ là cao hơn.
Như vậy độ ưu tiên có thể liên quan đến quá trình thực hiện diễn ra nhiều trao
đổi vào ra . Khi 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ì không cho phép tính đến các yếu tố khác .
Dựa theo thời điểm kết thúc của thao tác vào ra , nếu quá trình đưa ra nhu cầu vào ra
mà sự chờ đợi không vượt quá lượng tử thời gian thì nó không bị kết khối.
Câu 11: Trình bày về hệ thống ngắt?
• Khái niệm ngắt
Ngắt có thể được xác định như là một chương trình gắn vào truyền điều khiển cho
một chương trình khác thực hiện thời điểm ngắt. Ngắt được coi như cách thức truyền

điều khiển cho quá trình xử lý ngắt chưa được biết từ quá trình ngắt.
• Ngắt được chia ra hai lớp cơ bản: ngắt trong và ngắt ngoài.
+ Ngắt trong liên quan đến các sự kiện liên kết tới công việc của CPU và để đồng bộ
hoạt động của nó. Ví dụ: tràn ô khi cộng hay trừ dấu phẩy động, xuất hiện phép chia
cho 0; thực hiện phép toán dấu phẩy động truyền hoặc xóa phần sạc; vi phạm địa chỉ
bộ nhớ, thiếu vắng segment hoặc trang, mã lệnh sai
+ Ngắt ngoài: được xảy ra theo các hiện tượng liên quan ngoài sự thực hiện của CPU:
ngắt vào-ra, ngắt do sơ đồ kiểm tra, ngắt từ CPU khác, ngắt do hết lượng tử thời
gian
• Xử lý ngắt
Ngắt là một hiện tượng xảy ra có thể độc lập với sự làm việc của CPU. Một vấn đề
được đặt ra là thời điểm xử lý ngắt: xử lý ngắt lục nào là thích hợp nhất khi quan hệ
với lệnh máy đang được thực hiện. Ngắt xảy ra có thể hoặc do sự thực hiện lệnh, hoặc
do tác động từ chính bản thân lệnh. Nếu cơ chế xử lý ngắt không thích hợp sẽ loại bỏ
chính lệnh máy đang thực hiện. Thuận lợi hơn cả là xử lý ngắt sau khi thực hiện lệnh
và việc ghi nhận ngắt là độc lập với sự thực hiện lệnh. Cơ chế ghi nhận ngắt là năm
ngoài các chương trình xử lý ngắt.
Có rất nhiều phương pháp liên quan đến xử lý ngắt nhưng quy trình chung có thể
được mô tả qua các bước:
• Tại những ô nhớ quy định, ghi nhận các đặc trung của số hiệu ngắt vừa phát
sinh ( tùy thuộc vào số liệu được đưa vào ô nhớ tương ứng). Ví dụ với máy
IBM 360-370 có các số hiệu để phân biệt các kiểu ngắt như sau:
-Ngắt vào ra
- Ngắt theo chương trình: vi phạm cách thức phương tiện máy; lẹnh không chính
quy; dữ liệu không chính quy
- Ngắt hướng tới supervisor( gọi chương trình supervisor và thay chế độ làm việc
của CPU)
- Ngắt ngoài: có tín hiệu hướng tới CPU, ngắt theo thời gian, ngắt khi có tín hiệu
của các bộ xử lý khác
- Ngắt theo sơ đồ kiểm tra.

2. Ghi nhớ trạng thái của quá trình bị ngắt: giá trị bộ đếm lệnh ( chú ý từ trạng thái
chương trình PSW: Program Statuc Word, trên bàn điều khiển có một hàng đèn
tương ứng với từ này )
3. Thanh ghi địa chỉ lệnh hướng tới địa chỉ để xử lý ngắt.
4. Ngắt được xử lý
5. Quay lại quá trình đã bị ngắt( nếu được)
Các bước 1-3 do các thành phần chức năng của máy tính đảm nhận, bước 4,5 do
chương trình xử lý ngắt đảm nhận.
Bước 4. Chương trình xử lý ngắt tiến hành các công việc:
Ghi nhớ bổ sung một số thông tin mà do các thức phương tiện( bước 2) chưa ghi
hết, ví dụ bước 2 ghi PSW còn chương trình xử lý ngắt phải bảo vệ trạng thái của
quá trình bị ngắt bằng việc lưu trừ hệ thông các thanh ghi chung và công việc nói
trên đòi hỏi một vùng bộ nhớ nhất định( chẳng han với IBM, EC đòi hỏi vùng 72
bytes cho 16 thanh và 2 địa chỉ chuyển đổi)
• Định danh chương trình xử lý ngắt.
Thông tin bước 3 là bộ phận đối với chương trình xử lý ngắt, mỗi loại ngắt có thể
do một chương trình xử lý ngắt riêng, ví dụ ngắt do vào ra ( thiết lập cách thức
phương tiện ở bước 1) khác biệt hoàn toàn với ngắt hướng tới supervisor ( phân
tích tác động tiếp theo supervisor)
• Thực hiện tác động tương ứng với ngắt đã được định danh.
Các tác động này hết sức đơn giản. ví dụ chỉ thiết lập dấu hiệu nào đó như thạng
thái tràn ô, hoặc quay lại băng từ chuyển sang việc chuẩn bị đoc nếu đã đọc
Nếu không quá gấp, chương trình xử lý ngắt tương ứng sẽ được ghi vào dòng xếp
hàng quá trình ở trạng thái chuẩn bị.
Chương trình xử lý ngắt đảm bảo việc quay về quá trình trạng thái bình thường của
CPU (chọn quá trình người dùng để thực hiện) tùy thuộc vào:
-Kiểu ngắt
-Kiểu của chương trình điều phối CPU được sử dụng
Từ yếu tố trên sẽ xác định công việc kết khối, về trạng thái chuẩn bị và các công
việc được chọn tiếp theo

Chú ý:
Một số tác động của chương trình xử lý ngắt được thực hiện chậm nếu để ở bộ nhớ
ngoài cho nên đưa ra giải pháp một số bộ phận của chương trình xử lý ngắt được
đặt thường trực trong bộ nhớ như là một phần trong nhân hệ thống. nếu chương
trình xử lý ngắt quá lớn, nó được chia làm hai phần: phần thường trực và phần
không thường trực
Nhiều ngắt có quan hệ đến điều khiển CPU (ngắt theo thời gian, ngắt theo hoạt
động thiết bị, ngắt hoàn thiện vào/ra). Quá trình do điều phối làm không chỉ là quá
trình người dùng mà còn là những bộ phận khác nhau của hệ điều hành ( bao hàm
chương trình xử lý ngắt mức 2; chương trình con thống kê; điều phối chính; tải và
thậm chí chính cả điều phối)
Ngắt đa mức:
Ngắt xảy ra có thể đối với chương trình người dùng, có thể xảy ra chính trong quá
trình đang xử lý ngắt. Đây là tình huống được gọi là ngắt đa mức. Xử lý ngắt đa
mức ra sao?
• Phân cấp các loại ngắt theo độ ưu tiên, thông thường ngắt liên quan tới cách
thức kỹ thuật có độ ưu tiên thấp hơn so với các ngắt có liên quan đến hệ điều
hành. Ví dụ: ngắt gọi supervisor có độ ưu tiên cao hơn so với ngắt vào/ra
• Chọn ngắt vào được xử lý trước tiên: ngắt cũ và ngắt mới, việc đó tùy thuộc
vào kiểu vào hai ngắt. Ngắt mới hoặc được giải quyết ngay ( ngắt trội hơn)
hoặc bị hủy bỏ, hoặc chờ để giải quyết tiếp theo.
Xử lý ngắt đa mức theo các độ ưu tiên khác nhau được đảm bảo theo các cách thức
phương tiện khác nhau ghi nhận mỗi kiểu ngắt khác nhau trên các ô nhớ khác
nhau.
Câu 12: Trình bày sự bế tắc và điều kiện nảy sinh bế tắc
Trả lời:
Sự bế tắc(dead lock)
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 do mỗi
quá trình trong nhóm đang chiếm một tập con các tài nguyên để hoàn thiện quá trình
đó và chờ đợi việc giải phóng một số tài nguyên còn lại đang bị các quá trình thuộc

cùng nhóm đang chiếm giữ.
Các quá trình không chia sẻ mà sử dụng độc quyền tài nguyên cùng một thời điểm,
một quá trình chiếm giữ một số tài nguyên,không nhường cho các tiến trình khác và
đồng thời đòi hỏi các tài nguyên khác.
Điều kiện về vấn đề chờ đợi quá trình có nhu cầu về tài nguyên,và chỉ khi nhu cầu
được thỏa mãn thì chương trình mới tiếp tục thực hiện
Không được phân phối lại: mặc dù không bổ xung thêm tài nguyên mà 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.
Điều kiện nảy sinh bế tắc
Sảy ra tình trạng bế tắc khi đồng thời gặp bốn điều kiện dưới đây:
Loại trừ việc dung chung(chiếm giữ và chờ đợi):Các quá trình không chia sẻ mà sử
dụng độc quyền tài nguyên cùng một thời điểm, một quá trình chiếm giữ một số tài
nguyên,không nhường cho các tiến trình khác và đồng thời đòi hỏi có thêm tài nguyên
mới.
Chờ đợi: quá trình có nhu cầu về tài nguyên,và chỉ khi nhu cầu được thỏa mãn thì
chương trình mới tiếp tục thực hiện
Không được phân phối lại: không bổ xung 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.
Từ điều kiện nảy sinh bế tắc để tránh hậu quả của hiện tượng này hệ thống có thể
chọn trong ba giải pháp liệt kê như dưới đây :
Ngăn ngừa bế tắc ;
Đoán nhận bế tắc.nếu đoán nhận được thì tránh được.
Câu 13: Trình bày các phương án ngăn ngừa sự bế tắc, thoát khỏi sự bế tắc và
đoán nhận bế tắc?
1, Ngăn ngừa sự bế tắc:
- Nguyên tắc để ngăn ngừa sự bế tắc là duy trì hoạt động của hệ thống để 4 điều
kiện nảy sinh sự bế tắc không xảy ra.
* 4 điều kiện nảy sinh bế tắc:

+ Loại trừ việc dùng chung (chiếm giữ và chờ đợi)
+ Điều kiện về vấn đề chờ đợi
+ Không được phân phối lại
+ Sự chờ đợi vòng tròn
- Đối với điều kiện chiếm giữ và chờ đợi: Điều kiện này xảy ra là do việc cung
cấp tài nguyên không có tổ chức, để thoát khỏi điều kiện này cần cung cấp một cách
chính quy các tài nguyên cho các quá trình.
- Điều kiện chờ: Nếu hệ thống biết trước được nhu cầu tài nguyên đối với mỗi
quá trình thì có thể bố trí kế hoạch để phân phối.
Tuy nhiên nhiều trường hợp, muốn biết trước được tài nguyên là rất khó. Vì thực tế là
chỉ khi 1 quá trình được thực hiện mới nảy sinh nhu cầu về tài nguyên.
- Điều kiện không phân phối lại tài nguyên: có thể loại trừ được nếu HĐH chú
ý tới các tài nguyện trong quá trình.
- Điều kiện sự chờ đợi vòng tròn: có thể loại trừ được nếu phân phối các tài
nguyên theo cấu trúc. Trật tự được dùng tài nguyên thể hiện ở việc mức độ tài nguyên
của quá trình này cao hơn tài nguyên của qá trình khác đối với 1 tài nguyên xác định.
Tất cả tài nguyên được thể hiện trong một cấu trúc nào đó. Quá trình nhận được tài
nguyên chỉ khi nó đạt được mức cao hơn.
2, Thoát khỏi sự bế tắc:
- Nếu trong 4 điều kiện nảy sinh bế tắc không loại trừ, hệ thống có thể rơi vào
tình trạng bế tắc. việc thoát khỏi tình trạng bế tắc sẽ được thực hiện nếu như hệ thống
có các thông tin về các đòi hỏi của các quá trình song song và trong tình trạng phải,
nó phải loại trừ điều kiện nảy sinh bế tắc.
3, Đoán nhận bế tắc:
- HĐH có thể đưa ra danh sách các tài nguyên mà các quá trình đang chờ đợi và
danh sách các tài nguyên mà các quá trình chờ đợi không được thỏa mãn. Trên cơ sở
đó có thể khẳng định rằng 1 quá trình có rơi vào bế tắc hay không. Như vậy sẽ có một
số thuật toán dựa vào danh sách các điều kiện xảy ra bế tắc để đoán nhận bế tắc và
loại bỏ.

×