1.09k likes | 1.3k Views
Hệ thống máy tính. Hoàng Văn Hiệp BM: Kỹ thuật máy tính. Chương 2. Hệ thống máy tính. 2.1. Phần cứng 2.2. Hệ điều hành 2.3. Kỹ thuật cấu hình hệ thống 2.4. Hiệu năng và độ tin cậy của hệ thống
E N D
Hệthốngmáytính Hoàng Văn Hiệp BM: Kỹ thuật máy tính
Chương 2. Hệthốngmáytính 2.1. Phầncứng 2.2. Hệđiềuhành 2.3. Kỹthuậtcấuhìnhhệthống 2.4. Hiệunăngvàđộ tin cậycủahệthống 2.5. Cáchệthốngứngdụng
2.1. Phần cứng 2.1.1. Phầntửthông tin (bộnhớ) 2.1.2. Kiếntrúcbộxửlý 2.1.3. Kiếntrúcbộnhớ 2.1.4. Cácđơnvịbăngtừ 2.1.5. Đĩacứng 2.1.6. Cácthuậtngữliênquanđếnhiệunăng (RAID) 2.1.7. Thiếtbịlưutrữphụ/ cácđơnvịvàora 2.1.8. Cácgiaotiếpvàovàra
2.1.1. Cácphầntửthông tin (bộnhớ) • Bộ nhớ bán dẫn: được làm từ các mạch tích hợp (ICs) sử dụng chất liệu bán dẫn • Bao gồm • ROM (bộ nhớ chỉ đọc) • RAM (bộ nhớ truy cập ngẫu nhiên)
ROM (bộ nhớ chỉ đọc) • ROM làbộnhớbándẫnmàdữliệukhôngbịxóakhimấtđiện • Phânloại:
RAM (Bộnhớtruycậpngẫunhiên) • RAM làbộnhớbándẫnmànội dung củanósẽbịmấtkhimấtđiện. • Phânloại
2.1. Phần cứng 2.1.1. Phầntửthông tin (bộnhớ) 2.1.2. Kiếntrúcbộxửlý 2.1.3. Kiếntrúcbộnhớ 2.1.4. Cácđơnvịbăngtừ 2.1.5. Đĩacứng 2.1.6. Cácthuậtngữliênquanđếnhiệunăng (RAID) 2.1.7. Thiếtbịlưutrữphụ/ cácđơnvịvàora 2.1.8. Cácgiaotiếpvàovàra
2.1.2. Kiếntrúcbộxửlý • Cấuhìnhcủamáytính • Tínhtoánđịachỉvàcácphươngphápđịnhđịachỉ • RISC và CISC • Điềukhiểnđườngốnglệnh
Khối xử lý Khối điều khiển Luồng điều khiển Luồng dữ liệu Khối tính toán Khối vào Bộ nhớ chính Khối ra Bộ nhớ Bộ nhớ ngoài Cấu hình của máy tính
Tínhtoánđịachỉ • Sựtínhtoánđịachỉlàchứcnănglấyvềđịachỉthựcdựatrêntrườngđịachỉchotronglệnh • Địachỉtruycậpthựcsự, kếtquảcủaphéptínhtoánđịachỉđượcgọilàđịachỉhiệudụng • Phươngpháptínhtoánđịachỉđượcgọilàphươngphápđịnhđịachỉ
Cácphươngphápđịnhđịachỉ • Địnhđịachỉtrựctiếp • Địnhđịachỉgiántiếp • Địnhđịachỉchỉsố • Địnhđịachỉcơsở • Địnhđịachỉtứcthì
Trường lệnh Trường địa chỉ x Địa chỉ Bộ nhớ chính Định địa chỉ trực tiếp Ví dụ: ADD R1, A; R1 R1 + (A)
Trườnglệnh Trường địa chỉ x Địa chỉ Bộ nhớ chính Định địa chỉ gián tiếp Ví dụ: ADD R1, A; R1 R1 + ((A))
Bộ nhớ chính Trường lệnh i Trường địa chỉ x Địa chỉ Thanh ghi chỉ số Chỉ số Định địa chỉ chỉ số
Bộ nhớ chính Trường lệnh B Trường địa chỉ x Địa chỉ Thanh ghi cơ sở Chỉ số Định địa chỉ cơ sở
Định địa chỉ tức thì Ví dụ: ADD R1, 5 Trường lệnh Trường địa chỉ (Dữ liệu cần xử lý)
RISC và CISC • Haicôngnghệtăngtốcđộxửlýmáytính • RISC (máytínhvớitậplệnhrútgọn) • Tậplệnhvớicáclệnhđãđượcđơngiảnhóa • Độdàicáclệnhcốđịnhvànhưnhau • Thờigianthựchiệnlệnhđượchạnchế (1 chukỳmáy) • Dễdàngápdụngđiềukhiểnđườngống • CISC (máytínhvớitậplệnhphứctạp) • Cácmáytínhmụcđíchchung
2.1. Phần cứng 2.1.1. Phầntửthông tin (bộnhớ) 2.1.2. Kiếntrúcbộxửlý 2.1.3. Kiếntrúcbộnhớ 2.1.4. Cácđơnvịbăngtừ 2.1.5. Đĩacứng 2.1.6. Cácthuậtngữliênquanđếnhiệunăng (RAID) 2.1.7. Thiếtbịlưutrữphụ/ cácđơnvịvàora 2.1.8. Cácgiaotiếpvàovàra
2.1.3. Kiếntrúcbộnhớ • Phâncấpbộnhớ • Bộnhớđệmnhanh (cache) • Kỹthuậtđanxen
Phân cấp bộ nhớ • Biểu diễn mối quan hệ giữa tốc độ truy cập và dung lượng lưu trữ
Bộ nhớ đệm nhanh • Bộnhớtốcđộcao, dung lượngthấp, nằmgiữa CPU vàbộnhớchính • Tỉlệ hit
Thaotáccủabộnhớđệmnhanh (cache) • CPU yêu cầu nội dung của ngăn nhớ • CPU kiểm tra trên cache với dữ liệu này • Nếu có, CPU nhận dữ liệu từ cache (nhanh) • Nếu không có, đọc block nhớ chứa dữ liệu từ bộ nhớ chính vào cache • Tiếp đó chuyển dữ liệu từ cache vào CPU
Cấutrúcchung cache / bộnhớchính (tiếp) • Một số Block của bộ nhớ chính được nạp vào các Linecủa cache. • Nội dung Tag (thẻ nhớ) cho biết block nào của bộ nhớchính hiện đang được chứa ở line đó. • Khi CPU truy nhập (đọc/ghi) một từ nhớ, có 2 khả năng xảy ra: • Từ nhớ đó có trong cache (cache hit) • Từ nhớ đó không có trong cache (cache miss) • Vì số line của cache ít hơn số block của bộ nhớ chính giảithuậtánhxạ
Cácgiảithuậtánhxạđịachỉ • Ánhxạtrựctiếp • Ánhxạliênkếttoànphần • Ánhxạliênkếttậphợp
Ánhxạtrựctiếp • Mỗi block của bộ nhớ chính chỉ có thể được nạp vào 1line duy nhất của cache. • Quy ước nạp: B0 → L0 • B1 → L1 • ...... • Bm-1 → Lm-1 • Bm → L0 • Bm+1 → L1 • L0 : B0, Bm, B2m ... • L1 : B1, Bm+1, B2m+1 .. • Bjchỉ có thể được nạp vào Lj mod m
Ánhxạtrựctiếp (tiếp) • CPU phátđịachỉgồm N bít • n1: xácđịnh byte nhớtrong line kíchthước line 2n1 • n2: xácđịnh line trong cache số line trong cache 2n2
Ánhxạliênkếttoànphần • Mỗi block có thể được nạp vào bất kỳ line nàocủa cache. • Địa chỉ bộ nhớ do CPU phát ra được chia thành2 phần: tag và byte. • Để kiểm tra xem một block có trong cache haykhông, phải đồng thời kiểm tra tất cả tag củacác line trong cache. • Cầncác mạch phức tạp để kiểm tra.
Ánhxạliênkếttậphợp • Kếthợp2 phương pháp trên • Chia cache thành các tập: S0, S1, S2 ... • Mỗi Set có một số Line (2, 4, 8, 16 Line) • Mỗi block được nạp vào 1 line nào đó trong Set nhất định: • B0 → S0 • B1 → S1 • ...... • Bk-1 → Sk-1 • Bk → S0 • Địa chỉ do CPU phát ra có 3 trường: Tag, Set, Byte
Kỹ thuật đan xen (tổ chức bộ nhớ đan xen) • Độ rộng bus dữ liệu (m = 8, 16, 32…bit) • Bộ nhớ được tổ chức thành các băng nhớ
2.1. Phần cứng 2.1.1. Phầntửthông tin (bộnhớ) 2.1.2. Kiếntrúcbộxửlý 2.1.3. Kiếntrúcbộnhớ 2.1.4. Cácđơnvịbăngtừ 2.1.5. Đĩacứng 2.1.6. Cácthuậtngữliênquanđếnhiệunăng (RAID) 2.1.7. Thiếtbịlưutrữphụ/ cácđơnvịvàora 2.1.8. Cácgiaotiếpvàovàra
2.1.4. Cácđơnvịbăngtừ • Phươngtiệnlưutrữtruycậptuầntựtrênmộtbăngđãđượcnhiễmtừtính • Dung lượnglưutrữ • Hiệunăng • Giáthànhrẻ • Dung lượnglớn • Dùngđểsaolưudữliệu (cho ổ cứng, …)
Các đơn vị băng từ (tiếp) Tính dung lượng của băng từ?
Bài giải • Tínhchiềudàikhối • Tổngsố byte 1 khối = (hệsốkhối) * (chiềudàibảnghi) = 8000 byte/block • Chiềudài 1 khốichưakể IBG = (tổng byte) / (mậtđộ) = 8000/64 = 125 mm/block • Chiềudài 1 khốicó IBG = 125 + 15 = 140 mm/block • Tính dung lượng • Tổngsốkhốitrênbăngtừ: = (chiềudàibăngtừ) / (chiềudài 1 khối) = 5214.285 = 5214 (khối) • Dung lượng: = 5214 * 100 * 80 = 41712000 (bytes).
Các đơn vị băng từ (tiếp) • Tính thời gian băng từ đọc 1 khối dữ liệu
Bài giải • Chiềudàikhối = (hệsốkhối) * (chiềudàibảnghi) = 100 * 80 = 8000 (bytes) • Thờigiantraođổidữliệucủamộtkhối = (chiềudàikhối) / (tốcđộtraođổidữliệu) = 8000 / (320 * 103) = 25 (miligiây) • Thờigianyêucầuđểđọcmộtkhốidữliệu = (thờigianbắtđầu) + (thờigiantraođổidữliệu) = 25 + 6 = 31 (miligiây) • Chú ý: khôngcộngthờigiandừng
2.1. Phần cứng 2.1.1. Phầntửthông tin (bộnhớ) 2.1.2. Kiếntrúcbộxửlý 2.1.3. Kiếntrúcbộnhớ 2.1.4. Cácđơnvịbăngtừ 2.1.5. Đĩacứng 2.1.6. Cácthuậtngữliênquanđếnhiệunăng (RAID) 2.1.7. Thiếtbịlưutrữphụ/ cácđơnvịvàora 2.1.8. Cácgiaotiếpvàovàra
2.1.5. Đĩacứng • Phươngtiệnlưutrữtruycậpngẫunhiên • Đọcghitốcđộcao • Baogồm 1 đến 10 đĩatrònđượcphủchấtliệutừ
2.1.5. Đĩacứng (tiếp) • Dữliệuđượclưutheokhối • Tínhsốtrụcầnlưutrữ 100 000 bảnghi?
Bàigiải • Chiềudàikhối B = (hệsốkhối) * (chiềudàibảnghi) + (IBG) = 2135 (byte) • Tổngsốkhốitrênmộtrãnh N = (chiềudàirãnh) / (chiềudàikhối) = 13000/ 2135 = 6.008 = 6 (khối) • SuyratổngsốbảnghitrênmộtrãnhRt= (hệsốkhối) * N = 8 * 6 = 48 (bảnghi) • Tổngsốbảnghitrên 1 trụ Rs = Rt * (sốrãnhtrên 1 trụ) = 48 * 19 = 912 (bảnghi) • Vậytổngsốtrụcầnlưutrữ 100 000 bảnghi: S = 100 000 / 912 = 109.649 … = 110 (trụ)
2.1.5. Đĩacứng (tiếp) • Tínhtoánhiệunăng • Thờigiantruycập = thờigianđợi + thờigiantraođổi • Trongđó: thờigianđợi=thờigianđịnhvị + thờigiantrễ • Thờigianđịnhvị: Thờigianđểđầuđọcdichuyểnđếnrãnhcódữliệu • Thờigiantrễ: Thờigianchođếnkhidữliệucầnđọchoặcghichuyểnđếnvịtríđầuđọc. • Chú ý: Thờigiantrễtrungbình = thờigiannửavòng quay củađĩa
2.1.5. Đĩacứng (tiếp) • Cho đặctảđĩacứngnhưsau, tínhthờigiantruycậpđọcdữliệumộtkhối (5000 bytes)?
Bàigiải • Thờigian 1 vòng quay = (1 * 60000 ms)/2500 = 24 ms/vòng • Thờigiantrễtrungbình = 12 ms • Tốcđộtraođổidữliệu = 20000/ 24 (bytes/ms) • Thờigiantraođổi 1 khối (5000 bytes) = (Tổngdữliệucầntraođổi) / (tốcđộtraođổi) = 5000 / (20000/24) = 6 (ms) • Thờigiantruycập = thờigianđịnhvị + thờigiantrễ + thờigiantraođổidữliệu = 25 + 12 + 6 = 43 (ms).
2.1.5. Đĩacứng (tiếp) • Sector • Cáchlưutrữ: vídụlưutrữbảnghiđộdài 900, cungtừđộdài 1200 bytes
2.1. Phần cứng 2.1.1. Phầntửthông tin (bộnhớ) 2.1.2. Kiếntrúcbộxửlý 2.1.3. Kiếntrúcbộnhớ 2.1.4. Cácđơnvịbăngtừ 2.1.5. Đĩacứng 2.1.6. Cácthuậtngữliênquanđếnhiệunăng (RAID) 2.1.7. Thiếtbịlưutrữphụ/ cácđơnvịvàora 2.1.8. Cácgiaotiếpvàovàra
2.1.6. Cácthuậtngữliênquanđếnhiệunăng • Chú ý: Thờigianđịnhvịvàthờigiantìmkiếmcóphầnchồnglấplênnhau
2.1.6. RAID (Redundant Array of Independent Disks) • Bộlưutrữphụ, rấtnhiềuđĩacứnghoạtđộng song songđượcđiềukhiểnnhưthểmộtđĩacứng • Cảithiệntốcđộvàora • Nângcaođộ tin cậy