Thảo luận Bài 2

Trang 2 trong tổng số 5 trang Previous  1, 2, 3, 4, 5  Next

Xem chủ đề cũ hơn Xem chủ đề mới hơn Go down

Re: Thảo luận Bài 2

Bài gửi  TruongTranThanhTu(I22B) on 11/3/2013, 14:27

NguyenCaoTri (I22B) đã viết:Trình bày tuyến thời gian công việc của một tiến trình có hai yêu cầu tới thiết bị ngoài?



user process executing: Công việc tiến trình người dùng.

Công việc tiến trình người dùng có nét liền và bắt đầu lúc 8h. Đến T1=8h5' cần phải xuất nhập xuất thiết bị ngoại vi.

Thời điểm T1 công việc của thiết bị ngoaị vi là đang nghỉ ngơi nhưng ngay sau đó chuyển sang trạng thái làm việc tức là thực hiện tiến trình người dùng.

Trong thời gian T1 -> T2 tiến trình người dùng vẫn làm việc, trong khi đó nhập xuất (I/O) vẫn làm việc

Nhập xuất hoạt động theo nguyên lý trên gọi là nhập xuất (I/O) không đồng bộ.

Tại T2 hệ thống sẽ làm việc sau khi tiến trình người dùng hết nhập xuất. Sau đó, tiến trình người dùng tiếp tục làm việc còn nhập xuất (I/O) chuyển sang trạng thái nghỉ ngơi.

---
Mình không nhớ hết nội dung trình bày phần này. Mong Thầy và các bạn chỉnh sửa, bổ sung để mình hiểu được sơ đồ trên.
Thanks

theo mình hiểu như sau:
User process executing : tiến trình người dùng
Công viêc tiến trình người dùng đang ở trạng thái làm việc, trạng thái I/O đang nghỉ
Vào thời điểm T1 : khi nhận được tín hiệu I/O request (I/O 1), trạng thái I/O chuyển sang chế độ truyền tín hiệu, tiến trình người dùng vẫn đang trong trạng thái làm việc.
Vào thời điểm T2 : khi trạng thái I/O truyền xong, tiến trình I/O chuyển về trạng thái nghỉ lúc đó tiến trình người dùng sẽ thực hiện xử lý ngắt kết nối I/O và chuyển sang trạng thái thực hiện (thời gian ngắt kết nối I/O nhiều hay ít tùy vào tín hiệu truyền).
Vào thời điểm T3 : khi nhận được tín hiệu I/O request khác (I/O 2), tiến trình người dùng vẫn đang trong trạng thái làm việc, và trạng thái I/O sẽ chuyển sang chế độ truyền tín hiệu.
Vào thời điểm T4 : khi trạng thái I/O truyền xong, tiến trình I/O chuyển về trạng thái nghỉ lúc đó tiến trình người dùng sẽ thực hiện xử lý ngắt kết nối I/O và chuyển sang trạng thái thực hiện (thời gian ngắt kết nối I/O nhiều hay ít tùy vào tín hiệu truyền).
Thời gian T5 , T6 thực hiện như trên.
Những ý kiến trên là theo suy nghĩ của mình, mong Thầy và các bạn chỉnh sửa, bổ sung để mình hiểu thêm.

TruongTranThanhTu(I22B)

Tổng số bài gửi : 34
Join date : 11/03/2013

Xem lý lịch thành viên

Về Đầu Trang Go down

Bảo vệ bộ nhớ chính bằng Base Register và Limit Register

Bài gửi  ThaiMyTu (I22B) on 11/3/2013, 22:20

Khi 1 tiến trình thực thi trong chế độ monitor, HĐH không giới hạn sự truy cập vùng nhớ. Để giới hạn vùng nhớ truy cập ta căn cứ vào giá trị của thanh ghi base & limit. Vì vậy để tiến trình người dùng không can thiệp trực tiếp được vào vùng nhớ của hệ điều hành và các tiến trình khác, thường sử dụng hai thanh ghi:

- Thanh ghi cơ sở (Base Register): dùng để lưu trữ địa chỉ ô nhớ hợp lệ nhỏ nhất.
- Thanh ghi giới hạn (Limit Register): dùng để lưu trữ kích thước của cả ô nhớ.

VD:
Ta xét job 2 của một bộ nhớ đang lưu trữ khoảng giá trị từ 300040 cho đến 420940 byte, nghĩa là, lúc đó chương trình sẽ có thể truy cập hợp lệ vào các địa chỉ ô nhớ trong khoảng từ 300040 tới 420940. Trong đó, thanh ghi base sẽ lưu trữ với giá trị 300040 - tương ứng với địa chỉ byte đầu của job 2 và thanh ghi limit sẽ lưu trữ với giá trị 120900. Giá trị 120900 là hiệu của hai giá trị 420940 và 300040.

Ngoài ra chỉ có HĐH mới có thể sửa được nội dung hai thanh ghi này. Vì thanh ghi base và limit chỉ có thể được nạp bởi hệ điều hành.

P/S: lần đầu tham gia nên còn thiếu sót, mong các bạn bổ sung thêm. Very Happy
Attachments
base & limit.PNG Sử dụng Base Register và Limit RegisterYou don't have permission to download attachments.(57 Kb) Downloaded 3 times

ThaiMyTu (I22B)

Tổng số bài gửi : 11
Join date : 10/03/2013
Age : 26
Đến từ : HCM city

Xem lý lịch thành viên

Về Đầu Trang Go down

Ngắt cứng và ngắt mềm

Bài gửi  NguyenHoangKimVu (I11C) on 11/3/2013, 22:32

