CÁC DẠNG BÀI TẬP CÓ TRONG ĐỀ THI CẤU TRÚC MÁY TÍNH – ĐẠI HỌCTHƯƠNG MẠI Dạng 1: Sử dụng kĩ năng tăng hiệu năng của bộ xử lí Lí thuyết: 1: kĩ thuật song song + kĩ thuật đường ống: - mỗi c
Trang 1CÁC DẠNG BÀI TẬP CÓ TRONG ĐỀ THI CẤU TRÚC MÁY TÍNH – ĐẠI HỌC
THƯƠNG MẠI Dạng 1: Sử dụng kĩ năng tăng hiệu năng của bộ xử lí
Lí thuyết:
1: kĩ thuật song song
+ kĩ thuật đường ống:
- mỗi chỉ lệnh chia thành nhiều bước
- Cpu được thiết kế bao gồm một số đơn vi chức năng sẽ thực hiện một bước
- Kĩ thuật này khiến các lệnh được thực hiện song song đồng thời và làm tăng tốc độ xử lí + Kĩ thuật siêu đường ống: là một cải tiến của kĩ thuật đường ống, chỉ lệnh tiếp theo đuowcj bắt đầu trước khi kết thúc một bước của chỉ lệnh hiện tại
-Kĩ thuật siêu vô hướng:
+ Được sử dụng trong các máy có nhiều bộ xử lí Tại đó, trong một chu kì máy tính có thể thực hiện một lúc nhiều chỉ lệnh
-Kĩ thuật tăng độ dài từ lệnh
Chiều dài của một từ lệnh sẽ dài ra bởi rất nhiều tác vụ được định nghĩa trong nó
2 CISC và RISC
+ Một lệnh được thực thi bởi việc kết hợp
một số chỉ lệnh đơn giản
+ Các chỉ lệnh được thực thi bởi phần
cứng
+ kích thước các chỉ lệnh và thời gian thực
thi các chỉ lệnh là bằng nhau
+ các chỉ lệnh ở dạng phức hợp
+ các chỉ lệnh được phân tích nhỏ thành vi chỉ lệnh để thực thi nhờ vi chương trình + độ dài cũng như kích thước của các chỉ lệnh thay đổi
Bài tập áp dụng: Một bộ sử lí có tốc độ 3ghz Mỗi chỉ lệnh của bộ xử lí cần thực hiện qua
4 bước con Mỗi bước mất 1 nhịp đồng hồ, ngoại trừ bước thứ 3 mất 5 nhịp tính tốc độ
Trang 2tính toán của bộ xử lí ( triệu lệnh/s) Biết rằng: bộ xử lí thực hiện theo kiểu đường ống nhằm tăng tốc độ tính toán Trung bình 30% số lệnh của một chương trình là lệnh nhảy Giải:
3ghz = 3 10^9 ( hz)
Thời gian thưc hiện 1 lệnh là : 1+1+5+1= 8 s
Ta có: trung bình 30% số lệnh của chương trình là lệnh nhảy hay nói cách khác thì có 10 lệnh sẽ có 7 lệnh sử dụng kĩ thuật đường ống, 3 lệnh nhảy
Thời gian thực hiện 3 lệnh nhảy là : 3* 8 = 24 s
Thời gian thực hiện 7 lệnh nhảy : 8 + 6*5 =38 s
Khi đó, trung binh thời gian thực hiện một lệnh là : (24 + 38) /10 =6.2s
Tốc độ tính toán là ( 3 10^9) / 6.2 = 483,871 ( triệu lệnh/s)
Dạng 2: Tính track, sector, cylinder ( đĩa cứng)
Lí thuyết:
Rãnh ghi ( track): là các được tròn đồng tâm, lưu dữ liệu, dung lượng bằng nhau
Sector ( cung): các phần bằng nhau của 1 track
Từ trụ ( cylinder): nhóm các track có cùng bán kính trên các đĩa thành phần
Bài tập áp dụng: thông số của một ổ cứng được cho như sau:
Tốc độ quay 7200 vòng/ phút
Dung lượng 500GB
Số lượng track/ cylinder =50
Số lượng cylinder=5000
Hãy xác định:
a Số lượng sector/track, mỗi sector có độ lớn 4096byte
b Thời gian truy nhập vào địa chỉ đĩa cứng biết đầu từ di chuyển qua mỗi track mất 1nano s, thời gian truyền dữ liệu là 1500 nano s
1 s
1 s
Trang 3a Số lượng track = 50*5000 = 250000
Dung lượng 1 track= (500*10^9) / 250000 = 2000000 byte
Số lượng sector/track là: 2000000 / 4096 = 488
b Thời gian dịch chuyển trung bình= ½ ( thời gian từ vị trí đứng đến vị trí trong cùng )
= ½ thời gian dịch chuyển số track/ 1 đĩa
= ½ * 5000* 10^ (-9) s
= 2.5* 10^ (-6) s Thời gian tìm kiếm trung bình = ½ thời gian quay của một vòng đĩa cứng = 1/120
*0.5 =1/240 s
Vậy, thời gian truy cập = thời gian dịch chuyển trung bình + thời gian tìm kiếm trung bình + thời gian truyền dữ liệu = 4.17 * 10^ (-3) s
Tương tự bài tập 2:
thông số của 1 ổ cứng được cho như sau:
Tốc độ quay 9600 vòng/ phút
Dung lượng 100TB
Số lượng track/ cylinder =100
Số lượng cylinder=4000
Hãy xác định:
a Số lượng sector/track, mỗi sector có độ lớn 512byte
b Thời gian truy nhập vào địa chỉ đĩa cứng biết đầu từ di chuyển qua mỗi track mất 10nano s, thời gian truyền dữ liệu là 2500 nano s
Dạng 3:Đọc thông số CPU(ít thi)
- Tốc độ xử lí của CPU là Ghz
Ví dụ: intel r Pentium r dual core E5200(2Mb cache, 2,5 MHz,800 MHz,FSB)
Name: intel r Pentium r dual core E5200
Số hiệu E5200 do intel đặt để phân biệt các dòng vi xử lí cùng một thế hệ
Dual core dùng để phân biệt với các dòng khác như i3, i5,
Trang 42M cache: dung lượng bộ nhớ cache( tăng tốc độ xử lí cho chip)
Clock speed: 2,5 GHz tốc độ xử lí của CPU, tương đương 2,5 triệu phép tính/s.
FSB: 800MHZ là chỉ số đo tốc độ lỗi của đường giao tiếp giữa CPU và màn broad.
(khi chọn main và CPU bạn phải chọn CPU có bus thấp hơn hoặc bằng main broad thì CPU mới làm việc được tối đa công suất)
Package: Socket 775 LGA, chỉ loại khe cắm, kiểu chân cắm của CPU và là đặc tính để
tương thích giữa vi xử lí và main broad
Technology: 45nm công nghệ sản xuất của chip, 45nm là kích thước các linh kiện trên
chip
Core: nhân.
Core Voltage: điện áp tiêu thụ của CPU.
155W: công suất tiêu thụ
Dạng 5:Phân chương động, phân chương cố định
+ Phân chương cố định:
Bộ nhớ chia làm n phần bằng nhau dành cho n chương chạy song song
Chương trình nạp toàn bộ vào một chương và tồn tại cho đến khi kết thúc
Nhược điểm: Tổng bộ nhớ tự do lớn hơn kích thước chương trình nhưng không thực thi được do phân đoạn
Phân lại bộ nhớ khi: kích thước chương trình lớn hơn kích thước max của một chương hoặc kích thước của chương trình nhỏ hơn kích thước vật lí
+ Phân chương động:
Hệ điều hành phân phối đủ dung lượng nhớ cho nhu cầu của từng chương trình Chương trình nạp toàn bộ vào một chương cho tới khi kết thúc
Nhược điểm: Phân mảng bộ nhớ sau một thời gian
Phân lại bộ nhớ khi: kích thước của chương trình nhỏ hơn kích thước bộ nhớ vật lí Dạng 6:Thuật toán lập dịch cho đĩa cứng
Trang 5FCFS: thuật toán sẽ dời đến đầu đọc theo thứ tự đúng với thứ tự các khối cần đọc ,thuật toán dễ dàng lập trình nhưng chưa tốt
SSTF: thuật toán di chuyển đầu đọc đến các khối cần đọc theo vị trí gần với vị trí hiện hành của đầu đọc nhất
SCAN: thuật toán sẽ di chuyển đầu đọc về một phía của đĩa và từ đó di chuyển qua phía kia
C-SCAN: Tương tự như SCAN , chỉ khác là nó di chuyển đến 1 trong hai đầu của đĩa , lập tức nó sẽ trở về đầu kia của đĩa( trong quá trình này nó không thực hiện bất kì đọc ghi nào)
Thuật toán SCAN và C-SCAN thích hợp cho những hệ thống phải truy xuất dữ liệu lớn, thuật toán lập dịch phụ thuộc vào số khối cần truy xuất nếu số khối cần truy xuất là liên tục thì thuật toán FCFS là tốt nhất
Ví dụ 1: Đĩa cứng cần phải đọc các khối theo thứ tự sau: 70,45,66,100, 4, 33, 19,88, 90,
121, 77,5 Xác định số lượng khối mà đầu đọc phải dịch chuyển qua nếu thực hiện theo các giải thuật FCFS, SSTF, bắt đầu từ 70
Giải:
FCFS: 70, 45 , 66 , 100 , 4 , 33 , 19 , 88 , 90 , 121 , 77 , 5
70 – 45 = 25
66 -45 = 21
100 -66 = 34
100 -4 = 96
33 - 4 = 29
33 - 19 = 14
88- 19 = 69
90 – 88 = 2
121 – 90 = 75
121 – 77 = 44
Trang 677 - 5 = 72
Tổng số khối cần đọc là : 25+ 21+34+ 96+ 29+ 14+ 69+ 2+ 31 + 44+ 72 =437
SSTF: Thứ tự đọc là: 70, 66, 77, 88, 90, 100, 121, 199, 45, 33, 19, 5,4
70 – 66 = 4
77 -66 = 11
88 – 77 = 11
90 – 88 = 2
100 – 90 = 10
121 – 100 = 21
121 – 45 = 76
45 – 33 = 12
33 – 19 = 14
19 – 5 = 14
5 – 4 = 1
Tổng số khối cần đọc là: 4 +11 + 11+ 2+ 10+ 21+ 76+ 12+14+14+1=176
Ví dụ 2: Đĩa cứng phải đọc các khối theo thứ tự sau: 72, 80, 90, 100, 66, 4, 19, 88 , 90,
77, 5 Xác định số lượng khối mà đầu đọc phải dịch chuyển qua nếu thực hiện các giải thuật SCAN, C-SCAN.Bắt đầu từ 72
SCAN: Thứ tự đọc là: 72, 66 , 19, 5, 4 ,0 , 77 , 80 , 88 , 90, 90 , 100
72 – 66 = 6
66 - 19 = 47
19 – 5 = 14
5 – 4 = 1
4 – 0 = 4
77 – 0 = 77
Trang 780 – 77 = 3
88 – 80 = 8
90 – 88 = 2
90 – 90 = 0
100 – 90 = 10
Số lượng khối mà đầu đọc cần dịch chuyền qua là: 6 + 47+ 14+ 1 +4+ 77+ 3+8+2+0+10
= 172
C- SCAN: Thứ tự đọc là: 72,77,80,88,90,90,100,199,0,4,5,19,66
77 – 72 = 5
80 - 77 = 3
88 - 80 = 8
90 - 88 = 2
100 – 90 = 10
90 - 90 = 0
199 - 100 = 99
199 - 0 = 0
4 - 0 = 4
5 - 4 = 1
19 - 5 = 14
66 - 19 = 47
Số lượng khối mà đầu đọc cần dịch chuyển là: 5 +3+ 8+2+ 10+0 +99+0+4+1+14+47= 193