Hãy liệt kê tên 04 (bốn) khối kết nối vào i/o interface trong sơ đồ kiến trúc máy tính.
Đề cương kiến trúc máy tính và hệ điều hành ôn tập có đáp án chi tiết
Show
Đề cương kiến trúc máy tính và hệ điều hành ôn tập, tự học có đáp án chi tiết theo chuẩn chương trình chuyên ngành đại học bộ giáo dục và đào tạo Câu 1: Viết đầy đủ tên tiếng Anh và dịch ra tiếng Việt các cụm từ viết tắt sau đây:KTMT:
`HĐH:
Câu 2: kiến trúc máy tính được phân loại như sau:* máy tính đơn dòng lệnh và đơn dòng dữ liệu( single instruction single data-SISD): tại một thời điểm chỉ có một lệnh thực hiện trên một dữ liệu – dạng kiến trúc máy tính tuần tự : Sơ đồ máy tính đơn dòng lệnh đơn dòng dữ liệu( máy tính tuần tự) với P: processor: bộ xử lí và memory: M
Máy tính vecto, mảng:
Câu 3: đặc điểm kiến trúc cơ bản của MARIE (a Machine Architecture that is Really Intuitive and EasyMARIE có những đặc điểm sau đây:
Hình 4.8 cho thấy kiến trúc cho Marie. Trước khi tiếp tục, chúng ta cần phải nhấn mạnh một điểm quan trọng về bộ nhớ. Trong Chương 8, chúng tôi trình bày một bộ nhớ đơn giản được xây dựng sử dụng mạch lật ( D flip-flops). Chúng tôi nhấn mạnh một lần nữa rằng mỗi vị trí trong bộ nhớ có một địa chỉ duy nhất (trong hệ nhị phân) và mỗi địa điểm có thể giữ một giá trị. Những khái niệm về địa chỉ so với những gì là thực sự được lưu trữ tại địa chỉ đó có xu hướng gây nhầm lẫn. Để tránh nhầm lẫn, chỉ cần hình dung một bưu điện. Có hộp bưu điện với “địa chỉ” khác nhau hoặc số. Trong thư có thư. Để nhận được thư, số lượng các hộp thư phải được biết. Điều này cũng giống như dữ liệu hoặc lệnh cần phải được nạp từ bộ nhớ. Các nội dung của bất kỳ địa chỉ bộ nhớ nào cần được xác định địa chỉ của vị trí bộ nhớ đó. Chúng ta sẽ thấy rằng có nhiều cách khác nhau để xác định địa chỉ này. Câu 4: Hãy gọi tên và cho biết chức năng của các thanh ghi trong MARIEỞ MARIE, có 7 bản ghi, như sau:
MAR, MBR, PC và IR giữ các thông tin riêng biệt và không được sử dụng cho bất cứ điều gì khác ngoài mục đích của chúng. Lấy ví dụ, chúng ta không thể lưu trữ một giá trị dữ liệu tùy ý từ bộ nhớ trong PC. Chúng ta phải sử dụng MBR hoặc AC để lưu trữ giá trị tùy ý này. Ngoài ra, có 1 trạng thái thanh ghi hoặc miền bản ghi giữ thông tin cho thấy các điều kiện khác nhau, chắc hạn việc tràn bộ nhớ trong ALU. Tuy nhiên, để cho rõ ràng, chúng tôi không bao hàm thanh ghi trong bất kì một con số. MARIE là một máy tính đơn giản với một bộ thanh ghi bị hạn chế. Các bộ vi xử lý hiện đại có vô số các thanh ghi chung, thường được gọi là ‘ thanh ghi mà người dùng có thể nhìn thấy’, mà thực hiện các chức năng tương tự như của AC. Câu 5: các đơn vị đo khả năng hoạt động của máy tính:
Trang( 9)
Câu 6 Trình bày chế độ ngắt (Interrupt) trong hoạt động của máy tính tuần tự. Có mấy loại ngắt? ( trang 39)
Chế độ ngắt là cơ chế tạm dừng một chương trình đang thực hiện một cách đột ngột( không biết trước thời điểm xảy ra). Khi đó máy tính sẽ phải lưu lại tất cả các trạng thái hiện thời của chương trình bị ngắt để thực hiện chương trình ngắt. khi thực hiện xong chương trình ngắt thì hệ thống phải khôi phục lại trạng thái của chương trình trước khi ngắt để tiếp tục làm việc bình thường. Các tình huống xảy ra ngắt:
Có các loại ngắt sau:
Câu 7:Cơ chế truy cập bộ nhớ trực tiếp (DMA) là gì? Nêu nguyên lý hoạt động của chế độ này( trang 39) Phương pháp truy cập bộ nhớ trực tiếp DMA( direct memory access I/O) để tránh nhược điểm của phương pháp I/O được điều khiển bởi ngắt là mỗi lần truyền một kí tự lại phải ngắt một lần. khi đó chính CPU phải thực hiện chương trình con xử lí ngắt dẫn đến tốn thời gian làm việc của CPU, người ta sử dụng phương pháp truy cập bộ nhớ trực tiếp DMA. Trong cơ chế này, dữ liệu sẽ được truyền trực tiếp từ bộ nhớ đến các thiết bị ngoại vi và ngược lại. quá trình truyền dữ liệu này không bị điều khiển bởi CPU mà bởi các thiết bị phần cứng gọi là bộ điều khiển truy cập bộ nhớ trực tiếp DMAC( direct memory access controller)
Chế độ DMA thường được dùng để truyền dữ liệu giữa các thiết ị có khả năng truy xuất thông tin với khối lượng lớn và đòi hỏi tốc độ truy xuất cao như các thiết bị đĩa cứng, đĩa mềm và bộ nhớ. Câu 8: Trình bày các khối chức năng chính trong cấu trúc của máy tính tuần tự.Cấu trúc chung của máy tính gồm các khối chức năng chính sau đây:
Câu 9: Nêu các chức năng chính của bộ xử lý trung tâmCác chức năng chính của bộ xử lí trung tâm( trang 41) Bộ xử lí trung tâm là trái tim, khối óc của máy tính. Nó vừa phân tích thông tin, vừa điều khiển cách truyền tin. Cấu trúc của một CPU cho biết nó xử lí lệnh và dữ liệu như thế nào: Các chức năng chính của bộ xử lí trung tâm bao gồm:
Để có thể là được những việc trên, CPU cần phải lưu trữ tạ thời một số dữ liệu. việc lưu trữ các lệnh và dữ liệu tạm thời trong khi một lệnh đang được thực thi nhờ một bộ nhớ trong nhỏ của CPU – đó là các thanh ghi. Câu 10:Bộ xử lý trung tâm (CPU) có những bộ phận cơ bản nào? Chức năng của từng bộ phận là gì
( trang 42) Các thành phần chisnhc của CPU bao gồm: bộ số học logic ALU, bộ điều khiển CU, và các thanh ghi và một số cơ chế kết nối các bộ phận này với nhau.
Trong đó các số thực hay số nguyên được biểu diễn theo cách sau:
+ đơn vị thông tin cơ bản nhất trong máy là bit( binary digit) + năm 1964 các nhà thiết kế máy tính mainframe IBM syste/360 đưa ra đơn vị biểu diễn địa chỉ bộ nhớ của máy tính là 1 byte= 8 bit + các từ máy( computer word) có thể bằng 1 hoặc nhiều byte. Kích thước của áy có thể là 8 bits, 16 bits, 32 bits.. tùy thuộc vào tổ chức máy tính.
+ dạng biểu diễn dấu- độ lơn( sign- magnitude) trong một từ có n bit thì bit trái ngoài cùng biểu diễn dấu, còn N-1 bit sẽ biểu diễn độ lớn của số. + sử dụng só bù 1( 1’s complement representation) + sử dụng số bù 2( 2’s- comlement representation) để biểu diễn số â trong hệ nhị phận. + biểu diễn bằng mã BCD( binary code decimal)
+ người ta biểu diễn số thực trong máy tính bằng 2 cách: số thực dấu phẩy động và số thực với dấu phẩy tĩnh. + với số thực dấu phẩy tĩnh thì các phép tính được thực hiện tương tự như các số nguyên + để biểu diễn các giá trị cực lớn hoặc cực nhỏ, người ta cũng dùng cách biểu diễn theo dấu phẩy động với các số nhị phận dược dạng S*B^(+-E)*M Với khuôn dạng:
+ mục đích: để chuyển bất kì số nguyên nào trong khuôn dạng đã cho đều được biểu diễn dưới dạng số nguyên không âm. + giá trị bias là một số nằm gần giữa các giá trị có thể được chọn để biểu diễn số 0.
Có chức năng phiên dịch các lệnh thành vi lệnh( micro operator) hoặc chuyển đổi thành các tín hiệu điều khiển các tín hiệu khác trong máy tính, đồn thơi đồng bộ và phối hợp sự hoạt động của tất cả các bộ phận trong máy tính.
+ các bộ điều khiển nối cứng với nhau( hard wired CU): các bộ điều khiển sử dụng các mạch để biểu diễn các trạng thái khác nhau của bộ xử lí( với mỗi tín hiệu đưa vào thì nó sẽ sinh ra một loạt tín hiệ điều khiển tương ứng với trạng thái đó bằng các bộ phận phần cứng). đặc điểm của cách thiết kế này là tốc độ tính toán rất nhanh vì nó thực hiện bằng phần cứng. tuy nhiên nó không linh hoạt vì mỗi khi muốn thêm một lệnh thì người ta phải thiết kế lại bộ điều khiển này. Tuy nhiên trong thực tế, phần lớn người ta đều dùng bộ điều khiển này do tốc độ lớn và phương pháp thiết kế đã được chuẩn hóa. + các bộ điều khiển vi chương trình( micro programmed CU): đế khắc phục tính không linh hoạt của bộ điều khiển vi chương trình. Với mỗi loại lệnh của bộ xử lí thì nó sẽ được phiên dịch ra thành các vi lệnh. Mỗi vi lệnh này sẽ được thực hiện trong một bộ điều khiển vi chương trình. Đặc điểm của cách thiết kế này là tốc độ thực hiện chậm vì nó có quá nhiều công đoạn, tương tự như chương trình con. Bộ điều khiển này kinh hoạt hơn vì các lệnh muốn thêm hoặc thay đổi chỉ cần thay đổi trong bộ nhớ vi lệnh. Tuy nhiên, bộ điều khiển này ít được dùng trong thực tế.
Các thanh ghi trong CPU có 2 loại:
Có nhiều thanh ghi khác nhau phục vụ cho việc điều khiển hoạt động của CPU. Hầu hết các thanh ghi này phần lớn các máy tính lớn các máy tính hữu hình đối với người sử dụng. các máy tính khác nhau sẽ có các tổ chức thanh ghi khác nhau và dùng các tên gọi khác nhau. Sau đây là mô tả ngắn gọn một số loại thanh ghi thông dụng: Bốn thanh ghi chủ yếu để thực thi lệnh là:
Câu 11: nguyên lí thực hiện một lệnh trong môt chu kì lệnh của máy tính tuần tự:( trang 37) Mỗi lệnh được thực hiện trong một chu kì lệnh ( instruction cycle). Chu kì lệnh là khoảng thời gian từ khi nhận lệnh đến khi thực hiện xong lệnh. Các chu kì lệnh không nhất thiết phải dài bằng nhau. Mỗi chu kì lệnh xảy ra trên nhiều chu kì nhịp đồng hồ của CPU. Mỗi một lệnh được thực hiện theo nhiều giai đoạn, phục thuộc vào loại lệnh. Nói chung việc thực hiện lệnh thường trải qua 5 bước:
Quá trình thực hiện một chương trình được mô tả( nhiều lệnh ) Câu 12: nguyên lí thực hiện một chương trình. Giải thích cách bộ đếm chương trình ( program counter- PC) theo dõi thứ tự lệnh.( trang 37) Chức năng cơ bản của máy tính là thực hiện chương trình. Chương trình là tập hợp các lệnh được lưu trữ trong bộ nhớ. Bộ xử lí trung tâm thực hiện chương trình bằng cách lần lượt thực thi các lệnh trong chương trình. Quá trình này được thực hiện theo 2 bước: tại một thời điểm, CPU nạp lệnh từ bộ nhớ và thực thi lệnh này. Việc thực thi chương trình thực chất là sự là sự lặp lại quá trình nạp lệnh và thực thi lệnh. ( vẽ sơ đồ) Chương trình chỉ dừng khi máy tính tắt, khi gặp lỗi hoặc gặp một lệnh máy tính ngừng hoạt động Trong CPU có một thanh ghi( register) đặc biệt gọi là bộ đếm chương trình( program counter- PC) được sử dụng để theo dõi thứ tự thực hiện lệnh:
Câu 13: Trình bày ngắn gọn về các đặc điểm của lệnh máy (các phần tử, dạng lệnh, loại lệnh và số lượng địa chỉ).
Trong đó:
Thông thường trong ột lệnh người ta sử dụng từ 0 đến n địa chỉ( n tham số). với số lượng địa chỉ càng nhiều thì khả năng tính toán và độ linh hoạt của lệnh càng lớn. Trong thực tế người ta thường sử dụng 2 đến 3 tham số cho lệnh
Load: nạp dữ liệu vào thanh ghi tích lũy Stor: lấy dữ liệu từ thanh ghi tích lũy đưa vào biểu thức.
Push x: đưa x vào ngăn xếp Pop x: lấy giá trị từ ngăn xếp đưa vào x Add: cộng 2 giá trị từ đỉnh ngăn xếp Sub: trừ 2 giá trị ở đỉnh ngăn xếp Mpy: nhân 2 giá trị ở đỉnh ngăn xếp Div: chia 2 giá trị ở đỉnh ngăn xếp Câu 14: chức năng chín của bộ nhớ máy tính. Phân loại bộ nhớ theo vị trí và theo phương pháp truy cập dữ liệu. lấy ví dụ minh họa ( trang 64)
Bộ nhớ là bộ phận của máy tính dùng để lưu trữ dữ liệu, chương trình, các kết quả trung gian trong quá trình thực hiện chương trình.
Thời gian truy nhập( access time) Thời gian chu kì bộ nhớ( memory cycle time) Tốc độ truyền ( transfer rate) Câu 15: lệnh máy thường chứa những phần tử nào: ( trang 52)
Bộ nhớ chính hoặc bộ nhớ ảo: cũng như với tham chiếu lệnh tiếp theo, phải biết địa chỉ bộ nhớ chính hoặc bộ nhở ảo chứa các toán hạng.
Câu 16: Trong hai loại Cache L1 và L2 loại nào nhanh hơn? Loại nào có kích thước nhỏ hơn? Vì sao lại nhỏ hơn?( trang 73) Có 2 loại cache:
Câu 17. Hãy giải thích cách tổ chức và hoạt động đọc của bộ nhớ Cache ( trang 73)Ram hệ thống không thể luôn cung cấp đầy đủ dữ liệu cần thiết cho CPU 1 cách nhanh chóng. Do đó, người ta thường dùng bộ nhớ Cache làm trung gian trong quá trình truyền giữa bộ xử lý và RAM. Sơ đồ: Cache là trung gian giữa CPU và Bộ nhớ chính Câu 18: thế nào là địa chỉ hóa tức thời? ưu và nhược điểm của phương pháp này:
Lệnh
Khi xử lí lệnh, các toán hạng được cung cấp ngay mà không cần thêm phép truy nhập bộ nhớ nên tốc độ tính toán nhanh.
Câu 19: thế nào là địa chỉ hóa trực tiếp và gián tiếp.ưu và nhược điểm của từng phương pháp.(trang 60)
Đây là dạng địa chỉ hóa rất đơn giản.
Câu 20: trình bày chức năng chính của modun vào/ra:Chức năng của modun vào ra : Modun vào ra nằm toàn bộ bên trong máy tính để điều khiển một hoặc nhiều thiết bị bên ngoài và để trao đổi dữ liệu giữa các thiết bị này với bộ nhớ chính và /hoặc với các thanh ghi của CPU. Do đó, một modun vào ra phải có một đầu nối bên trong máy tính( với CPU và bộ nhớ chính) và phải có đầu nối bên ngoài máy tính( với các thiết bị bên ngoài). Các chức năng chính của modun vào ra:
Trong bất kì một khoảng thời gian nào, CPU có thể giao tiếp với một hoặc nhiều thiết bị bên ngoài phục thuộc vào nhu cầu của chương trình đối với việc vào/ra mà không thể đoán trước được. các tài nguyên bên trong, ví dụ như bộ nhớ chính và bus hệ thống phải chia sẻ hoạt động chứa việc vào/ra dữ liệu. do đó, chức năng của modun vào ra là điều khiển và điều chỉnh thời gian để phối hợp dữ liệu luân chuyển giữa các tìa nguyên bên trong và các thiết bị bên ngoài. Ví dụ như, việc điều khiển sự truyền dữ liệu một thiết bị bên ngoài tới CPU được thực hiện theo các bước sau:
Nếu hệ thống sử dụng bus thì mỗi một tương tác giữa CPU và modun vào/ra đều chứa một hoặc nhiều phân chia bus( bus arbitration) ( xem chi tiết trang 92) có ví dụ từng chức năng cụ thể. Câu 21: nêu cấu tạo và nguyên lí hoạt động của ổ đĩa cứng:
Các đĩa, động cơ, trục quay, các đầu từ và cơ cấu bộ kích đầu từ được đặt trong một khoang kín được gọi là head disk assembly( HAD). HAD hiếm khi được mở. các thành phần khác bên ngoài của .. trang 82)
Câu 22: cấu tạo và nguyên lí hoạt động của ổ đĩa mềmTrang 84:
Các thành phần cơ bản của ổ đĩa mềm bao gồm:
Câu 23: nêu rõ sự giống và khác nhau về tổ chức logic trên đĩa cứng và đĩa mềm?? chưa làm??
Câu 24: trình bày nguyên lí cấu tạo và hoạt động của bàn phím:( trang 105)
Bàn phím là thiết bị ngoại vi cho phép đưa thông tin vào máy tính dưới dạng mã kí tự. bàn phím thực hiện chức năng chuyển thông tin dạng lực ấn và vị trí của bàn phím được nhấn thành mã phím và chuyển cho máy tính. Bàn phím bao gồm 2 bộ phân chính: ma trận chính và mạch điện tử quét phím:
Hình vẽ
Câu 25: trình bày nguyên lí cấu tạo và hoạt động của chuột máy tính( trang 107)
Chuột máy tính chuẩn gồm các thành phần sau:
Vỏ chuột được làm bằng nhựa. phía trên vỏ, nơi các ngón tay đặt lên là các nút. Số nút có thể tùy ý nhưng thường các con chuột của máy tính PC chỉ có hai nút. Nếu có thêm các nút bổ sung thì có thêm phần mềm đặc biệt để điều khiển hoạt động cả chúng. Phần dưới của vỏ có một hòn bi cao su nhỏ lăn tròn khi di chuyển con chuột. chuyển động của viên bi lăn này này được dịch thành tín hiệu điện và được truyền vào máy tính qua dây cáp. Một số chuột sử dụng bộ cảm quang( optical sensor) đặc biệt để dò sự chuyển động tren khung dưới. chuột quang này không được ưa chuộng do chúng chỉ hoạt động khi ta dùng đệm khung luwosi đặc biệt bên dưới. dây cáp có thể có độ dài tùy ý nhưng thông thường chỉ dài 1,2m đến 1,8 m
Phụ thuộc vào việc chuột máy tính được cấu tạo theo các cơ chế cảm ứng khác nhau:
Trang 109
+ ưu điểm: Do không có các bộ phận cơ nên hoàn toàn không sợ hỏng hóc do ăn mòn hay bụi bẩn Bảo trì cũng rất đơn giản( chỉ cần lau mắt đọc là xong) Độ chi tiết và nhạy cảm của cơ chế cảm ứng quang học cung tốt hơn rất nhiều + nhược điểm: Không thể làm việc trên các bề mặt bóng hoặc trong suốt Hoạt động không chính xác trên các bề mặt sặc sỡ thì chuột hoạt động không chính xác Một số loại chuột rẻ tiền có hệ thống xử lí hình ảnh kém sẽ không đủ khả năng tính toán khi người dùng di chuyển chuột với tốc độ nhanh Tốn điện nhiều hơn chuột cơ
Câu 26: trình bày nguyên lí cấu tạo và nguyên lí hoạt động của màn hình CRT
Câu 27: cấu tạo và nguyên lí hoạt động của màn hình tinh thể lỏng:
R,G và B
Câu 28: trình bày nguyên lí hiện văn bản và hiện đồ họa( trang 115)
Nhấp nháy
Câu 29: trình bày cách phân loại máy in theo kiểu đạp và không đập( trang 116)Máy in là một thiết bị đầu ra cho phép in thông tin trên giấy. có 2 loại máy in chính: máy in kiểu đạp và máy in kiểu không đập
Hiện nay các máy in laser được dùng phổ biến nhất vì độ bền cao, tốc độ nhanh. Các máy in phun, đặc biệt là các máy phun màu cũng bắt đầu thông dụng. Câu 30: trình bày nguyên tắc hoạt động của máy in lazeL trang 118)
Câu 31: trình bày nguyên lí hoạt động của máy in phun( trang 120)
+ công nghệ in phun nhiệt + công nghệ in phun ap
Câu 32: trình bày nguyên lí hoạt động của máy in kim
+ có thể tạo cho phép in nhiều và tạo ra bản sao qua giấy than + bộ đệm nhỏ, chất lượng đồ họa hạn chế, gây tiếng ồn, chất lượng in trung bình và việc nạp giấy đối với loại giấy tờ tương đối bất tiện Câu 33: Đa bộ xử lý là gì? Hãy chỉ ra các đặc điểm chính và hoạt động của đa bộ xử lý.Đa bộ xử lí là: trang 130: Đa bộ xử lí theo làm tăng hiệu suất và khả năng làm viêc của máy tính.
Sơ đồ của đa bộ xử lí:
Mỗi CPU chứa một bộ điều khiển, một bộ số học logic ALU, các thanh ghi và có thể chứa các cache. Mỗi CPU truy cập tới bộ nhớ chính và các thiết bị vào ra(I/O) thông qua một cơ chế kết nối chung. Các bộ xử lí có thể giao tiếp với nhau qua bộ nhớ( các thông báo và thông tin trạng thái nằm vùng dữ liệu chung). Các CPU có thể trao đổi trực tiếp với nhau thông qua đường chấm chấm của hình vẽ trên. Bộ nhớ thường được tổ chức sao cho có thể có nhiều truy nhập đồng thời tới một vài khối nhớ riêng biệt. trong một số cấu hình, mỗi CPU có thể có bộ nhớ chính riêng và các kênh vào ra riêng để bổ sung cho việc chia sẻ dữ liệu. II. các sơ đồ bổ sung:4.3. XỬ LÝ LỆNH (Instruction Processing): Chúng ta đã có một ngôn ngữ cơ bản để truyền đạt ý tưởng tới máy tính, bây giờ chúng ta cần phải thảo luận một cách chính xác về việc máy tính đã thực hiện một chương trình cụ thể như thế nào. Tất cả các máy tính đều hoạt động theo một chu kỳ cơ bản: nạp lệnh, giải mã lệnh, thực hiện chu kỳ. 4.3.1. Nạp lệnh, giải mã lệnh, thực hiện chu kỳ (The Fetch-Decode-Excute Cycle): Chu kỳ Nạp lệnh-giải mã lệnh-thực hiện lệnh là các bước mà một máy tính phải tuân thủ để chạy một chương trình. Trong đó nạp lệnh là bắt đầu mỗi chu kỳ lệnh, CPU nạp một lệnh từ bộ nhớ chính vào các thanh ghi lệnh , giải mã lệnh (xác định mã lệnh và lấy bất kỳ dữ liệu cần thiết để thực hiện các lệnh), và thực hiện lệnh (thực hiện các hoạt động được chỉ thị bởi lệnh đó). Hoạt động chủ yếu của chu trình là sao chép dữ liệu từ nơi này sang nơi khác. Khi một chương trình được thực hiện lần đầu, địa chỉ của lệnh đầu tiên phải được ghi trong bộ đếm. Các bước trong chu kỳ này, diễn ra theo chu trình cụ thể, được liệt kê dưới đây. ( Lưu ý Bước 1 và 2 là giai đoạn nạp lệnh, Bước 3 là giai đoạn giải mã, và Bước 4 là giai đoạn thực hiện).
Quy trình trên được minh họa trong Hình 4.11. Figure 1: Hình 4.11 – Chu kỳ Nạp – Giải mã – Thực hiện lệnh Ghi nhớ rằng các máy tính ngày nay, mặc dù với các bộ lệnh lớn, các dòng lệnh dài và khối lượng thông tin khổng lồ thì vẫn có thể xử lý hàng triệu các quy trình nạp lệnh-giải mã-thưc hiện, tất cả chỉ trong nháy mắt. 4.3.2. Ngắt và Vào/Ra (Interrupts and I/O): Chương 7 đề cập chính đến I/O. Tuy nhiên, chúng ta cần phải thảo luận về một về một vài khái niệm cơ bản của I/O để có thể hiểu được về toàn bộ quá trình của việc thực thi chương trình. MARIE có hai thanh ghi để chứa đầu vào và đầu ra. Thanh ghi đầu vào chứa dữ liệu được chuyển từ thiết bị đầu vào tới máy tính, thanh ghi đầu ra chứa thông tin sẵn sàng để được gửi đến một thiết bị đầu ra. bộ đếm thời gian được sử dụng bởi hai thanh ghi này là rất quan trọng. Ví dụ, nếu bạn đang nhập đầu vào từ bàn phím và gõ rất nhanh, máy tính phải có khả năng đọc mỗi kí tự được đưa vào thanh ghi đầu vào. Nếu ký tự khác được nhập vào thanh ghi khi máy tính chưa kịp xử lý kí hiệu hiện thời, các ký tự hiện tại sẽ bị mất. Có nhiều khả năng, bộ xử lý hoạt động rất nhanh mà đầu vào bàn phím lại rất chậm, bộ xử lý có thể đọc cùng một ký tự từ thanh ghi nhiều lần. Chúng ta phải tránh cả hai trường hợp này. MARIE giải quyết những vấn đề này bằng cách sử dụng phương pháp I/O được điều khiển bởi ngắt (Interrupt – driven I/O). (Thông tin chi tiết về các dạng I/O khác nhau sẽ đc đề cập đến trong Chương 7). Khi CPU thực hiện một lệnh đầu vào hoặc đầu ra, các thiết bị I /O thích hợp sẽ được thông báo. CPU sau đó sẽ tiếp tục các công việc khác cho đến khi thiết bị đã sẵn sàng. Tại thời điểm đó, các thiết bị sẽ gửi một tín hiệu có ngắt đến CPU. CPU xử lý ngắt, sau đó tiếp tục với chu kỳ Nạp-giải mã-thực hiện như bình thường. Quá trình này yêu cầu:
Phương pháp hầu hết máy tính sử dụng để xử lý một ngắt là kiểm tra xem ngắt đó có đang chờ ở đầu mỗi chu kỳ Nạp-giải mã-thực hiện hay không, nếu có, ngắt được xử lý, sau đó chu kỳ được tiếp tục. Nếu không có ngắt thì chu kì hoạt động như bình thường. Quá trình thực hiện được minh họa trong sơ đồ trong Hình 4. Figure 2: Hình 4.12 – Vòng lệnh kiểm tra ngắt Thông thường, các thiết bị đầu vào hoặc đầu ra sẽ gửi một ngắt bằng cách sử dụng một thanh ghi đặc biệt, thanh ghi trạng thái (status register) hoặc thanh ghi mã điều kiện (flag). Một bit đặc biệt được thiết lập để chỉ ra nếu có ngắt. Ví dụ, ngay khi đầu vào được nhập vào từ bàn phím, bit này được thiết lập. CPU kiểm tra bit này ở đầu mỗi chu kỳ máy. Nếu có thì CPU sẽ xử lý ngắt, nếu không thì CPU thực hiện chu kì Nạp-giải mã-thực hiện như bình thường, lệnh trong các chương trình xử lý hiện nay được thực hiện bình thường. Khi CPU tìm thấy các bit ngắt nó thực hiện một thủ tục ngắt được xác định bởi loại ngắt đã xảy ra. Ngắt I/O không phải là phương thức ngắt duy nhất xảy ra khi một chương trình đang được thực hiện. Đã bao giờ bạn gõ một tổ hợp phím Ctrl-break hoặc Ctrl-C để ngừng một chương trình? Đây là ví dụ về một cách ngắt. Ngắt ngoài được tạo ra do ngoại cảnh (như đầu vào / đầu ra hay cúp điện), Ngắt trong được tạo ra bởi một số điều kiện ngoại lệ trong chương trình (chẳng hạn như chia cho 0, tràn , hoặc vi phạm bảo vệ) và Ngắt phần mềm được tạo ra bằng cách thực hiện một lệnh trong chương trình (chẳng hạn một chương trình đòi hỏi chuyển đổi từ việc chạy trong một cấp, chẳng hạn từ cấp độ sử dụng, đến một cấp độ khác, như cấp độ cốt lõi). Loại ngắt nào cũng có quá trình xử lý như nhau. Sau khi CPU chấp nhận một yêu cầu ngắt, địa chỉ của chương trình ngắt được xác định (thường là do phần cứng) và các routine (rất giống như một thủ tục) được thực hiện. CPU chuyển từ chạy chương trình sang chạy một thủ tục đặc biệt để xử lý ngắt. Chu kỳ nạp-giải mã-thực thi được chạy trên các lệnh trong chương trình ngắt cho đến khi đoạn mã được hoàn thành. CPU sau đó quay lại chương trình nó đang chạy trước khi có ngắt xảy ra. CPU phải quay lại điểm chính xác mà nó đã chạy trong chương trình ban đầu. Do đó, khi CPU chuyển sang các chương trình ngắt, nó phải lưu các nội dung có trong PC, nội dung của tất cả các thanh ghi khác trong CPU, và các điều kiện trạng thái của chương trình ban đầu. Khi các chương trình phục vụ ngắt kết thúc, CPU phục hồi môi trường mà trong đó chương trình ban đầu đã được thực thi, và sau đó bắt đầu nạp, giải mã, và thực hiện các lệnh cho các chương trình ban đầu. Phần 2: hệ điều hành:Câu 1:Chương 3,4: SPOOL: Smultaneous Peripheral Operation On line (tr 332) B-Virus: Boot Virus(361) DB-Virus: Double B-Virus BPB: BIOS Parameter Block (362) bảng tham số đĩa FAT: File Allocation Table: bảng định vị tệp (362) F- Virus: File Virus (363) DR0: Debug Register 0 (371) Câu 2: Hãy nêu khái niệm hệ điều hành theo cách nhìn của các đối tượng làm việc với máy tính.( trang 152)
Khái niệm hđh Hệ điều hành là một chương trình hay một hệ chương trình hoạt động giữa người sử dụng (user) và phần cứng của máy tính. Mục tiêu của hệ điều hành là cung cấp một môi trường để người sử dụng có thể thi hành các chương trình. Nó làm cho máy tính dể sử dụng hơn, thuận lợi hơn và hiệu quả hơn. Câu 3: Cách phân loại HĐH theo chức năng (tr153)3 cách:
Câu 4: Hãy trình bày cách phân loại hệ điều hành theo tiêu chuẩn ứng dụng, nêu tóm tắt đặc điểm của từng loại. (154)5 loại:
Câu 5: Các chức năng chính và các thành phần của hệ diều hành
+ các supervisors quản lý nhiệm vụ, quản lý tiến trình + các suprevisors quản lý tào nguyên như bộ nhớ chính, bộ nhớ phụ + các chương trình quản lý dữ liệu và tổ chức truy nhập + các chương trình thư ký, điều phối nhiệm vụ.
+ các chương trình biên tập + các chương trình dịch + các chương trình dịch vụ: tạo môi trường mới, biên bản, thống kê,.. Câu 6: Một hệ điều hành cần có những tính chất gì? (trang 168)
+ do chi phí có hạn nên ko thể cung cấp cho từng người sử dụng các tài nguyên riêng biệt + do mong muốn sử dụng tối đa những gì đã có. + do cần thiết phải sử dụng chung 1 cơ sở dữ liệu cho các chương trình khác nhau và cho những ng sử dụng khác nhau. + do muốn tránh được các dư thừa, ví dụ việc phân chia 1 bản sao của 1 chương trình dịch giữa nhiều người sử dụng sẽ kinh tế hơn nhiều so với việc cung cấp cho mỗi ng 1 bản sao riêng.
1 HDH phải có hoạt động hiệu quả. Các tiêu chuẩn để xét tới khi đánh giá tính hiệu quả của 1 HDH:
Đảm bảo tính chất thừa kế sẽ duy trì và phát triển đội ngũ ng sử dụng-1 yếu tố quan trọng để HDH tồn tại. Nó phải đảm bảo sao cho những chương trình đã chạy được các phiên bản cũ nay cũng phải chạy được với phiên bản mới, kế thừa các ưu điểm cũ và thích nghi với các yêu cầu mới. vị trí hệ điều hành chiếm chỗ trong bộ nhớ trung tâm or trong bộ nhớ ngoài phải nhỏ, bởi vì theo quan niệm của người dùng đây là vùng nhớ bị mất. Câu 7: Nêu các nguyên tắc khi xây dựng một hệ diều hành.
+ Xây dựng từ các Modul độc lập quan hệ với nhau về mặt dữ liệu + Tồn tại cơ chế liên kết các Modul độc lập thành 1 tổ chức thống nhất
Một công việc của HĐH có thể được thực hiện bằng nhiều phương tiện khác nhau cho phép user chọn giải pháp tối ưu với bài toán của mình VD: Khi in tệp f1.txt có các giải pháp: C:\>COPY f1.txt PRN C:\>TYPE f1.txt >PRN C:\>PRINT f1.txt
+ Xây dựng các phiếu yêu cầu + Liệt kê các bước phải thực hiện + Xây dựng các chương trình tương ứng – Nguyên tắc bảng tham số điều khiển – Nguyên tắc bảng giá trị chuẩn: + Hệ thống chuẩn bị sẵn các bảng giá trị cho các tham số điều khiển + Khi thực hiện nếu trong các câu lệnh còn thiếu những tham số giá trị thì hệ thống sẽ lấy giá trị tương ứng ở bảng giá trị chuẩn để thực hiện VD: C:\BT> DIR Xem ổ đĩa nào: C Thư mục nào: BT Cái gì: mọi thư mục con, tệp trong thư mục này và không bị che Như thế nào: đầy đủ thông tin, liên tục theo dữ liệu Ra đâu: thiết bị chuẩn Tham số: mọi tham số
+ Là loại tham số mà ý nghĩa của nó xác định bởi vị trí xuất hiện trong bảng tham số + Đứng đầu dòng tham số
+Là loại tham số mà ý nghĩa xác định bằng từ khóa VD: C:\>DIR A:/w/a/p C:\>DIR A:/a/p/w A: là tham số vị trí /w, /a hay /p là tham số khoá Nguyên tắc bảo vệ nhiều mức
+ Các Modul được viết theo địa chỉ tương đối kể từ đầu bộ nhớ + Khi thực hiện chúng được định vị tại vùng nhớ xác định nên địa chỉ này sẽ thay đổi tương ứng
Câu 8: Thế nào là tiến trình, các tính chất, trạng thái và cách phân loại tiến trình. Trình bày về sơ đồ chuyển trạng thái của tiến trình.
Tiến trình là một chương trình đang trong quá trình thực hiện Tiến trình được sinh ra khi chương trình được tải vào bộ nhớ để thực hiện Tiến trình người dùng Tiến trình hệ thống Cần phân biệt hai khái niệm chương trình và tiến trình. Một chương trình là một thực thể thụ động, chứa đựng các chỉ thị điều khiển máy tính để tiến hành một tác vụ nào đó ; khi cho thực hiện các chỉ thị này, chương trình chuyển thành tiến trình, là một thực thể hoạt động, với con trỏ lệnh xác định chỉ thị kế tiếp sẽ thi hành, kèm theo tập các tài nguyên phục vụ cho hoạt động của tiến trình.
– Tiến trình tuần tự: Hai hay nhiều tiến trình gọi là tuần tự khi điểm kết thúc của tiến trình này là sự bắt đầu của tiến trình khác. – Tiến trình song song Điểm bắt đầu của tiến trình này nằm giữa điểm bắt đầu và kết thúc của tiến trình khác. – Tiến trình có quan hệ thông tin Trao đổi thông tin qua một vùng nhớ được biểu diễn như một hộp thư có thể trao đổi thông tin qua đó. -Tiến trình độc lập Hai hay nhiều tiến trình gọi là độc lập khi chúng không có quan hệ thông tin với nhau, hoạt động của tiến trình này không ảnh hưởng đến hoạt động của tiến trình khác và ngược lại. -Tiến trình cha và tiến trình con Một tiến trình được sinh ra từ một tiến trình khác thì được gọi là sự phân cấp của tiến trình hay được gọi là tiến trình cha và tiến trình con -Tiến trình đồng mức Thể hiện các tiến trình đó truy nhập tài nguyên dung chung theo nguyên tắc lần lượt.
Phân biệt theo 2 trạng thái: chạy và không chạy => Không phản ánh đầy đủ thông tin về trạng thái tiến trình => Mô hình 5 trạng thái: mới khởi tạo, sẵn sàng, chạy, chờ
Tại một thời điểm, chỉ có một tiến trình được nhận trạng thái thực hiện trên một bộ nhớ xử lí bất kì. Trong khi đó, nhiều tiến trình có thể có trạng thái sẵn sàng hay chờ. Các đường chuyển tiếp trong sơ đồ trạng thái biểu diễn sáu sự chuyển trạng thái có thể xảy ra trong các điều kiện sau:
Câu 9: khái niệm bộ xử lý-shell ( trang 199)Bộ xử lý là 1 cơ chế nào đó thực hiện các lệnh Shell là 1 bộ phận hay 1 tiến trình đặc biệt của hệ điều hành, nó có nhiệm vụ nhận lệnh của người sử dụng, phân tích lệnh và phát sinh tiến trình mới để thực hiện yêu cầu của lệnh, tiến trình mới này được gọi là tiến trình đáp ứng nhu cầu. Shell nhận lệnh thong qua cơ chế dòng lệnh, đó chính là nơi giao tiếp giữa người sử dụng và hệ điều hành, mỗi hđh khác nhau có cơ chế dòng lệnh khác nhau, với MS_DOS đó là con trỏ lệnh và dấu nhắc hệ điều hành (C:\>_), với win 9x đó là nhấn start chọn run…. Trong hệ điều hành đơn nhiệm (MS-DOS) khi tiến trình đáp ứng yêu cầu hoạt động thì Shell sẽ chuyển sang trạng thái chờ, để chờ cho đến khi tiến trình đáp ứng yêu cầu kết thức thì shell trở lại trạng thái sẵn sàng nhận lệnh mới Trong môi trường hệ điều hành đa nhiệm (vd window 9x) sau khi phát sinh tiến trình đáp ứng yêu cầu và đưa nó vào trạng thái hoạt động thì Shell sẽ chuyển sang trạng thái sẵn sang nhận lệnh mới, giúp Shell có khả năng tạo nhiều tiến trình đáp ứng yêu cầu để nó hoạt động song song => người sử dụng có thể khởi tạo nhiều chương trình để hoạt động đồng thời Hầu hết các ngôn ngữ lập trình đều hỗ trợ các công cụ để người sử dụng có thể gọi Shell ngay trong các ứng dụng của họ ( vd : trong window 9x khi 1 ứng dụng cần gọi thực hiện 1 chương trình nào đó thì nó gọi hàm Shell execut ) 1 tiến trình được thực hiện bởi 1 bộ xử lý, như vậy bộ xử lý là nơi thực hiện các lệnh. Tùy theo bản chất của các lệnh mà bộ xử lý phải được thiết lập hoàn toàn từ phần cứng hay gồm tổ hợp giữa các phần cứng và phần mềm. Vd: CPU+chương trình biên dịch BASIC tạo nên bộ xử lý để thực hiện các lệnh trong BASIC Các khái niệm về tiến trình và bộ xử lý phải thể hiện được tính đặc trưng đồng thời và đặc trưng vô định Tính đồng thời là khả năng có thể thực hiện được nhiều chương trình trong 1 lúc ( vì số bộ xử lý thường ít hơn số lượng tiến trình ). Tính đồng thời có thể đạt được bằng cách chuyển bộ xử lý đang được dung cho 1 tiến trình này sang để dùng cho 1 tiến trình khác Tính vô định : nếu xét tiến trình như 1 dãy các thao tác có thể bị ngắt thì tính vô định thể hiện ở sự không dự kiến trước được thời điểm xuất hiện của các ngắt cũng như ở sự không dự kiến trước được hậu quả của các ngắt. Khi có ngắt xuất hiện, thực hiện của tiến trình bị đình chỉ, bộ xử lý cất giữ các thong tin cần thiết về tiến trình rồi thực hiện xử lý ngắt Tóm lại 1 tiến trình là 1 dãy các thao tác xét về mặt hiện tượng về cơ bản là động, trong khi 1 chương trình là 1 dẫy lệnh, nó là 1 tập hợp tĩnh. 1 bộ xử lý là 1 đơn vị thực hiện các tiến trình. Tính đồng thời và vô định có thể được mô tả ở sự chuyển mạch của bộ xử lý giữa các tiến trình và ở dạng ngắt giữa các thao tác. Câu 10: Mục đích, chức năng và thành phần của nhân hệ diều hành (tr 202-204)
Câu 11: Giới thiệu về chương trình mức đầu của Ngắt (204)Ngắt có 2 nhiệm vụ:
Câu 12: Trình bày về chương trình lập biểu phân phối cho các hệ điều hành. (205)– Chương trình lập biểu phân phối (Dispatcher) có nhiệm vụ phân phối đơn vị trung tâm (CPU) cho các tiến trình khác nhau trong hệ thống. Chương trình này quyết định chương trình nào được thi hành tiếp theo và biết khi nào thì kết thúc vào\ra. Mục tiêu của chương trình lập biểu phân phối: – Sự công bằng: Các tiến trình chia sẻ CPU 1 cách công bằng. – Tính hiệu quả: Hệ thống phải tận dụng được CPU 100% thời gian hoạt động. – Thời gian đáp ứng nhỏ nhất: Tối thiểu hóa thời gian hỏi đáp cho các tương tác của người sử dụng. – Thời gian lưu lại hệ thống ngắn nhất: Bộ phận điều phối phải cực tiểu hóa thời gian trả lời của các tiến trình để tính tương tác của tiến trình tăng lên. – Thông lượng tối đa: Chính sách điều phối phải cố gắng để cực đại được số lượng tiến trình hoàn thành trên 1 đơn vị thời gian. Các đặc tính của tiến trình: Một số đặc tính của tiến trình cần quan tâm như là tiêu chuẩn để HĐH điều phối các hoạt động của tiến trình.
Cơ chế lập biểu phân phối của HĐH: HĐH có thể thực hiện cơ chế lập biểu phân phối theo nguyên tắc độc quyền hoặc không độc quyền.
=> Đơn giản, dễ cài đặt nhưng không thích hợp với hệ thống nhiều người dùng. – Lập biểu phân phối không độc quyền: cho phép tạm dừng tạm dừng một tiến trình đang sẵn sàng xử lý. Xảy ra trong các trường hợp:
Đồng hồ ngắt HĐH sử dụng đồng hồ ngắt giờ và quy định một thông số thời gian thích hợp với lượt cấp phát CPU cho 1 tiến trình. Cơ chế ngắt giờ cho phép thực hiện tương tác tự nhiên với nhiêu người dùng, ngăn chặn hệ thống bị quẩn trong 1 tiến trình của người dùng vì vòng lặp vô hạn. Độ ưu tiên của tiến trình: Là 1 giá trị giúp phân định tầm quan trọng của tiến trìn để HĐH điều phối tiến trình 1 cách hợp lý. – Các loại:
Câu 13: Chương trình phải có cấu trúc như thế nào để hệ diều hành có thể nhận biết và xử lý được chúng. Ưu, nhược điểm của từng loại cấu trúc.( trang 215)Chương trình có các loại cấu trúc sau:
Các modun, thư viện được dịch thành 1 modun duy nhất chứa đầy đủ các thông tin để chương trình có thể hoạt động độc lập được. khi thực hiện chương trình HĐH nạp toàn bộ chương trình vào bộ nhớ. Ưu điểm: – Cấu trúc đơn giản, dễ viết, không yêu cầu sự hiểu biết cao của ng lập trình và có nhiều ngôn ngữ lập trình sử dụng cấu trúc này. Nó cho ra tệp tin thi hành có tính độc lập cao, có tốc độ thực hiện chương trình cao vì chỉ cần nạp 1 lần. – Tính lưu động cao. – Cho phép dịch chuyển và chạy đc giữa các hệ thống, dễ dàng thương mại hóa, bảo trì dễ dàng, thời gian thực hiện nhỏ nhất. Nhược điểm: – Tốn bộ nhớ do kích thước cua chương trình sẽ tăng lên sau khi biên dịch. – Có những modun, những thư viện chỉ được chương trình sử dụng 1 lần nhưng lại chiếm bộ nhớ ngay từ đầu nạp vào và chỉ bị đưa ra khi kết thúc chương trình.
Chương trình bao gồm 1 modunle chính và nhiều module khác ( có thể xem các thư viện được gọi trong chương trình cũng là các module của chương trình). Các module chương trình được biên tập 1 cách riêng rẽ, khi thực hiện chương trình sẽ nạp module gốc vào sau đó vào trong bộ nhớ. Ưu điểm: Tiết kiệm bộ nhớ Nhược điểm: – Thời gian thực hiện 1 chương trình lớn ( vừa thực hiện vừa tiến hành nạp, xóa,…) – Yêu cầu ng sử dụng phải nắm vững hệ thống. – Kém lưu động, tốc độ thực hiện sẽ chậm hơn so với cấu trúc tuyến tính vì nó không đc nạp tất cả vòa bộ nhớ. – Cần phải nhiều ngôn ngữ lập trình hỗ trợ.
Các module chương trình được chia thành từng mức, module gốc được đưa vào mức 0 để nạp và định vị chương trình, mức 1 đc gọi từ module mức 0 và không cần tồn tại đồng thời, mức 2 được gọi từ mức 1 và không cần tồn tại đồng thời. Bộ nhớ để dành để chứa chương trình được chia thành từng phần: – Số phần chính bằng số mức của cấu trúc chương trình. – Mỗi phần chứa các module đông mức có kích thước đúng bằng kích thước của module lớn nhất đồng mức trong phần đó. – Các module trong cùng 1 mức không cần có kích thước giống nhau. Các thông tin phụ: số mức của chương trình, các module nằm trong từng mức, kích thước của các module được lưu vào tệp sơ đồ phủ lắp. Khi thực hiện chương trình, hệ thống nạp module gốc vào mức 0, khi cần 1 module nào khác thì lại nạp nó vào mức tương ứng mức trong bộ nhớ. Nếu trong mức bộ nhớ tương ứng đã có 1 module nào khác thì đưa module ấy ra ngoài. Các module trong cùng 1 lớp k thể gọi lẫn nhau. Ưu điểm: tiết kiệm được bô nhớ nhiều hơn so với cấu trúc động nếu các module có cấu trúc hợp lý. Nhược điểm: – Tốc độ chậm hơn cấu trúc đông. – Có thể phải dành hiều bộ nhớ phần dành cho chương trình. – Không thể gắn cố định cấu trúc vào chương trình nguồn. – Phức tạp hơn với người sử dụng. – Nếu tang kích thước của bộ nhớ vật lý thì hiệu quả vẫn k thay đổi.
Các module chương trình được biên dịch thành các module riêng rẽ như trong cấu trúc động và được gọi là đoạn (segmet) chương trình. Bộ nhớ chia thành các k gian nhớ có kích thước k bằng nhau, tương ứng với kích thước của đoạn chương trình, được gọi là phân đoạn bộ nhớ. Khi thực hiện các chương trình, HĐH có thể nạp tất cả các đoạn mã của chương trình vào tại các phân đoạn liên tiếp or k liên tiếp nhau trên bộ nhớ. Hệ điều hành cũng có thể nạp 1 vài đoạn cần thiết ban đầu vào bộ nhớ, sa đó nạp các đoạn tiếp theo nếu cần. Hệ điều hành phải xây dựng các đoạn để biết địa chỉ cơ sở và độ dài của phân đoạn và thực hiện điều khuyển vào ra các đoạn vào bộ nhớ. Ưu điểm : – Không yêu cầu cao về người lập trình. – Tiết kiệm đc bộ nhớ. – Thể hiện đc cách nhìn của ng lập trình về chương trình của họ. Nhược điểm : – Tốn thêm bộ nhớ để chứa bảng phân đoạn SCT của chương trình. – Làm chậm tốc độ truy xuất dữ liệu trên bộ nhớ vì phải thông qua bảng điều khuyển đoạn SCT.
Các module chương trình được biên dịch thành 1 module duy nhất như trong cấu trúc tuyến tính, nhưng sau đó dduocj chia thành các phần có kích thước bằng nhau được gọi là các trang chương trình. Bộ nhớ chia thành các phàn kích thước bằng nhau và bằng với kích thước các trang chương trình được gọi là các khung trang. Khi thực hiện chương trình, HĐH có thể nạp tất cả các trang của chương trình vào tại các khung trng liên tiếp or k liên tiếp nhau trên bộ nhớ or nạp 1 vài trang cần thiết ban đầu vào bộ nhớ, sau đó nạp các trang tiếp theo nếu cần. Các bảng điều khuyển trang cho biết được 1 trang đã đc nạp vào bộ nhớ hay chưa, nếu đã đc nạp vào rồi thì đc chứa ở khung trang nào. Trong quá trình điều khuyển chương trình HĐH dự vào bảng điều khuyển tranh PCT để thực hiện các truy xuất và nạp thêm các đoạn mới vào bộ nhớ. Ưu điểm : không yêu cầu cao ng lập trình, tiết kiệm đc bộ nhớ, Nhược điểm : – Tốn bộ nhớ để chứa bảng điều khuyển trang PCT của chương trình. – Làm chậm tốc độ truy xuất dữ liệu trên bô nhớ vì phải thông qua bảng điều khuyển trang PCT – Không thể hiện đc cách nhìn của ng lập trình về chương trình của họ. Câu 14 : Trình bày những nhiệm vụ của hệ điều hành để quản lý bộ nhớ.(Trang 221)
– HĐH phải có các cơ chế để ghi lại tất cả các thông tin liên quan đến 1 chương trình bị đưa ra ngoài. Các thông tin này là cơ sở để hệ điều hành đưa vào lại swap-in chương trình vào lại bộ nhớ chính và cho nó liên tục hoạt động. – Sau khi đưa ra ngoài 1 chương trình HĐH phải tổ chức lại bộ nhớ để chuẩn bị nạp tiến trình vừa có yêu cầu. – HĐH phải có khả năng chuyển đổi các địa chỉ bộ nhớ được ghi trong code của chương trình thành các đĩa địa chỉ vật lý thực tế trên bộ nhớ chính khi chương trình thực hiện các thao tác truy xuất trên bộ nhớ.
– Khi nhiều tiến trình cùng chiếm chỗ trong bộ nhớ, HĐH phải đảm bảo k 1 tiến trình nào đc xâm phạm vùng bộ nhwos đã dành cho tiến trình khác. – Cơ chế bảo vệ phải thiết lập đc 1 danh sách giữa các tiến trình khác nhau có trong hệ thông. – Việc bảo vệ này là bảo vệ chống lỗi và bảo vệ chống ác ý.
– Cho phép nhiều tiến trình có thể truy cập đến cùng 1 địa chỉ trên bộ nhwos chính. Các tiến trình đồng thwucj hiện (co-operating) trên 1 vài tác vụ có thể cần để chia sẻ truy cập đến cùng 1 cấu trúc dữ liệu. – Điều khuyển việc truy cập đến không gian bộ nhớ đc chia sẻ mà k vi phạm đến các yêu cầu bảo vệ bộ nhớ. – Trong môi trường HĐH đa nhiệm, HĐH phải chia sẻ k gian nhớ cho các tiến trình đã đc nạp vào bộ nhớ để chúng có thể hoạt động đồng thời với nhau.
– Các chương trình có thể viết thành các đoạn độc lập với nhau, mỗi khi chương trình thực hiện, nó chỉ gọi đoạn cần thiết vào bộ xử lý để thực hiện. – Sử dụng bộ xủa lý ít nhưng vẫn đảm bảo cung caaos được các mức bảo vệ khác nhau. – Có thể đưa vào 1 cơ chế cho phép phân chia các đonạ (segmentation) giữa các bộ xử lý.
Câu 15: Trình bày cơ chế phân chương cố định và phân chương động để quản lý bộ nhớ
Bộ nhớ được chia thành n phần, kích thước các phần không nhất thiết phải bằng nhau, mỗi phần sử dụng một bộ nhớ độc lập. Mỗi phần có thể nạp một chương trình và tổ chức thực hiện đồng thời. Vì mỗi phần được coi là một bộ nhớ độc lập, nên các chương trình sẽ có một danh sách quản lý không gian nhớ tự do riêng. Chương trình được nạp vào phần nào thì sẽ ở đó cho đến khi kết thúc. – Ưu điểm: Đơn giản, dễ tổ chức, giảm thời gian tìm kiếm – Nhược điểm: Lãng phí bộ nhớ và xảy ra hiện tượng phân mảnh nội vi
Bộ nhớ có một bảng quản lý không gian nhớ tự do thống nhất. Khi thực hiện chương trình, hệ thống dựa vào kích thước chương trình để phân bổ không gian nhớ thích hợp tạo thành một vùng nhớ độc lập và tạo bảng quản lý riêng. Khi các chương trình kết thúc, bộ nhớ dành cho chương trình sẽ bị thu hồi. – Ưu điểm: Tận dụng được không gian nhớ tự do. – Nhược điểm: Không gây ra hiện tượng phân mảnh nội vi nhưng lại xuất hiện phân mảnh ngoại vi.
HĐH chia không gian nhớ thành các khối nhớ bằng nhau (block) và quản lý theo danh sách liên kết hoặc quản lý bẳng bảng các bit Câu 16: Phân biệt sự giống và khác nhau giữa phương pháp phân trang và phân đoạn trong việc quản lý bộ nhớ của hệ điều hành.Giống nhau:
Câu 17: Phân biệt sự giống và khác nhau giữa hệ thống đa chương phân vùng đọng và phân vùng tĩnh:
Tại thời điểm ban đầu lỗ hỗng lớn nhất,sau đó phân phối cho tiến trình 1 vùng nhớ liên tục đủ để thực hiên tiến trình và vùng bộ nhớ này dc độc lập.Toàn bộ bộ nhớ chỉ coa 1 danh sách quản lí bộ nhớ tự do thống nhất,sau 1 khoảng thời gian thì xảy ra hiện tượng tồn tại 1 tập các lỗ hỗng .Khi 1 tiến trình yêu cầu tới bộ nhớ thì HĐH sẽ kiểm tra xem trong tập các lỗ hổng đó có lỗ hỗng nào đủ lớn hay không Trong hệ thống đa chương ,sử dụng sự phân vùng động ,nếu có tiến trình mới cần nạp vào bộ nhớ ,trong khi bộ nhớ không còn chỗ trống và tất cả ácc tiến trình trên bộ nhớ đều ở trạng thái khóa thì hệ thống phải đợi cho đến khi có 1 tiến trình dc chuyển sang trạng thai không bị khóa… Câu 18: Giải thích các cơ chế quản lý hàng đợi trong hệ thống đa chương với phân vùng cố định. Chỉ ra ưu điểm và nhược điểm của từng cơ chế quản lý hàng đợi.Việc đưa 1 tiến trình vào phân vùng trong hệ thống đa chương với phân vùng cố định kích thước không bằng nhau sẽ phức tạp hơn nhiều so với trường hợp các phân vùng có kích thứoc bằng nhau.Với các phân vùng có kích thước không bằng nhau thì có 2 cách để lựa chọn khi đưa 1 1tiến trình vào phân vùng:
Câu 19: Thế nào là hiện tượng phân mảnh trong, phân mảnh ngoài ở bộ nhớ và cách hệ điều hành khắc phục những vùng phân mảnh này.(sgk-230)Trả lời:
Câu 20: Trình bày cơ chế phân trang để quản lý bộ nhớ (sgk-233->237)
Câu 21: Trình bày cơ chế phân đoạn để quản lý bộ nhớ (segmentation)(trang 237) Trong kỹ thuật này, không gian địa chỉ bộ nhớ vật lý được chia thành các phần cố định có kích thước không bằng nhau, được đánh số bắt đầu từ 0, được gọi là các phân đoạn (segment). Mỗi phân đoạn bao gồm số hiệu phân đoạn và kích thước của nó. Không gian địa chỉ của các tiến trình, kể cả các dữ liệu liên quan cũng được chia thành các đoạn khác nhau và không nhất thiết phải có kích thước bằng nhau. Khi một tiến trình được nạp vào bộ nhớ thì tất cả các đoạn của nó sẽ được nạp vào các phân đoạn còn trống khác nhau trên bộ nhớ. Các phân đoạn này có thể không liên tiếp nhau. Để theo dõi các đoạn của các tiến trình khác nhau trên bộ nhớ, HĐH sử dụng các bảng phân đoạn tiến trình, thông thường một tiến trình có một bảng phận đoạn riêng. Mỗi phần tử trong bảng phân đoạn gồm tối thiểu 2 trường:
Các bảng phân đoạn có thể được chứa trong các thanh ghi nếu kích thước nhỏ, nếu kích thước bảng phân đoạn lớn thì nó được chứa trong bộ nhớ chính, khi đó HĐH sẽ sử dụng 1 thanh ghi để lưu trữ địa chỉ bắt đầu nơi lưu trữ bảng phân đoạn, thanh ghi này được gọi là thanh ghi cơ sở bảng phân đoạn STBR: Segment Table Base Register. Ngoài ra, vì số lượng các đoạn của một chương trình/tiến trình có thể thay đổi nên HĐH dùng thêm thanh ghi độ dài bảng phân đoạn STLR: Segment Table Length Register, để ghi kích thước hiện tại của bảng phân đoạn. HĐH cũng tổ chức một danh sách riêng để theo dõi các phân đoạn segment còn trống trên bô nhớ. Câu 22: Kể tên các phương pháp cấp phát bộ nhớ trong việc quản lý bộ nhớ của hệ điều hành. Nêu ngắn gọn bản chất và các thuật toán được sử dụng trong từng phương pháp.Trả lời: (trang 238) Các phương pháp cấp phát bộ nhớ:
PP thế chỗ bao gồm việc chọn các khối thông tin để đẩy ra khỏi bộ nhớ phụ khi cần phải tạo ra chỗ trong bộ nhớ chính cho các khối mới. Một cách lý tưởng, làm sao đẩy ra khỏi bộ nhớ một khối chưa cần dùng đến trong một tương lai khá xa. Nhưng thực tế là chỉ có thể ngoại suy tương lai theo quá khứ. Thực tế có 3 kiểu thuật toán:
Mục tiêu chính là đẩy ra khỏi bộ nhớ đoạn ít có khả năng dùng tới trong một tương lai gần. Như vậy, có thể áp dụng 3 kiểu thuật toán như trường hợp có phân trang, nhưng cần lưu ý rằng kích thước các đoạn là không bằng nhau và đoạn cần đẩy ra khỏi bộ nhớ chính vào bộ nhớ phụ phải bằng đoạn cần xếp chỗ. Thuật toán đơn giản là chọn đoạn mà khi giải phóng nó cùng với các chỗ trống kế cận sẽ tạo đủ chỗ cho đoạn mới tới. Khi có nhiều đoạn thỏa mãn thuật toán thì chọn đoạn thỏa mãn một trong 3 kiểu thuật toán đã mô tả. nếu không có đoạn nào mà giải phóng đủ chỗ thì giải phóng nhiều đoạn.
Câu 23: Trình bày việc cấp phát bộ nhớ bằng phương pháp nạp trong việc quản lý bộ nhớ của hệ điều hành.(239)Các phương pháp nạp bao gồm việc xác định thời điểm cần thiết nạp một khối thông tin từ bộ nhớ phụ vào bộ nhớ chính. Các phương pháp nạp được phân chia làm 2 loại: nạp theo yêu cầu và nạp trước thời hạn. Các phương pháp nạp theo yêu cầu là dễ thực hiện hơn. Sự thiếu 1 khối sẽ phát sinh một lỗi và tạo một yêu cầu nạp, kế đó phương pháp xếp hoặc thế chỗ sẽ cấp phát bộ nhớ cho khối mới. Các phương pháp nạp trước thời hạn dựa trên một phỏng đoán tương lai căn cứ vào 2 yếu tố: + Bản sắc xây dựng các chương trình. + Hoạt động của tiến trình trong quá khứ. Câu 24: Trình bày việc cấp phát bộ nhớ bằng phương pháp thế chỗ cho hệ phân trang và hệ không phân trang trong việc quản lý bộ nhớ của hệ điều hành.
Thực tế có 3 kiểu thuật toán:
Thuật toán đơn giản là chọn mà khi giải phóng nó cùng với các chỗ trống kế cận sẽ tạo đủ chỗ cho đoạn mới tới. Khi có nhiều đoạn thỏa mãn thuật toán thì chọn thỏa mãn một trong 3 thuật toán đã mô tả( vd: chọn đoạn lâu chưa đc sd). Nếu không có đoạn nào mà giải phóng đủ chỗ thì giải phóng nhiều đoạn. Câu 25: Trình bày việc cấp phát bộ nhớ bằng phương pháp xếp chỗ cho hệ phân trang và hệ không phân trang trong việc quản lý bộ nhớ của hệ điều hành.phương pháp thế chỗ cho hệ phân trang: phương pháp thế chỗ bao gồm việc chọn các khối thông tin để đẩy ra khỏi bộ nhớ phụ khi cần phải tạo ra chỗ trong bộ nhớ chính cho các khối mới. một cách lý tưởng, làm sao đẩy ra khỏi bộ nhớ một khối chưa cần dùng đến trong một tương lai khá xa. Nhưng thực tế là chỉ có thể là ngoại suy tương lai theo quá khứ. Thực tế có ba kiểu thuật toán: * Tìm khối lâu chưa được sử dụng đến. * Tìm khối ít được sử dụng thường xuyên. * Tìm khối gọi vào bộ nhớ cũ (có thể khối này lại được sử dụng thường xuyên) -phương pháp thế chỗ cho hệ không phân trang. Mục tiêu chính là giống như các hệ phân trang, tức là đẩy ra khỏi bộ nhớ đoạn ít có khả năng dùng tới trong một tương lai gần. như vậy, có thể áp dụng ba kiểu thuật toán như trường hợp có phân trang, nhưng cần lưu ý rằng kích thuwocs các đoạn là không bằng nhau và đoạn cần đẩy ra khỏi bộ nhớ chính vào bộ nhớ phụ phải đúng bằng đoạn cần xếp chỗ. Thuật toán đơn giản là chọn mà khi giải phóng nó cùng với các chỗ trống kế cận sẽ tạo đủ chỗ cho đoạn mới tới. khi có nhiều đoạn thỏa mãn thuật toán thì chọn đoạn thuật toán thỏa mãn 1 trong 3 kiểu đã mô tả. nếu khồn có đoạn nào mà giải phóng đủ chỗ thì giải phóng nhiều đoạn. Mục tiêu chính là giống như các hệ phân trang, tức là đẩy ra khỏi bộ nhớ đoạn ít có khả năng dùng tới trong một tương lai gần. như vậy, có thể áp dụng ba kiểu thuật toán như trường hợp có phân trang, nhưng cần lưu ý rằng kích thuwocs các đoạn là không bằng nhau và đoạn cần đẩy ra khỏi bộ nhớ chính vào bộ nhớ phụ phải đúng bằng đoạn cần xếp chỗ. Thuật toán đơn giản là chọn mà khi giải phóng nó cùng với các chỗ trống kế cận sẽ tạo đủ chỗ cho đoạn mới tới. khi có nhiều đoạn thỏa mãn thuật toán thì chọn đoạn thuật toán thỏa mãn 1 trong 3 kiểu đã mô tả. nếu khồn có đoạn nào mà giải phóng đủ chỗ thì giải phóng nhiều đoạn. Câu 26: Các thiết bị vào ra khác nhau ở những điểm gì? (Tr. 251)Các thiết bị vào ra khác nhau ở các đặc điểm sau đây:
Câu 27: Trình bày mục tiêu thiết kế điều khiển các vào ra của hệ điều hành: (Tr-256)Là che giấu được những đặc thù của các thiết bị ngoại vi phần cứng đối với người sử dụng hệ thống tính toán mà thay vào đó thay vào đó là một lớp thân thiện với người sử dụng để người sử dụng dẽ thao tác. Một hệ thống vào ra bao gồm:
Câu 28: Trình bày các mục tiêu thiết kế để quản lý tệp
Câu 29: Có mấy phương pháp cấp phát block cho một tệp trên đĩa? Hãy cho biết nguyên tắc cơ bản và cho ví dụ minh họa về phương pháp Cấp phát liên tục (contiguous allocation)
Các block tệp được lưu trữ tại các block đĩa liên tục nhau.
+ chỉ có thể được sử dụng với các tệp có kích thước cố định, hoặc với các tệp mà HĐH biết trước được kích thước tối đa của tệp. + có thể dẫn đến hiện tượng phân mảnh trên đĩa, làm chận tốc độ đọc tệp của HĐH. Ví dụ:1 block đĩa là 1K thì 1 tệp 50K sẽ được lưu trữ tại 50 block liên tiếp nhau trên đĩa. Câu 30: Có mấy phương pháp cấp phát block cho một tệp trên đĩa? Hãy cho biết nguyên tắc cơ bản và cho ví dụ minh họa về phương pháp Cấp phát theo danh sách liên kết (linked list allocation)
Sử dụng 1 danh sách liên kết cac block đĩa để chứa nội dung của 1 tệp, kích thước của block tệp 1 từ.
+ khai thác tối đa không gian đĩa +HĐH chỉ cần biết block đĩa đầu tiên chứa tệp là có thể đọc được toàn bộ nội dung của tệp.
(hình ảnh)
Câu 31: Có mấy phương pháp cấp phát block cho một tệp trên đĩa? Hãy cho biết nguyên tắc cơ bản và cho ví dụ minh họa về phương pháp Cấp phát theo danh sách liên kết sử dụng chỉ mục (linked list allocation using an index)
+ không cần 1 từ để chứa con trỏ đến block kế tiếp.
Câu 32: Có mấy phương pháp cấp phát block cho một tệp trên đĩa? Hãy cho biết nguyên tắc cơ bản và cho ví dụ minh họa về phương pháp I-nodes (index-node)
Câu 33: Có mấy phương pháp cấp phát block cho một tệp trên đĩa? Hãy cho biêts nguyên tắc cơ bản và cho ví dụ minh họa về phương pháp Cấp phát không liên tục với block chỉ mục
Ví dụ: hình trang 6- chương 3 Câu 34: Để đảm bảo việc phân chia tài nguyên và bảo hiểm đối với các tệp phải thực hiện như thế nàoĐể đảm bảo phân chia tài nguyên đối với các tệp. Mỗi tệp có thể được xem như một tài nguyên theo nghĩa nhiều tiến trình có thể cùng phân chia nó. Khi các tiến trình hoạt động trong chế độ chỉ đọc thì tài nguyên có thể phân chia được, ngược lại, nếu một tiến trình muốn viết vào một tệp thì khi đó tài nguyên tệp trở thành không thể phân chia được. Cấp phát tệp cho một tiến trình được thực hiện bởi quản lý tệp với việc mở tệp Câu 35 Việc tổ chức bộ nhớ phụ dùng để giải quyết yêu cầu gì của hệ điều hành đối với máy tính (Trang 225 và trang 175):tổ chức bộ nhớ phụ dùng để giải quyết yêu cầu gì của hệ điều hành đối với máy tính Mục tiêu của chính của hệ thống máy tính là thi hành chương trình. Những chương trình với dữ liệu truy xuất của chúng phải được đặt trong bộ nhớ chính trong suốt thời gian thực hiện. tuy nhiên bộ nhớ chính lại quá nhỏ để có thể lưu trữ mọi dữ liệu và chương trình=> hệ thống tính toán hiện nay được cung cấp thêm bộ nhớ phụ Giải quyết yêu cầu việc lưu trữ khối lượng dữ liệu lớn trong khi bộ nhớ chính lại quá nhỏ. Đa số hệ thống tính toán đều sử dụng đĩa từ để lưu trữ chương trình. Bộ nhớ chính cung cấp một tốc độ truy cập dữ liệu cao, nhưng dữ liệu phải được làm tươi thường xuyên và không thể tồn tạo lâu dài trên nó. Bộ nhớ phụ có tốc độ truy xuất chậm và rẻ hơn nhiều so với bộ nhớ chính nhưng nó không cần làm tươi thường xuyên. Vì thế bộ nhớ phụ có khả năng lưu trữ lớn và cho phép dữ liệu và chương trình lưu trữ dữ liệu và chương trình trong khoảng thời gian dài, trong khi đó bộ nhớ chính chỉ giữ một khối lượng nhỏ các chương trình và dữ liệu đang được sử dụng tại thời điểm hiện tại Câu 36 Để đảm bảo sự toàn vẹn của các tệp cần phải có hệ điều hành như thế nào(270)Một hệ quản trị tệp phải cung cấp những cơ chế thích hợp để phục hồi nội dung của tệp trong trường hợp hệ thống gặp sự cố về phần mềm hoặc phần cứng. để thực hiện được điều này hệ điều hành phải luôn tạp bản sao của các tệp tin đang mở trên hệ thống, để có thể phục hồi lại khi cần thiết. có 2 kỹ thuật được sử dụng trong cơ chế này:
Quyền truy cập có thể được gán cho một người sử dụng ( User) cụ thể, một nhóm người sử dụng ( User Group) hay tất cả người sử dụng ( All User ) có trong hệ thống Muntiuse. Các quyền truy cập cụ thể:
Câu 37: Cơ chế của việc cấp phát và phân chia tài nguyên trong hệ điều hành
Câu 38: Trình bày nguyên nhân gây ra tắc nghẽn/ Cần phải đề phòng,nhận biết và khắc phục các tắc nghẽn như thế nào?
+ Đình chỉ mọi hoạt động của các tiến trình liên quan: dựa trên việc thu hồi lại các tài nguyên cảu những tiến trình bị kết thúc(đình chỉ tất cả các tiến trình trong tình trạng tắc nghẽn hoặc đình chỉ từng tiến trình liên quan cho đến khi không còn chu trình gây ra tắc nghẽn). + thu hồi tài nguyên: thu hồi 1 số tài nguyên từ các tiến trình và cấp phát các tài nguyên này cho những tiến trình khác cho đến khi loại bỏ được chu trình tắc nghẽn. Phương pháp này áp dụng cho các hệ thống có xác suất xảy ra tắc nghẽn ít và thiệt hại do nó gây ra cũng ít.
Câu 39: Nêu các lý do phải thực hiện cơ chế bảo vệ và nâng cao độ tin cậy trong hệ điều hành. Phải làm gì để thực hiện điều này.
+ các lỗi do người điều hành và người dử dụng + các lỗi do phần cứng + các lỗi phần mềm
+ cung cấp các thông tin dư thừa để kiểm tra tính đúng đắn của thông tin” chính” chứa trong hệ thống. + kiểm tra các sửa đổi của 1 bảng bằng cách duy trì tổng của tất cả các giá trị ban đầu. khi 1 giá trị bị sửa đổi, có thể dự báo trước đc bằng cách tính ảnh hưởng đối với tổng kiểm tra. Nếu dự báo sai so với kết quả khi sửa đổi thì tức là có lỗi.
+ xử lí bao gồm việc định vị lỗi và sửa lỗi + cách đơn giản là dò tìm việc phát sinh 1 vết hoặc 1 lịch sử của các hoạt động mới. 1 cách tốt hơn là tạo vết có lựa chọn để sử dụng khi cần thiết. Thực ra cũng chỉ cần ghi nhận lịch sử của 1 số sự kiện đặc biệt nào đó. + trong TH lỗi phần cứng, việc sửa chữa thông thường là thay thế linh kiện(bằng tay hoặc tự động nếu phần mềm có khả năng tự phát hiện lỗi và loại bỏ linh kiện hỏng). + các lỗi phần mềm phát sinh chủ yếu do các sai sót về thiết kế và phát triển hoặc do sự lan truyền của các lỗi từ trước.
+ đánh giá được thiệt hại + thử khắc phục.
Bài tập ôn KTMT và hệ điều hành: Dạng 1:Các loại lệnh máy 1 địa chỉ, 2 địa chỉ, 3 địa chỉ và ngăn xếp Bài 24: trang 101 sách giáo khoa: Ý c,d: Lưu ý khi làm dạng bài tập:chúng ta cần phải trả lời 3 câu hỏi:
Vì: việc tăng số lượng lệnh của bộ điều khiển sẽ đồng nghĩa với việc tăng mã lệnh và điều đó sẽ đến việc thiết kế bộ điều khiển sẽ phức tạp hơn và giá thành của bộ điều khiển sẽ bị tăng.
* lệnh một địa chỉ * lệnh 2 địa chỉ
Lệnh 3 địa chỉ
Lệnh ngăn xếp
* lệnh một địa chỉ
Lệnh 2 địa chỉ
Lệnh 3 địa chỉ
Lệnh ngăn xếp
Dạng 2: Dạng tính hệ số tăng tốc nhờ kỹ thuật xử lý đường ống Bài tập trang3,4,5,6 trang 143 nhé! Lưu ý trước khi làm bài:
( cứ hiểu theo cách của cô: nếu bạn nấu ăn thì cách chờ thứ nhất là chờ để có bếp thực hiện hiện, cách chờ thứ 2 là chờ để lấy nguyên liệu từ một món nào đó) Cách thứ 2 yêu cầu đợi một lệnh nào đó thực hiện xong
Bài 4;
Slt= 25/9 Stt= 25/15
Slt= 30/10 Stt=30/16 Bài 5:
Slt= 15/7 Stt= 15/9 6 công đoạn
Slt= 18/8 Stt= 18/10 Bài 6
Slt= 20/8 Stt=20/11
Slt= 24/9 Stt= 24/12 Dạng bài tập 3: . Dạng tính lỗi trang trong hệ thống phân trang Lưu ý trước khi làm bài:
3 khung: Cho các dãy trang sau cần tuy nhập trong 1 tiến trình: 1, 4, 10, 4, 3, 6, 1, 1, 8, 6, 9, 4, 3, 3, 3, 1 Tính PF (Theo FIFO và LRU) 4 khung trang FIFO
PF=F/(F+S) = 11/16 LRU
PF=F/(F+S) = 11/16 Tiến trình: 0, 1, 2, 0, 3, 2, 0, 1, 2, 4, 0 FIFO
PF=F/(F+S) = 9/11 LRU
PF=F/(F+S) = 7/11 FIFO
PF=F/(F+S) = 6/11 LRU
PF=F/(F+S) = 5/11 Cho các dãy trang sau cần tuy nhập trong 1 tiến trình: 1, 4, 10, 4, 3, 6, 1, 1, 8, 6, 9, 4, 3, 3, 3, 1 Tính PF (Theo FIFO và LRU) |