Ngắt cứng : khi chương trình đang chạy thì bị ngắt do có câu lệnh buộc phải ngắt chương trình.
Ngắt mềm : khi chương trình dang chạy nhưng người dùng muốn sử dụng thao tác khác nên máy tính phải dừng việc đang làm và thực thi hiệu lệnh của người dùng.

Admin
"Tù mù" quá !

NguyenHoangKimVu (I11C)

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

Xem lý lịch thành viên

Về Đầu Trang Go down

Trình bày nguyên lý bảo vệ phần cứng bằng Mode Bit

Bài gửi  dangvannhan(I22A) on 12/3/2013, 09:52

Một Mode Bit được đưa vào phần cứng của máy để chỉ báo chế độ làm việc hiện hành: 0 - Monitor Mode, 1 - User Mode.

Khi xảy ra ngắt, phần cứng chuyển từ User Mode sang Monitor Mode bằng cách đặt Mode Bit thành 0.

Hệ điều hành đặt Mode Bit bằng 1 trước khi trả điều khiển về tiến trình người dùng.

Một số lệnh máy chỉ thực hiện được trong Monitor Mode (Các lệnh ưu tiên).

Tiến trình người dùng có thể gián tiếp thực hiện các lệnh ưu tiên qua Lời gọi hệ thống (System Call).

MS-DOS không có Dual-Mode.

Bộ xử lý Pentium hỗ trợ Mode bit, do đó các HĐH Windows 2000/XP/2003/Vista và OS/2 tận dụng được tính năng này để bảo vệ máy tính tốt hơn.

dangvannhan(I22A)

Tổng số bài gửi : 29
Join date : 11/03/2013

Xem lý lịch thành viên

Về Đầu Trang Go down

Tổng hợp câu hỏi lý thuyết bài 2

Bài gửi  nguyenhoanglam_I22B on 12/3/2013, 12:03

Câu 1: Trình bày nguyên tắc xử lý ngắt của HĐH. Phân biệt ngắt cứng với ngắt mềm.
Câu 2: Trình bày tuyến thời gian công việc của 1 tiến trình có nhiều yêu cầu nhập xuất tới thiết bị ngoài.
Câu 3: Trình bày hai phương thức nhập xuất. Phân biệt nhập xuất đồng bộ (synchronize) với nhập xuất không đồng bộ (Asynchronize).
Câu 4: Trình bày mô hình phân cấp các loại bộ nhớ và nguyên lý lưu gần.
Câu 5: Trình bày nguyên lý bảo vệ phần cứng bằng mode bit.
Câu 6: Trình bày nguyên lý bảo vệ bộ nhớ chính bằng thanh ghi cơ sở và thanh ghi giới hạn.

nguyenhoanglam_I22B

Tổng số bài gửi : 16
Join date : 12/03/2013

Xem lý lịch thành viên

Về Đầu Trang Go down

Re: Thảo luận Bài 2

Bài gửi  NgoVanTuyen(I22B) on 12/3/2013, 15:30

BuiThucTuan(I22B) đã viết:Caching: kỹ thuật làm tăng tốc độ xử lý của hệ thống bằng cách:
- Thực hiện copy thông tin tới thiết bị nhớ nhanh hơn để tăng tốc độ xử lý
của hệ thống.
- Giữ lại các dữ liệu mới được truy nhập trong thiết bị tốc độ cao đó.
- Yêu cầu: dữ liệu phải được lưu trữ đồng bộ trong nhiều mực hệ thống
nhớ để nhất quán (consistent).
- Vì dung lượng cach có hạn, yêu cầu có sự quản lý cach (cache
management) để tăng hiệu năng.
Nguyên lý hoạt động:
+) khi 1 chương trình cần truy xuất dữ liệu từ ổ đĩa: đầu tiên bộ nhớ cache được
kiểm tra
*) nếu có, dữ liệu được lấy trực tiếp từ cache.
*) ko có, dữ liệu đc sao tới cache và đc sử dụng.
Thêm ảnh minh họa! ^_^
Attachments
cache.jpg You don't have permission to download attachments.(96 Kb) Downloaded 8 times

NgoVanTuyen(I22B)

Tổng số bài gửi : 32
Join date : 22/02/2013

Xem lý lịch thành viên

Về Đầu Trang Go down

Nguyên lý bảo vệ bộ nhớ chính bằng thanh ghi cơ sở và thanh ghi giớ hạn

Bài gửi  NgoVanTuyen(I22B) on 12/3/2013, 15:36

- Để tiến trình người dùng không can thiệp được vào vùng nhớ của hệ điều hành và các tiến trình khác, thường sử dụng hai thanh ghi:
+ Thanh ghi Cơ sở (Base register): được dùng để lưu trữ địa chỉ ô nhớ hợp lệ nhỏ nhất
+ Thanh ghi Giới hạn (Limit register): lưu trữ kích thước của cả ô nhớ.
*Chỉ có HĐH mới có thể sửa được nội dung hai thanh ghi này. Vì thanh ghi base và limit chỉ có thể được nạp bởi hệ điều hành

NgoVanTuyen(I22B)

Tổng số bài gửi : 32
Join date : 22/02/2013

Xem lý lịch thành viên

Về Đầu Trang Go down

Nhập/xuất đồng bộ và không đồng bộ

Bài gửi  NguyenHoangKimVu (I11C) on 12/3/2013, 19:18

Nhập/xuất đồng bộ :
- Là nhập/xuất khi mà tiến trình người dùng phải chờ cho đến khi nhập xuất kết thúc rồi mới chạy tiếp.
- Khi dữ liệu truyền tới phần cứng tiến trình người dùng phải chờ một khoảng thời gian để xuất thông tin.
Ví dụ : Với thiết bị bàn phím, chương trình phải chờ người dùng bấm Yes/No, với kết quả Yes hoặc No chương trình mới chạy tiếp
Nhập/xuất không đồng bộ :
- Là nhập/xuất được tiến hành song song, đồng thời với tiến trình người dùng.
Ví dụ : Khi người dùng nhập xong thì chương trình sẽ tự động xuất ra mà không cần phải hỏi ý kiến của người dùng. Máy in nhận lệnh in xong sẽ tự in.

NguyenHoangKimVu (I11C)

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

Xem lý lịch thành viên

Về Đầu Trang Go down

CÂU 1: TRÌNH BÀY NGUYÊN TẮC XỬ LÝ NGẮT CỦA HĐH? PHÂN BIỆT NGẮT CỨNG - NGẮT MỀM? KHÁI NIỆM LỜI GỌI HỆ THỐNG?

Bài gửi  DoThiHaDuc(I22B) on 12/3/2013, 20:06

Phân biệt Ngắt cứng và Ngắt mềm :
- Tín hiệu ngắt (Internal Singal) từ các thiết bị (Ngắt cứng) truyền qua System Bus.
- Tín hiệu ngắt từ chương trình người dùng (Ngắt mềm) nhờ Lời gọi hệ thống (System Call hay Monitor Call). Lệnh đặc biệt này (có tên INT hoặc SysCall) là cơ chế để tiến trình người dùng yêu cầu một dịch vụ của HĐH (vd: yêu cầu thực hiện lệnh I/O).

Nguyên tắc xử lý ngắt :
- Với mỗi loại ngắt, có đoạn mã riêng của HĐH dùng để xử lý.
- Các HĐH hiện đại được dẩn dắt bởi các sự kiện. Nếu ko có tiến trình nào vận hành, ko có thiết bị I/O nào làm việc, HĐH im lặng chờ và theo dõi.
- Thông thường mỗi loại ngắt ứng với một dòng trong bản (Véc-tơ ngắt) chứa con trỏ (Pointer) tới chương trình xử lý loại ngắt đó. Bảng này nằm ở vùng thấp của RAM (vd: 100 bytes đầu tiên).
- Cơ chế xử lý ngắt phải có trách nhiệm ghi lại địa chỉ lệnh bị ngắt để sau đó có thể quay lại. Địa chỉ này cùng với nhiều thông tin khác có thể được ghi vào Ngăn xếp hệ thống (System Stack) với nguyên tắc làm việc LIFO (Last-In, First-Out).

Khái niệm Lời gọi hệ thống (System Call) :
- System Call cung cấp giao diện làm việc giữa 1 chương trình đang thực thi và HĐH, thông thường là các thư viện hợp ngữ (Assembly).
- Các ngôn ngữ lập trình cấp cao thường có các thư viện lập trình thay cho các thư viện hợp ngữ của hệ thống, cho phép lập trình viên triệu gọi System Call trực tiếp (vd: C/C++, Win32 API...)

DoThiHaDuc(I22B)

Tổng số bài gửi : 25
Join date : 11/03/2013

Xem lý lịch thành viên

Về Đầu Trang Go down

ĐĨA CỨNG

Bài gửi  NgoVanTuyen(I22B) on 13/3/2013, 08:24

Cấu tạo của đĩa cứng
Ổ đĩa cứng gồm các thành phần, bộ phận có thể liệt kê cơ bản và giải thích sơ bộ như sau:
Cụm đĩa: Bao gồm toàn bộ các đĩa, trục quay và động cơ.
* Đĩa từ.
+ Trục quay: truyền chuyển động của đĩa từ.
+ Động cơ: Được gắn đồng trục với trục quay và các đĩa.
* Cụm đầu đọc
+ Đầu đọc (head): Đầu đọc/ghi dữ liệu
+ Cần di chuyển đầu đọc (head arm hoặc actuator arm).
* Cụm mạch điện
+ Mạch điều khiển: có nhiệm vụ điều khiển động cơ đồng trục, điều khiển sự di chuyển của cần di chuyển đầu đọc để đảm bảo đến đúng vị trí trên bề mặt đĩa.
+ Mạch xử lý dữ liệu: dùng để xử lý những dữ liệu đọc/ghi của ổ đĩa cứng.
+ Bộ nhớ đệm (cache hoặc buffer): là nơi tạm lưu dữ liệu trong quá trình đọc/ghi dữ liệu. Dữ liệu trên bộ nhớ đệm sẽ mất đi khi ổ đĩa cứng ngừng được cấp điện.
+ Đầu cắm nguồn cung cấp điện cho ổ đĩa cứng.
+ Đầu kết nối giao tiếp với máy tính.
+ Các cầu đấu thiết đặt (tạm dịch từ jumper) thiết đặt chế độ làm việc của ổ đĩa cứng: Lựa chọn chế độ làm việc của ổ đĩa cứng (SATA 150 hoặc SATA 300) hay thứ tự trên các kênh trên giao tiếp IDE (master hay slave hoặc tự lựa chọn), lựa chọn các thông số làm việc khác...
* Vỏ đĩa cứng:
+ Vỏ ổ đĩa cứng gồm các phần: Phần đế chứa các linh kiện gắn trên nó, phần nắp đậy lại để bảo vệ các linh kiện bên trong.
+ Vỏ ổ đĩa cứng có chức năng chính nhằm định vị các linh kiện và đảm bảo độ kín khít để không cho phép bụi được lọt vào bên trong của ổ đĩa cứng.
+ Ngoài ra, vỏ đĩa cứng còn có tác dụng chịu đựng sự va chạm (ở mức độ thấp) để bảo vệ ổ đĩa cứng.
+ Do đầu từ chuyển động rất sát mặt đĩa nên nếu có bụi lọt vào trong ổ đĩa cứng cũng có thể làm xước bề mặt, mất lớp từ và hư hỏng từng phần (xuất hiện các khối hư hỏng (bad block))... Thành phần bên trong của ổ đĩa cứng là không khí có độ sạch cao, để đảm bảo áp suất cân bằng giữa môi trường bên trong và bên ngoài, trên vỏ bảo vệ có các hệ lỗ thoáng đảm bảo cản bụi và cân bằng áp suất.


NgoVanTuyen(I22B)

Tổng số bài gửi : 32
Join date : 22/02/2013

Xem lý lịch thành viên

Về Đầu Trang Go down

Re: Thảo luận Bài 2

Bài gửi  NguyenVanTu(I22A) on 13/3/2013, 08:51

Câu 5 : Trình bày nguyên lý bảo vệ phần cứng Mode Bit?

- Một Mode Bit được đưa vào phần cứng của máy để chỉ báo chế độ làm việc hiện hành: 0 - Monitor Mode, 1 - User Mode.
- Khi xảy ra ngắt, phần cứng chuyển từ User Mode sang Monitor Mode bằng cách đặt Mode Bit thành 0.
- Hệ điều hành đặt Mode Bit bằng 1 trước khi trả điều khiển về tiến trình người dùng.
- Một số lệnh máy chỉ thực hiện được trong Monitor Mode (Các lệnh ưu tiên).
- Tiến trình người dùng có thể gián tiếp thực hiện các lệnh ưu tiên qua Lời gọi hệ thống (System Call).
- MS-DOS không có Dual-Mode.
- Bộ xử lý Pentium hỗ trợ Mode bit, do đó các HĐH Windows 2000/XP/2003/Vista và OS/2 tận dụng được tính năng này để bảo vệ máy tính tốt hơn.

Câu 6 : Trình bày thuật giải bảo vệ bộ nhớ bằng thanh ghi cơ sở và thanh ghi giới hạn.

- CPU tính toán ra một địa chỉ và địa chỉ này phải được kiểm tra tính hợp lệ.
- Nếu địa chỉ nhỏ hơn giá trị lưu trong thanh ghi cơ sở thì hệ thống sẽ báo lỗi.
- Nếu địa chỉ lớn hơn hoặc bằng giá trị lưu trong thanh ghi cơ sở thì tiếp tục được kiểmtra với giá trị trong thanh ghi giới hạn cộng với giá trị trong thanh ghi cơ sở.
- Nếu địa chỉ lớn hơn hoặc bằng tổng trên thì hệ thống sẽ báo lỗi truy cập sai địa chỉ.

NguyenVanTu(I22A)

Tổng số bài gửi : 23
Join date : 12/03/2013

Xem lý lịch thành viên

Về Đầu Trang Go down

Re: Thảo luận Bài 2

Bài gửi  NguyenVanTu(I22A) on 13/3/2013, 09:25

Nguyên tắc lưu gần (CACHING).
- Là nguyên tắc quan trọng của hệ thống máy tính.
- Thông tin từ RAM có thể được cơ chế phần cứng đưa vào bộ nhớ nhanh hơn gọi là Cache. Khi CPU cần chính thông tin đó,không cần phải truy xuất RAM, mà lấy ngay từ Cache.
- Loại bộ nhớ này không do HĐH quản lý và cấp phát.
-Thực tế, RAM là loại Cache nhanh so với đĩa cứng và HĐH có chức năng quản lý sự lưu chuyển dữ liệu giữa hai loại bộ nhớ này.

Vd: Nếu bạn lấy nước ở một con sông thì rất xa và tốn công và thời gian, khi đó chúng ta có thể lấy nước để vào chứa trong cái bể nước, thùng đựng nước gần nhà. Khi cần bạn chỉ cần ra đó múc nước là xong. Cache giống như những thứ dùng đựng nước, nó giúp máy tính có thể lấy được tài nguyên để xử lý nhanh hơn.

NguyenVanTu(I22A)

Tổng số bài gửi : 23
Join date : 12/03/2013

Xem lý lịch thành viên

Về Đầu Trang Go down

Re: Thảo luận Bài 2

Bài gửi  NguyenHoangKimVu (I11C) on 13/3/2013, 10:25

Vd: Nếu bạn lấy nước ở một con sông thì rất xa và tốn công và thời gian, khi đó chúng ta có thể lấy nước để vào chứa trong cái bể nước, thùng đựng nước gần nhà. Khi cần bạn chỉ cần ra đó múc nước là xong. Cache giống như những thứ dùng đựng nước, nó giúp máy tính có thể lấy được tài nguyên để xử lý nhanh hơn.
Mình có thêm ví dụ muốn chia sẻ:
Trong các trình duyệt web thường có mục History để tự động lưu các trang vừa truy cập gần nhất.

NguyenHoangKimVu (I11C)

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

Xem lý lịch thành viên

Về Đầu Trang Go down

Nguyên lý xử lý ngắt của hệ điều hành

Bài gửi  CAOTHANHLUAN(I22B) on 13/3/2013, 18:23

Có hai loại ngắt chính:
- Tín hiệu ngắt(Interrupt signal) từ các thiết bị(Ngắt cứng) truyền qua system Bus.
-Tính hiệu ngắt từ chương trình người dùng(Ngắt mềm) nhờ lời gọi hệ thống (System Call hay Monitor call).
VD:
-Ngắt cứng: khi chương trình đang chạy thì bị ngắt do có câu lệnh buộc phải ngắt chương trình.
-Ngắt mềm: khi chương trình đang chạy nhưng người dùng muốn sử dụng thao tác khác nên máy tính phải dừng việc đang làm và thực thi hiệu lệnh của người dùng.

Very Happy Very Happy Very Happy Very Happy

CAOTHANHLUAN(I22B)

Tổng số bài gửi : 10
Join date : 12/03/2013
Age : 27
Đến từ : Bình Định

Xem lý lịch thành viên

Về Đầu Trang Go down

Nhập xuất đồng bộ và nhập xuất không đồng bộ.

Bài gửi  Ng0HaiQuan(i22B) on 13/3/2013, 18:34

+ Đồng bộ: nhập xuất có chờ ( tiến trình người dùng chờ thiết bị nhập xuất )
VD: Nhập liệu văn bản
+ Không đồng bộ : Nhập xuất không chờ (tiến trình người dùng không chờ thiết bị nhập xuất kết thúc mà làm ngay những thực hiện khác)
Vd : Máy in .

Ng0HaiQuan(i22B)

Tổng số bài gửi : 20
Join date : 12/03/2013

Xem lý lịch thành viên

Về Đầu Trang Go down

Một số câu hỏi về Cache (bộ nhớ lưu trữ gần)

Bài gửi  TranDangKhoa(I22A) on 13/3/2013, 22:48

BuiThucTuan(I22B) đã viết:Caching: kỹ thuật làm tăng tốc độ xử lý của hệ thống bằng cách:
- Thực hiện copy thông tin tới thiết bị nhớ nhanh hơn để tăng tốc độ xử lý
của hệ thống.
- Giữ lại các dữ liệu mới được truy nhập trong thiết bị tốc độ cao đó.
- Yêu cầu: dữ liệu phải được lưu trữ đồng bộ trong nhiều mực hệ thống
nhớ để nhất quán (consistent).
- Vì dung lượng cach có hạn, yêu cầu có sự quản lý cach (cache
management) để tăng hiệu năng.


Chào bạn BuiThucTuan, mình có một vài câu hỏi thắc mắc về Cache như sau mong bạn và các bạn trên diễn đàn cùng tham gia góp ý nha:

1. Cache là thiết bị phần cứng được tổ chức cụ thể trên thiết bị nào? (Cụ thể là trên CPU nha, nhưng tại sao không thiết kế riêng thiết bị bên ngoài vì CPU xử lý rất nhiều công việc, đồng nghĩa là tốc độ làm việc có thể chậm lại và điều này rất khó trong việc thay thế và vận hành?)

2. Dữ liệu được lưu trữ thông qua Cache liệu có giữ lại thông tin khi không cấp nguồn. Ví dụ như bị mất điện đột ngột?

TranDangKhoa(I22A)

Tổng số bài gửi : 32
Join date : 10/03/2013
Age : 25
Đến từ : Lớp I22A

Xem lý lịch thành viên

Về Đầu Trang Go down

Nhiệm vụ quản lý bộ nhớ.

Bài gửi  VoTrongQuyet-I12A on 14/3/2013, 08:36



- Bộ nhớ là thiết bị lưu trữ duy nhất mà thông qua đó CPU có thể trao đổi thông tin với môi trường ngoài
- Bộ nhớ chính được tổ chức như một mảng một chiều các từ nhớ (word), mỗi từ nhớ có một địa chỉ
- Việc trao đổi thông tin với môi trường bên ngoài được thực hiện thông qua các thao tác đọc hoặc ghi dữ liệu vào một địa chỉ nhất định trong bộ nhớ.
=> Vì thế tổ chức, quản lý bộ nhớ là nhiệm vụ trọng tâm hàng đầu của HĐH
* Nhiệm vụ của quản lý bộ nhớ:
- Cấp phát và thu hồi vùng nhớ cho các tiến trình khi cần thiết
- Ghi nhận tình trạng bộ nhớ chình: vùng đã cấp phát, vùng còn có thể sử dụng…
- Quyết định tiến trình nào được nạp vào bộ nhớ chính khi có một vùng nhớ trống.
- HĐH chịu trách nhiệm cấp phát vùng nhớ cho các tiến trình có yêu cầu. Để thực hiện tốt HĐH cần phải xem xét nhiều khía cạnh như:
+ Sự tương ứng giữa địa chỉ Logic và địa chỉ vật lý: làm thế nào để chuyển đổi một địa chỉ tưởng trưng trong chương trình thành địa chỉ thực trong bộ nhớ
+ Quản lý bộ nhớ vật lý: làm sao để mở rộng bộ nhớ có sẵn nhằm lưu trữ nhiều tiến trình đồng thời
+ Chia sẻ thông tin: Làm sao cho phép 2 tiến trình chia sẻ thông tin trong bộ nhớ
+ Bảo vệ: làm thế nào để ngăn chặn các tiến trình xâm phạm đến vùng nhớ được cấp phát cho tiến trình khác

VoTrongQuyet-I12A

Tổng số bài gửi : 24
Join date : 16/02/2012

Xem lý lịch thành viên

Về Đầu Trang Go down

Trình bày và so sánh 2 phương thức nhập - xuất I/O

Bài gửi  NguyenVanSang(I22A) on 14/3/2013, 09:06

*Synchronous:
Nhập xuất đồng bộ (nhập xuất có chờ).Tiến trình người dùng chờ đến khi I/O kết thúc rồi mới thực hiện tiếp.
VD: Nhập dữ liệu từ chuột ,bàn phím
* Asynchorous:
Nhập xuất không đồng bộ (nhập xuất không chờ).
Tiến trình người dùng làm việc đồng thời song song với I/O .
VD:Loa ,màn hình ,máy in.

NguyenVanSang(I22A)

Tổng số bài gửi : 14
Join date : 13/03/2013

Xem lý lịch thành viên

Về Đầu Trang Go down

Cấu trúc đĩa cứng

Bài gửi  NguyenVanSang(I22A) on 14/3/2013, 09:10

– Đĩa cứng (Hard disk) bao gồm nhiều đĩa tròn phẳng có phủ lớp từ tính nằm trên cùng một trục và quay với vận tốc lớn. Việc đọc/ghi dữ liệu được thực hiện bởi những đầu đọc trên mỗi mặt đĩa thông qua sự điều khiển của mạch tích hợp.
– Trên mỗi mặt đĩa được chia thành những vòng tròn đồng tâm gọi là track (rãnh). Các track được đánh số từ ngoài vào trong, bắt đầu là track 0 ở mép ngoài cùng.
– Track lại được chia thành những vùng nhỏ hơn gọi là sector. Mỗi sector có thể chứa được 512 bytes dữ liệu .
– Tập hợp tất cả các track trên tất cả các mặt đĩa có cùng khoảng cách với trục quay được gọi là cylinder. Dữ liệu thực sự được lưu trên đĩa theo từng cylinder. Điều này làm giảm thời gian truy xuất dữ liệu đáng kể do các đầu đọc không phải di chuyển khi đọc một khối dữ liệu trên cùng một cylinder.
– Đĩa cứng đọc/ghi dữ liệu theo các khối. Kích thước nhỏ nhất của khối bằng 1 sector (512 byte). Để có thể truy xuất dữ liệu, cần đặt đầu đọc đúng vị trí, tức là chỉ cho controller biết dữ liệu ở sector nào. Sector được dánh địa chỉ theo số thứ tự cylinder, số thứ tự đầu đọc (hay track) và số thứ tự sector trên track.

NguyenVanSang(I22A)

Tổng số bài gửi : 14
Join date : 13/03/2013

Xem lý lịch thành viên

Về Đầu Trang Go down

Re: Thảo luận Bài 2

Bài gửi  PhamPhuKhanh52(I22B) on 14/3/2013, 12:46

Synchronous (đồng bộ) là khái niệm nói lên tính nguyên tắc, nó đòi hỏi các dữ liệu, tiến trình ... có liên quan phải được kết nối, liên hệ theo một trình tự thực hiện, một định dạng, ...cách thức cố định, không bao giờ thay đổi. Có nghĩa là có các hành động A,B,C thì A phải thực hiện trước sau đó mới tới B rồi tới C cứ như thế, không có chuyện A đang làm thì B vô hay C vô. Nó đòi hỏi tính nhất quán trong công việc. Thứ tự thực hiện rất quan trọng. Tuy nhiên nếu 1 quá trình bị chiếm giữ quá lâu hoặc vô hạn thì các tiến trình còn lại sẽ phải chờ mãi.

Asynchronous (bất đồng bộ) là một khái niệm có thể nói là ngược lại với Synchronous. Nó nói lên sự thiếu chặt chẻ, tuy nhiên lại uyển chuyển và khả năng tùy biến cao. Bất đồng bộ phù hợp trong hệ thống đa chương. Nó giúp thực hiện các công việc 1 cách hiệu quả và nhanh chóng. Ví dụ về in ấn văn bản của thầy trong giờ học đã quá dễ hiểu nên mình cũng không cần nói thêm. bounce
Mong thầy và các bạn góp ý thêm cho mình để mọi người càng tiến bộ nha.

PhamPhuKhanh52(I22B)

Tổng số bài gửi : 14
Join date : 14/03/2013

Xem lý lịch thành viên

Về Đầu Trang Go down

Cache L1, L2, L3

Bài gửi  PhamQuocCuong (I22A) on 14/3/2013, 16:59

Thuật ngữ L1 cache, L2 cache là tên gọi của vùng nhớ đệm – nơi lưu trữ các dữ liệu nằm chờ các ứng dụng hay phần cứng xử lý. Mục đích của nó là để tăng tốc độ xử lý, nó giống như một trạm trung chuyển hay cảng tập kết hàng hoá.
Nói một cách bài bản, cache là một cơ chế lưu trữ tốc độ cao đặc biệt. Nó có thể là một vùng lưu trữ của bộ nhớ chính hay một thiết bị lưu trữ tốc độ cao độc lập.Có hai dạng lưu trữ cache được dùng phổ biến trong máy tính cá nhân là memory caching (bộ nhớ cache hay bộ nhớ truy xuất nhanh) và disk caching (bộ nhớ đệm đĩa).

* Memory cache: Đây là một khu vực bộ nhớ được tạo bằng bộ nhớ tĩnh (SRAM) có tốc độ cao nhưng đắt tiền thay vì bộ nhớ động (DRAM) có tốc độ thấp hơn và rẻ hơn, được dùng cho bộ nhớ chính. Cơ chế lưu trữ bộ nhớ cahce này rất có hiệu quả. Bởi lẽ, hầu hết các chương trình thực tế truy xuất lặp đi lặp lại cùng một dữ liệu hay các lệnh y chang nhau. Nhờ lưu trữ các thông tin này trong SRAM, máy tính sẽ khỏi phải truy xuất vào DRAM vốn chậm chạp hơn.Một số bộ nhớ cache được tích hợp vào trong kiến trúc của các bộ vi xử lý. Chẳng hạn, CPU Intel đời 80486 có bộ nhớ cache 8 KB, trong khi lên đời Pentium là 16 KB. Các bộ nhớ cache nội (internal cache) như thế gọi là Level 1 (L1) Cache (bộ nhớ đệm cấp 1). Các máy tính hiện đại hơn thì có thêm bộ nhớ cache ngoại (external cache) gọi là Level 2 (L2) Cache (bộ nhớ đệm cấp 2). Các cache này nằm giữa CPU và bộ nhớ hệ thống DRAM. Sau này, do nhu cầu xử lý nặng hơn và với tốc độ nhanh hơn, các máy chủ (server), máy trạm (workstation) và mới đây là CPU Pentium 4 Extreme Edition được tăng cường thêm bộ nhớ đệm L3 Cache.

* Disk cache: Bộ nhớ đệm đĩa cũng hoạt động cùng nguyên tắc với bộ nhớ cache, nhưng thay vì dùng SRAM tốc độ cao, nó lại sử dụng ngay bộ nhớ chính. Các dữ liệu được truy xuất gần đây nhất từ đĩa cứng sẽ được lưu trữ trong một buffer (phần đệm) của bộ nhớ. Khi chương trình nào cần truy xuất dữ liệu từ ổ đĩa, nó sẽ kiểm tra trước tiên trong bộ nhớ đệm đĩa xem dữ liệu mình cần đang có sẵn không. Cơ chế bộ nhớ đệm đĩa này có công dụng cải thiện một cách đáng ngạc nhiên sức mạnh và tốc độ của hệ thống. Bởi lẽ, việc truy xuất 1 byte dữ liệu trong bộ nhớ RAM có thể nhanh hơn hàng ngàn lần nếu truy xuất từ một ổ đĩa cứng. Sẵn đây, xin nói thêm, người ta dùng thuật ngữ cache hit để chỉ việc dữ liệu được tìm thấy trong cache. Và hiệu năng của một cache được tính bằng hit rate (tốc độ tìm thấy dữ liệu trong cache). Trở lại chuyện bộ nhớ cache. Hồi thời Pentium đổ về trước, bộ nhớ cache nằm trên mainboard và một số mainboard có chừa sẵn socket để người dùng có thể gắn thêm cache khi có nhu cầu. Tới thế hệ Pentium II, Intel phát triển được công nghệ đưa bộ nhớ cache vào khối CPU. Nhờ nằm chung như vậy, tốc độ truy xuất cache tăng lên rõ rệt so với khi nó nằm trên mainboard. Nhưng do L2 Cache vẫn phải ở ngoài nhân CPU nên Intel phải chế ra một bo mạch gắn cả nhân CPU lẫn L2 Cache. Và thế là CPU có hình dạng to đùng như một cái hộp (gọi là cartridge) và được gắn vào mainboard qua giao diện slot (khe cắm), Slot 1. Tốc độ truy xuất cache lúc đó chỉ bằng phân nửa tốc độ CPU. Thí dụ, CPU 266 MHz chỉ có tốc độ L2 Cache là 133 MHz. Sang Pentium III cũng vậy. Mãi cho tới thế hệ Pentium III Coppermine (công nghệ 0.18-micron), Intel mới thành công trong việc tích hợp ngay L2 Cache vào nhân chip (gọi là on-die cache). Lúc đó, tốc độ L2 Cache bằng với tốc độ CPU và con CPU được thu gọn lại, đóng gói với giao diện Socket 370.

Như đã nói, dung lượng của Cache CPU rất quan trọng. Phổ biến nhất là L2 Cache là một chip nhớ nằm giữa L1 Cache ngay trên nhân CPU và bộ nhớ hệ thống. Khi CPU xử lý, L1 Cache sẽ tiến hành kiểm tra L2 Cache xem có dữ liệu mình cần không trước khi truy cập vào bộ nhớ hệ thống. Vì thế, bộ nhớ đệm càng lớn, CPU càng xử lý nhanh hơn. Đó là lý do mà Intel bên cạnh việc tăng xung nhịp cho nhân chíp, còn chú ý tới việc tăng dung lượng bộ nhớ Cache. Do giá rất đắt, nên dung lượng Cache không thể tăng ồ ạt được. Bộ nhớ cache chính L1 Cache vẫn chỉ ở mức từ 8 tới 32 KB. Trong khi, L2 Cache thì được đẩy lên dần tới hiện nay cao nhất là Pentium M Dothan 2 MB (cho máy tính xách tay) và Pentium 4 Prescott 1 MB (máy để bàn). Riêng dòng CPU dành cho dân chơi game và dân multimedia “prồ” là Pentium 4 Extreme Edition còn được bổ sung L3 Cache với dung lượng 2 MB. Đây cũng là CPU để bàn có tổng bộ nhớ cache lớn nhất (L1: 8 KB, L2: 512 KB, L3: 2 MB).

Hơi dài cố gắng đọc hết nhé

PhamQuocCuong (I22A)

Tổng số bài gửi : 20
Join date : 10/03/2013

Xem lý lịch thành viên

Về Đầu Trang Go down

Re: Thảo luận Bài 2

Bài gửi  NguyenHoangKimVu (I11C) on 15/3/2013, 12:59

PhamQuocCuong (I22A) đã viết:
Như đã nói, dung lượng của Cache CPU rất quan trọng. Phổ biến nhất là L2 Cache là một chip nhớ nằm giữa L1 Cache ngay trên nhân CPU và bộ nhớ hệ thống. Khi CPU xử lý, L1 Cache sẽ tiến hành kiểm tra L2 Cache xem có dữ liệu mình cần không trước khi truy cập vào bộ nhớ hệ thống. Vì thế, bộ nhớ đệm càng lớn, CPU càng xử lý nhanh hơn. Đó là lý do mà Intel bên cạnh việc tăng xung nhịp cho nhân chíp, còn chú ý tới việc tăng dung lượng bộ nhớ Cache. Do giá rất đắt, nên dung lượng Cache không thể tăng ồ ạt được. Bộ nhớ cache chính L1 Cache vẫn chỉ ở mức từ 8 tới 32 KB. Trong khi, L2 Cache thì được đẩy lên dần tới hiện nay cao nhất là Pentium M Dothan 2 MB (cho máy tính xách tay) và Pentium 4 Prescott 1 MB (máy để bàn). Riêng dòng CPU dành cho dân chơi game và dân multimedia “prồ” là Pentium 4 Extreme Edition còn được bổ sung L3 Cache với dung lượng 2 MB. Đây cũng là CPU để bàn có tổng bộ nhớ cache lớn nhất (L1: 8 KB, L2: 512 KB, L3: 2 MB).

Hơi dài cố gắng đọc hết nhé

Bây giờ thì bộ nhớ cache đã lớn hơn rất nhiều rồi. Mấy dòng CPU core i hiện giờ có cái L2 Cache lên tới 10MB á.

NguyenHoangKimVu (I11C)

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

Xem lý lịch thành viên

Về Đầu Trang Go down

Re: Thảo luận Bài 2

Bài gửi  TranThienTam (I22A) on 16/3/2013, 01:05

Công nhận cache càng lớn chạy càng đã Very Happy
Đợt đc sài thử con Core 2duo E8200 cache 6MB chạy nhanh hơn cả core i3 chứ chả chơi Twisted Evil

TranThienTam (I22A)

Tổng số bài gửi : 27
Join date : 08/03/2013

Xem lý lịch thành viên

Về Đầu Trang Go down

Câu 4: Trình bày mô hình phân cấp các loại bộ nhớ và nguyên lý lưu gần.

Bài gửi  NguyenThanhQuoc(I22A) on 16/3/2013, 15:11

Mô hình phân cấp các loại bộ nhớ:



- Thanh ghi là một bộ nhớ dung lượng nhỏ và rất nhanh được sử dụng để tăng tốc độ xử lý của các chương trình máy tính bằng cách cung cấp các truy cập trực tiếp đến các giá trị cần dùng, tính toán dữ liệu, sau đó chuyển kết quả vào bộ nhớ chính. Các thanh ghi nằm bên trong CPU.
- Cache: một hoặc nhiều: L1, L2, L3,... nơi lưu trữ các dữ liệu nằm chờ các ứng dụng hay phần cứng xử lý. Nó chứa lệnh và dữ liệu thường xuyên dùng đến .Mục đích của nó là để tăng tốc độ xử lý, nó giống như một trạm trung chuyển hay cảng tập kết hàng hoá.
- Bộ nhớ chính (main memory):
+ Bộ nhớ RAM (Random access memory), hay Bộ nhớ truy cập ngẫu nhiên: Tốc độ truy cập nhanh, lưu trữ dữ liệu tạm thời, dữ liệu sẽ bị mất đi khi bị cắt nguồn điện;
+ Bộ nhớ ROM (Read Only Memory), hay Bộ nhớ chỉ đọc: Lưu trữ các chương trình mà khi mất nguồn điện cung cấp sẽ không bị (xóa) mất. Ngày nay còn có công nghệ FlashROM tức bộ nhớ ROM không những chỉ đọc mà còn có thể ghi lại được, nhờ có công nghệ này BIOS được cải tiến thành FlashBIOS.
- Đĩa từ (magnetic disk): có dung lượng lớn, giá rẻ, dùng làm bộ nhớ thứ cấp , có chức năng dùng để chứa chương trình và dữ liệu, nội dung sẽ không bị xóa khi xảy ra mất điện.
- Băng từ (magnetic tape)
Nguyên tắc lưu gần (CACHING):
- Là nguyên tắc quan trọng của hệ thống máy tính.
- Thông tin từ RAM có thể được cơ chế phần cứng đưa vào bộ nhớ nhanh hơn gọi là Cache. Khi CPU cần chính thông tin đó,không cần phải truy xuất RAM, mà lấy ngay từ Cache.
- Loại bộ nhớ này không do HĐH quản lý và cấp phát.
-Thực tế, RAM là loại Cache nhanh so với đĩa cứng và HĐH có chức năng quản lý sự lưu chuyển dữ liệu giữa hai loại bộ nhớ này.

Vd:Trong nhà bạn có một tủ sách lớn chứa rất nhiều sách, nhưng bạn chỉ thường xuyên đọc một vài quyển nào đó. Thay vì bạn phải mất công đi lấy và mang đi cất sau mỗi lần đọc thì bạn có thể tạo một giá sách nhỏ để những quyển sách đó gần bàn đọc. Điều này giúp tiết kiệm thời gian và tạo sự tiện lợi cho bạn.

NguyenThanhQuoc(I22A)

Tổng số bài gửi : 18
Join date : 09/03/2013
Age : 24
Đến từ : lớp TH10a3, Dh mở tp.hcm

Xem lý lịch thành viên

Về Đầu Trang Go down

Mô hình tuyến thời gian của 1 tiến trìnhcó 3 yêu cầu tới thiết bị ngoài

Bài gửi  PhanPhamDanPhuong(I22B) on 17/3/2013, 18:36

Mình thấy trong phần thảo luận ,các bạn sử dụng mô hình trong tư liệu của Thầy. Mình xin phép được bổ sung mô hình tuyến thời gian của 1 tiến trình có 3 yêu cầu tới thiết bị ngoài. Đây là mô hình do mình vẽ lại nên nếu có sai sót mong các bạn hãy bổ sung và sữa chữa lại nhé.
Đây là mô hình có trong phần thi nên em mong Thầy và các bạn cho nhận xét, để em hoàn chỉnh lại mô hình ạ.
Xin chân thành cám ơn mọi người.
[img] [/img]

Góp ý cho cả lớp cùng học nhé các bạn.... :hear
t:

PhanPhamDanPhuong(I22B)

Tổng số bài gửi : 7
Join date : 09/03/2013
Age : 26

Xem lý lịch thành viên

Về Đầu Trang Go down

Re: Thảo luận Bài 2

Bài gửi  Sponsored content Today at 21:59


Sponsored content


Về Đầu Trang Go down

Trang 2 trong tổng số 5 trang Previous  1, 2, 3, 4, 5  Next

Xem chủ đề cũ hơn Xem chủ đề mới hơn Về Đầu Trang


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