Nghiên cứu tìm hiểu về quản lý thiết bị ngoại vi trong hđh windowsbtl môn nguyên lý hđh hauibài tập lớn môn nguyên lý hđh hauiNghiên cứu tìm hiểu về quản lý thiết bị ngoại vitìm hiểu về quản lý thiết bị ngoại viMỤC LỤCLỜI NÓI ĐẦU2I. ĐỊNH NGHĨA VÀ PHÂN LOẠI CÁC THIẾT BỊ NGOẠI VI TRONG WINDOWS41. Định nghĩa42. Phân loại thiết bị ngoại vi5II. GIỚI THIỆU CÁC THIẾT BỊ NGOẠI VI TRONG WINDOWS71. Keyboard72. Mouse93. Barcode reader104. Scanner105. Microphone116 . Webcam127. Game controller Gamepad128. Monitor139. Printer1410. Projector1511. Speaker1512. Floppy Disk Drive1513. Flash Drive (USB)1614. Hard Drive17III. CÁCH THỨC WINDOWS ĐIỀU KHIỂN, QUẢN LÝ CÁC THIẾT BỊ NGOẠI VI201. Định nghĩa202. SPB peripheral device drivers212.1 SPB (Simple Peripheral Bus)212.2 Connection IDs for SPB Connected Peripheral Devices222.3 Interrupts from SPBConnected Peripheral Devices (Ngắt gián đoạn các thiết bị ngoại vi với SPB)232.4 Atomic Bus Operations242.5 Device Configuration Information252.6 Software and Hardware Layers25LỜI KẾT28LỜI NÓI ĐẦUNếu như cuộc cách mạng công nghiệp lần thứ nhất bắt đầu từ khoảng năm 1784 với việc sử dụng động cơ hơi nước hay như cuộc cách mạng công nghiệp lần thứ 2 diễn ra từ khoảng những năm 1870 với việc ra đời của năng lượng điện và các dây chuyền máy móc sản xuất hàng loạt trên quy mô lớn thì bắt đầu từ năm 1969 cùng với sự ra lan toả, bùng nổ của Công nghệ thông tin chính là cuộc cách mạng máy tính cách mạng công nghiệp lần thứ 3. Cách mạng công nghiệp lần thứ 4 xuất phát từ khái niệm “Industrie 4.0” trong một báo cáo của chính phủ Đức năm 2013 . Từ đó có thể thấy được tầm quan trọng của máy tính trong cuộc sống hiện đại của chúng ta. Các thiết bị ngoại vi (Peripheral devices) chính là các công cụ chính giúp chúng ta có thể giao tiếp với máy tính. Nếu không có các thiết bị đó, thì máy tính sẽ giống như một chiếc hộp chứa hàng tá dây dợ đang thực thi một loạt các tác vụ nhưng lại không thể tương tác cũng như đưa ra kết quả cho người dùng. Do đó, tầm quan trọng của máy tính và thiết bị ngoại vi luôn đi song hành với nhau. Nhưng không phải khi nào người dùng kết nối một máy in, máy scan, webcam hay bất cứ một thiết bị ngoại vi mới nào vào máy tính là đều có thể hoạt động ngay được. Chúng sẽ không thể hoạt động được nếu thiếu driver, một dạng phần mềm điều khiển chức năng của phần cứng. Trong phạm vi của bài nghiên cứu này, nhóm xin phép trình bày phần tìm hiểu của mình về cách thức quản lý thiết bị ngoại vi trong hệ điều hành Windows hệ điều hành cực kì phổ biến chiếm tới 77.7% lượng người dùng tính tới thời điểm tháng 1 năm 2020. Nội dung của bài “Nghiên cứu về quản lý các thiết bị ngoại vi trong Windows” bao gồm như sau:Chương I: Định nghĩa và phân loại các thiết bị ngoại vi Chương II: Giới thiệu các thiết bị ngoại vi trong WindowsChương II: Cách thức Windows quản lý và điều khiển các thiết bị ngoại viTrong quá trình tìm hiểu và nghiên cứu, nhóm đã rất cố gắng nhưng do kinh nghiệm lần kiến thức còn nhiều hạn chế nên chắc chắn không tránh khỏi những thiếu sót. Rất mong nhận được sự góp ý và giúp đỡ của thầy cô để bài nghiên cứu càng hoàn thiện hơn.Xin chân thành cảm ơn
TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI KHOA CNTT - - BÀI TẬP LỚN NGUYÊN LÝ HỆ ĐIỀU HÀNH Đề tài : NGUYÊN CỨU VÀ TÌM HIỂU VỀ QUẢN LÝ CÁC THIẾT BỊ NGOẠI VI TRONG WINDOWS Giáo viên hướng dẫn : Nguyễn Thanh Hải Sinh viên thực : Nhóm Nguyễn Văn Hùng Nguyễn Văn Hùng Mạc Văn Hồn Nguyễn Cơng Ngun Lê Cơng Thành MỤC LỤC LỜI NĨI ĐẦU Nếu cách mạng cơng nghiệp lần thứ khoảng năm 1784 với việc sử dụng động nước hay cách mạng công nghiệp lần thứ diễn từ khoảng năm 1870 với việc đời lượng điện dây chuyền máy móc sản xuất hàng loạt quy mơ lớn năm 1969 với lan toả, bùng nổ Cơng nghệ thơng tin cách mạng máy tính - cách mạng cơng nghiệp lần thứ Cách mạng công nghiệp lần thứ xuất phát từ khái niệm “Industrie 4.0” báo cáo phủ Đức năm 2013 Từ thấy tầm quan trọng máy tính sống đại Các thiết bị ngoại vi (Peripheral devices) cơng cụ giúp giao tiếp với máy tính Nếu khơng có thiết bị đó, máy tính giống hộp chứa hàng tá dây dợ thực thi loạt tác vụ lại tương tác đưa kết cho người dùng Do đó, tầm quan trọng máy tính thiết bị ngoại vi song hành với Nhưng người dùng kết nối máy in, máy scan, webcam hay thiết bị ngoại vi vào máy tính hoạt động Chúng khơng thể hoạt động thiếu driver, dạng phần mềm điều khiển chức phần cứng Trong phạm vi nghiên cứu này, nhóm xin phép trình bày phần tìm hiểu cách thức quản lý thiết bị ngoại vi hệ điều hành Windows - hệ điều hành phổ biến chiếm tới 77.7% lượng người dùng tính tới thời điểm tháng năm 2020.2 https://en.wikipedia.org/wiki/Industry_4.0 https://www.statista.com/statistics/218089/global-market-share-of-windows-7/ Nội dung “Nghiên cứu quản lý thiết bị ngoại vi Windows” bao gồm sau: Chương I: Định nghĩa phân loại thiết bị ngoại vi Chương II: Giới thiệu thiết bị ngoại vi Windows Chương II: Cách thức Windows quản lý điều khiển thiết bị ngoại vi Trong trình tìm hiểu nghiên cứu, nhóm cố gắng kinh nghiệm lần kiến thức nhiều hạn chế nên chắn khơng tránh khỏi thiếu sót Rất mong nhận góp ý giúp đỡ thầy để nghiên cứu hoàn thiện Xin chân thành cảm ơn! Định nghĩa Thiết bị ngoại vi ( Peripheral Device) - từ “ngoại vi” thường dùng để hướng tới thiết bị nằm bên máy tính (external) chẳng hạn scanner, bàn phím, chuột vài thiết bị nằm bên ổ HDD, SSD… Một cách hiểu khác thiết bị ngoại vi bổ sung thêm tính cho máy tính khơng thuộc “nhóm chính” bao gồm :CPU, Mainboard hay PSU Tuy nhiên, dù chúng khơng liên quan trực tiếp đến chức máy tính khơng có nghĩa thiết bị ngoại vi khơng coi thành phần thiết yếu Ví dụ, desktop bình thường gồm có hình monitor, dù hình khơng tham gia hỗ trợ việc tính tốn xử lý, khơng u cầu bắt buộc để máy tính hoạt động thực cần để người dùng sử dụng tương tác với máy tính Hoặc hiểu thiết bị ngoại vi chúng thiết bị hoạt động độc lập (standalone devices), hoạt động gắn kết với điều khiển máy tính cài đặt hệ điều hành trình điều khiển Phân loại thiết bị ngoại vi Một thiết bị ngoại vi, khía cạnh coi thiết bị phụ trợ, thiết bị gắn vào máy tính, gắn gắn ngồi, cung cấp thêm tính cho máy tính Một vài thiết bị lúc thuộc vào nhiều nhóm khác nhau, chẳng hạn CD-ROM drive, người dùng dùng để đọc (input devices) liệu (những năm đầu 2000 thường hay cài Windows XP từ đĩa CD) dùng để ghi liệu vào CD/DVD (output devices) Hoặc chúng chia thành nhóm external(gắn ngồi) internal(gắn trong) Ví dụ máy in external device mà connect tới máy tính thơng qua sợi cable, ổ đĩa quang đặt bên case máy tính (internal device) Trong nghiên cứu này, nhóm giới chia thiết bị ngoại vi thành nhóm sau: a Input devices: làm nhiệm vụ đầu vào, tiếp nhận tương tác từ người dùng gửi data tới máy tính Bao gồm: b - Keyboard - Mouse - Barcode reader - Scanner - Microphone - Webcam - Game controller/Gamepad Output devices: làm nhiệm vụ đầu ra, nhận liệu từ máy tính xuất cho người dùng Bao gồm: - Màn hình (Monitor) c - Máy in (Printer) - Máy chiếu (Projector) - Loa (Speaker) Storage devices: làm nhiệm vụ lưu trữ, truy xuất liệu Bao gồm: - Ổ mềm (Floppy disk drive) - Flash drive - Disk drive Sau nhóm vào giới thiệu thiết bị ngoại vi, lịch sử hình thành số điểm thú vị xung quanh chúng II GIỚI THIỆU CÁC THIẾT BỊ NGOẠI VI TRONG WINDOWS Keyboard a Khái niệm: Là thiết bị ngoại vi dùng để nhập liệu sử dụng phím “keys” hoạt động mô theo máy đánh chữ xuất từ sớm năm 1700s Một bàn phím thơng thường có ký tự khắc in phím b Cách thức hoạt động: Bàn phím kết nối với máy tính thơng qua cổng USB, cổng DIN(ngày sử dụng) wireless Với đa số bàn phím, lần nhấn phím tương ứng với ký hiệu tạo Ví dụ kí tự bấm, tín hiệu điện chuyển hóa thành dạng nhị phân lưu vào nhớ Máy tính xử lý liệu dạng bytes chuyển hoá chúng thành ký tự hiển thị hình Cụ thể, ta bấm phím T bàn phím, tín hiệu điện phím T gửi tới system unit chuyển thành dạng ASCII binary code (01010100) lưu vào nhớ xử lý hiển thị phím T hình c Phân loại bàn phím: Bàn phím phân chia dựa theo nhiều tiêu chí * Dựa theo hình dáng phân loại thành: - tiêu chuẩn (standard): loại bàn phím phổ biến nhất, thường có 102/104 phím - Laptop-size: loại bàn phím có kích thước nhỏ gọn, có hành trình phím ngắn so với phím tiêu chuẩn để phù hợp với tiêu chí gọn nhẹ, động laptop (Một số gaming laptop sử dụng bàn phím cho cảm giác gõ thú vị hơn) - Handheld: thiết kế phím giống game controller cầm tay để điều khiển thay phải đặt mặt phẳng bàn phím thơng thường - * Dựa theo loại phím (Key type) chia làm nhóm chính: - Bàn phím (Mechanical keyboard):Những bàn phím sử dụng nút bấm (hay gọi switch) vật lý với hệ thống khung kim loại phía dưới, từ đem lại cảm giác gõ chân thật, khơng thể nhầm lẫn vào đâu được, tiếng kêu thực nhấn phím xuống - Bàn phím cao su:(Membrane keyboard) Đây loại bàn phím thơng dụng Ở phím nhấn, người ta đặt miếng cao su, bạn nhấn vào phím phím cao su chạm với bảng mạch điện bên dưới, nối kín mạch tạo tín hiệu sau nhờ đàn hồi nên miếng cao su giúp phím bấm trở lại vị trí cũ Mouse a Khái niệm: Mouse thiết bị đầu vào tương tác với máy tính thơng qua việc point & click Chuột máy tính ngày phổ biến gồm phím: phím trái phím chuột phải kèm theo lăn (scroll wheel) phím Sở dĩ gọi “chuột” dựa hình dáng thiết bị cắm vào máy tính phần dây cắm liên tưởng tới “đuôi chuột” Ngày chuột không dây dần trở lên phổ biến b Phân loại: Chuột máy tính chia thành loại phổ biến nhất: - chuột bi (ball-type mouse) sử dụng viên bi cao su, gần khơng cịn sử dụng - Chuột quang ( optical mouse) sử dụng ánh sáng quang học phản lại từ mặt để tính tốn c Cách thức hoạt động chuột quang: Chuột kết nối với máy tính thơng qua cổng USB, cổng DIN(ngày sử dụng) wireless Chuột có đèn LED nhỏ chiếu sáng xuống mặt phẳng hắt lại vào CMOS sensor CMOS gửi ảnh tới digital signal processor(SDP) để tính tốn chuyển động gửi liệu số tới máy tính Việc xảy hàng trăm lần giây khiến cho trỏ chuột máy tính chuyển động mượt Barcode reader a Khái niệm: Là thiết bị ngoại vi đọc barcode, decode liệu chứa barcode gửi liệu tới máy tính Thường gặp siêu thị, xí nghiệp sản xuất b Phân loại: Barcode reader chia thành nhiều loại dựa công nghệ mà chúng sử dụng: - Laser scanner: dùng chùm tia laser để quét code Một photodiode đo cường độ sáng phản xạ lại tính tốn liệu gửi tới máy tính.(thường gặp tốn siêu thị) - CCD/LED scanner: sử dụng hàng trăm cảm biến ánh sáng để đo cường độ ánh sáng trước mặt tính tốn kết - Camera-based readers: sử dụng camera để chụp ảnh barcode kết hợp xử lý ảnh(image processing techniques) để decode barcode (Thường gặp bãi gửi xe siêu thị để đọc biển số xe lưu liệu vào máy tính) Scanner a Khái niệm : Scanner thiết bị chụp chuyển hình ảnh vật lý từ in văn bản, tài liệu, áp phích, trang tạp chí nguồn tài liệu tương tự để hiển thị chỉnh sửa máy tính Tài liệu nạp cho 10 HDMI (High-Definition Multimedia Interface)là tên quen thuộc - mà lần nghe tới, chuẩn kết nối vô phổ biến đổi với nhiều thiết bị nghe nhìn, máy móc cơng nghệ Phổ biến HDMI 1.4/2.0 phiên 2.1.So sánh với VGA , HDMI hỗ trợ hình ảnh lên tới 4K, có kèm âm truyền tải liệu khác.Với hầu hết người dùng, HDMI cổng kết nối phù hợp nhất, nhiên, có số hạn chế như: hỗ trợ 4K 60Hz, khơng có chế khóa cắm vào, không hỗ trợ độ phân giải rộng 21:9 truyền nhiều luồng video lúc DP (DisplayPort) cổng kết nối sinh sau đẻ muộn danh - sách cổng kết nối phổ biến nay.So sánh với HDMI, DisplayPort hỗ trợ hình ảnh lên tới 8K 60Hz 4K 120Hz Hỗ trợ truyền nhiều luồng video lúc, hỗ trợ hình ảnh 3D phân giải 4K DisplayPort có chế khóa cắm vào hình Printer Khái niệm : Máy in phần cứng cho máy tính, cho phép người a dùng in mục giấy, chẳng hạn chữ hình ảnh b Phân loại : Có loại máy in phổ biến : máy in laser, máy in phun, máy in kim, máy in nhiệt… c Cách thức hoạt động : - Máy in laser : máy in dùng in giấy, hoạt động dựa nguyên tắc dùng tia laser để chiếu lên trống từ, trống từ quay qua ống mực (có tính chất từ) để mực hút vào trống, giấy chuyển động qua trống mực bám vào giấy, công đoạn cuối sấy khô mực để mực bám chặt vào giấy trước Được dùng chủ yếu gia đình cơng ty, văn phịng làm việc - Máy in phun : loại máy in hoạt động theo nguyên tắc phun mực vào giấy in, mực in phun qua lỗ nhỏ giọt với tốc độ cao 14 (khoảng tầm 5000 lần/giây) giúp tạo điểm mực đủ nhỏ cho in có chất lượng cao, chữ in rõ nét Mẫu máy ưa chuộng sử dụng công ty, văn phịng làm việc, gia đình - Máy in kim :là loại máy in hoạt động dựa nguyên tắc sử dụng kim chấm qua băng mực làm mực trang giấy in Dòng sản phẩm ưa chuộng siêu thị, cửa hàng, chuyên dùng để in hóa đơn với in nhỏ, chi phí thấp - Máy in nhiệt : loại máy in hoạt động theo nguyên tắc sử dụng đầu in gồm nhiều điểm nóng áp vào mặt film mỏng, mặt film nhận nhiệt lượng từ phần tử in, mặt film cịn lại phủ mực nhiệt áp sát vào vật liệu in Nhiệt lượng truyền từ phần tử in qua lớp film mỏng làm chảy mực mặt bên in lên vật liệu in Sản phẩm thường dùng làm máy in hóa đơn, sử dụng rộng rãi cửa hàng, siêu thị, xăng, tổ chức tài chính, công ty 10 Projector Là thiết bị quang học chiếu hình ảnh (hoặc hình ảnh chuyển động) lên bề mặt, thường hình chiếu, ánh sáng qua hệ thống xử lý trung gian biến nguồn tín hiệu đầu vào thành hình ảnh chắn sáng quan sát mắt thường 11 Speaker Loa máy tính (computer speaker) thiết bị dùng để phát âm phục vụ nhu cầu làm việc giải trí người với nguồn âm xuất phát từ máy tính Loa máy tính thường kết nối với máy tính cá nhân thơng qua ngõ xuất audio bo mạch âm (sound card) Chúng gồm hai dạng hình thức: Tích hợp sẵn máy tính thiết bị ngoại vi đặt bên ngồi máy tính 15 12 Floppy Disk Drive a Khái niệm : thiết bị sử dụng để đọc ghi liệu từ đĩa mềm Mỗi loại ổ đĩa mềm sử dụng loại đĩa mềm riêng biệt mà không sử dụng loại đĩa có kích thước khác Hiện gần tuyệt chủng, sử dụng số lĩnh vực đặc thù ví dụ môi trường quân đội: số thiết bị phóng tên lửa cịn sử dụng lệnh điều khiển sử dụng đĩa mềm trước năm 2019 Mỹ3 b Phân loại : ● c Phân loại theo đĩa mềm : ○ Ổ đĩa mềm dùng cho loại đĩa mềm 8" ○ Ổ đĩa mềm dùng cho loại đĩa mềm 5,25" ○ Ổ đĩa mềm dùng cho loại đĩa mềm 3,5" Cách thức hoạt động : Các đĩa mềm lưu trữ liệu thông qua nguyên lý lưu trữ từ bề mặt, ổ đĩa mềm hoạt động dựa nguyên lý đọc ghi theo tính chất từ Tất cách làm việc với đĩa mềm qua khe hẹp loại đĩa mềm 13 Flash Drive (USB) a Khái niệm : USB (Universal Serial Bus) Nói đến USB thường nghĩ tới USB cắm vào máy tính để trao đổi liệu Nhưng mà vậy, thực chất USB chuẩn kết nối Nó cho phép máy tính kết nối với nhiều thiết bị khác : chuột, bàn phím, thiết bị smartphone, thiết bị chơi game…nhưng độ phổ biến thiết bị lưu trữ gắn cắm qua cổng USB (Flash https://metro.co.uk/2019/10/24/us-military-decides-stop-using-8-inch-floppy-disks-nuclear-missilesystem-10973878/ 16 drive/thumb drive/removable drive) mà Flash drive hay gọi USB Phân loại : Cho đến thời điểm USB có loại b cổng USB 2.0 cổng USB 3.0 USB 2.0 có đường truyền đạt tốc độ tối đa 480 Mbps, tức 60MB/s Còn với USB 3.0 tốc độ tối đa 4.8 – Gbps, tức 600 – 625 MB/s Nhưng mà thực tế chép file tốc độ truyền USB 2.0 thường 19 – 20 MB/s, tốc độ USB 3.0 thường 59 – 60 MB/s (còn phụ thuộc vào độ tương thích thiết bị kết nối) 14 Hard Drive a Khái niệm: Ổ cứng thành phần quan trọng máy tính, tất liệu người dùng hệ điều hành windows liệu cá nhân lưu trữ ổ cứng chúng truy xuất thường xuyên Ổ cứng thiết bị quan trọng hệ thống chúng chứa liệu thành trình làm việc người sử dụng máy tính b Phân Loại : Ổ Đĩa Cứng chia thành loại phổ biến : HDD, SSD, NVME… - HDD(Hard Disk Drive): thiết bị điện, sử dụng từ tính để lưu trữ truy xuất thông tin số cách dùng nhiều đĩa cứng tráng lớp vật liệu từ tính (hay cịn gọi đĩa từ) quay tốc độ cao Các đĩa ghép đôi với đầu đọc/ghi (hay gọi đầu từ), thường bố trí cánh tay địn cấu truyền động, giúp đọc ghi liệu lên bề mặt đĩa từ - SSD ( Solid-State Drive) : loại ổ cứng thể rắn, nghiên cứu chế tạo nhằm cạnh tranh với ổ cứng HDD truyền thống, cải thiện sức mạnh tốc độ, nhiệt độ, độ an toàn liệu điện tiêu thụ Hiện giá thành dù giảm nhiều (giá đạt đỉnh 17 vào năm 20124) cịn cao nên máy tính laptop sử dụng ổ HDD chủ yếu NVME( Non-Volatile Memory Express) : giao diện lưu trữ - lớn cho máy tính xách tay máy tính để bàn, đồng thời cung cấp tốc độ đọc ghi nhanh nhiều so với giao diện cũ Về mặt kỹ thuật, NVMe giao diện mạch chủ điều khiển (host controller) chuẩn hiệu cao dành cho ổ cứng SSD có giao tiếp PCIe, cho phép cắm chạy SSD PCIe tất tảng c Cách thức hoạt động :· · - HDD (Hard Disk Drive) : bao gồm nhiều đĩa từ gọi platter xếp chồng xoay quanh trục Dữ liệu lưu trữ cách rãnh (track) đĩa Để đọc ghi liệu đĩa, người ta sử dụng đầu đọc có khả di chuyển xung quanh đĩa Mỗi cần trích xuất hay ghi liệu mới, đầu đọc di chuyển đến vị trí Q trình di chuyển gọi “seeking” (tìm kiếm) tốc độ di chuyển qua lại gọi “seek time” (thời gian tìm kiếm) - SSD ( Solid-State Drive) : không lưu liệu đĩa hồn tồn khơng sử dụng đầu đọc Thay vào đó, liệu lưu chip nhớ NAND flash Cấu tạo NAND flash bao gồm nhiều transistor đặc biệt có tên gọi floating gate transistor NAND flash thiết kế để giữ nguyên trạng thái kể không cấp nguồn.Các electron lưu trữ transistor floating gate, có trạng thái “0” “1” tương ứng với “nạp” “khơng nạp” hay dễ hiểu “0” liệu lưu trữ ô nhớ (cell) Cơ cấu tổ chức NAND flash theo hình lưới, gồm page https://www.computerworld.com/article/3010395/consumer-ssds-and-hard-drive-prices-arenearing-parity.html 18 (trang) block (khối) Một page gồm nhiều cell hợp thành, nhiều page tạo thành block - NVME( Non-Volatile Memory Express) : ánh xạ lệnh I / O phản hồi tới nhớ dùng chung máy tính chủ giao tiếp PCIe Giao diện NVMe hỗ trợ I / O song song với xử lý đa lõi để tạo điều kiện thông lượng cao giảm thiểu tắc nghẽn đơn vị xử lý trung tâm (CPU) 19 III CÁCH THỨC WINDOWS ĐIỀU KHIỂN, QUẢN LÝ CÁC THIẾT BỊ NGOẠI VI Về bản, máy tính tạo thành phần mềm phần cứng (bao gồm thiết bị ngoại vi) Bản thân thiết bị ngoại vi có lệnh điều khiển riêng mà có trình điều khiển thiết bị biết Ngược lại, hầu hết chương trình truy cập thiết bị thông qua Windows cách sử dụng lệnh chung Do phần mềm muốn “nói chuyện” với phần cứng cần phải cần có “thơng dịch viên”, Windows Driver đảm nhiệm điều Ở phần này, nhóm trình bày driver Windows Định nghĩa Driver phần mềm có nhiệm vụ giúp Windows thiết bị giao tiếp với Ví dụ, chương trình muốn đọc liệu từ thiết bị, chẳng hạn Zoom muốn truy xuất tới liệu hình ảnh Webcam laptop gọi hàm Windows cung cấp, Windows gọi tới hàm thực driver (implemented by driver) Cịn driver Webcam đó, thân viết nhà sản xuất linh kiện, thiết bị nên biết cách để giao tiếp với thiết bị lấy liệu Sau driver lấy liệu từ thiết bị, chúng trả kết cho Windows, trả tiếp cho hàm gọi ban đầu từ Zoom để tiếp tục xử lý.5 Nhưng tất trường hợp driver viết nhà sản xuất thiết bị, ví dụ số thiết bị plug and play bàn phím, chuột, loa, flash driver… (trừ số dịng phím chuột gaming đặc biệt có thêm phím https://docs.microsoft.com/en-us/windows-hardware/drivers/gettingstarted/what-is-a-drivers 20 function riêng biệt nhà sản xuất đính kèm thêm driver để người dùng cài đặt cho Windows) Khi driver viết, hỗ trợ sẵn Windows, nhà sản xuất không cần cung cấp driver Cụ thể với thiết bị ngoại vi Windows có cho SPB peripheral devices drivers để thực thi nhiệm vụ SPB peripheral device drivers6 Một SPB peripheral device driver điều khiển thiết bị ngoại vi kết nối tới Simple Peripheral Bus7 (SPB) Để thực thao tác I/O từ thiết bị ngoại vi, driver phải gửi I/O request tới SPB controller Từ đây, có controller khởi tạo để truyền nhận liệu tới thiết bị ngoại vi thông qua SPB 2.1 SPB (Simple Peripheral Bus)8 Bắt đầu từ Windows trở hỗ trợ driver có sẵn cho thiết bị ngoại vi đơn giản bao gồm bus nối tiếp đồng chẳng hạn IIC SPI Một bus nối tiếp truyền bit data thời điểm Cịn trước Windows Windows nhận liệu từ thiết bị ngoại vi gắn mainboard gián tiếp thông qua firmware Từ Windows 8, nhà sản xuất phần cứng/ thiết bị ngoại vi cung cấp Windows drivers để điều khiển trực tiếp SPB controller SPB connect tới thiết bị ngoại vi, giúp thiết bị ngoại vi tương tác với Windows phần mềm cài đặt SPB thường sử dụng kết nối với thiết bị ngoại vi tốc độ thấp với mainboard chipset SoC modules Một mạch tích hợp yêu cầu chân để kết nối với bus nối tiếp so với bus song song (parallel bus) Bởi SPBs chạy tốc độ thấp yêu cầu tiêu tốn điện cho https://docs.microsoft.com/en-us/windows-hardware/drivers/spb/spb-peripheral-device-drivers Bus đặc trưng số lượng thông tin truyền lúc thể bit, tốc độ bus xác định tần số (Hertz) mà ta thường thấy thông số RAM https://docs.microsoft.com/vi-vn/previous-versions/hh450903(v=vs.85) 21 connect nên chúng thường sử dụng app mà vấn đề tiêu thụ điện ưu tiên so với tốc độ truy cập Ví dụ motherboard laptop cài đặt Windows sử dụng IIC bus để giao tiếp với thiết bị ngoại vi lowspeed ví dụ webcam sensor vân tay để tiết kiệm pin SPB plug & play bus Các thiết bị ngoại vi thường fix cứng kết nối tới SPB khơng thể xố Dù cho thiết bị ngoại vi rút khỏi khe cắm SPB khe cắm thường dành riêng cho thiết bị Trong trình khởi động, ACPI firmware liệt kê thiết bị ngoại vi kết nối SPB cho trình quản lý plug&play định tài nguyên phần cứng dành riêng cho thiết bị - xác định ID Connection ID đóng gói chứa thơng tin mà SPB controller u cầu để khởi tạo kết nối tới device bao gồm : địa bus, xung nhịp bus (bus clock frequency) Một thiết bị ngoại vi kết nối thông qua SPB khơng ánh xạ nhớ truy cập thông qua SPB connection ID 2.2 Connection IDs for SPB - Connected Peripheral Devices Trước driver gửi I/O request tới thiết bị ngoại vi thơng qua SPB driver phải mở kết nối logic tới thiết bị Thông qua kết nối này, driver gửi read/write request để chuyển liệu với thiết bị ngoại vi Thêm nữa, driver gửi lệnh I/O control (IOCTL) request tới thiết bị Ngay từ khởi động, Plug and Play (PnP - cắm chạy) manager liệt kê toàn PnP non-PnP Với thiết bị ngoại vi khơng phải PnP trước tiên, PnP manager gọi đến ACPI firmware để lấy tham số kết nối (connection parameters) mô tả cách kết nối tới thiết bị Các tham số bao gồm ID cho SPB controller, bus mà thiết bị kết nối thông 22 tin khác địa bus, xung nhịp mà controller yêu cầu để giao tiếp với thiết bị PnP manager gán định danh (connection ID9) cho tham số kết nối kết nối lưu lại ID system datastore gọi resource hub (resource hub kho liệu bên (internal datastore) nơi mà PnP manager dùng để lưu trữ config cài đặt SPB-connected peripheral devices Khi driver thiết bị ngoại vi gọi tới function hệ thống để mở kết nối tới thiết bị driver cung cấp connection ID, function dùng connection ID để lấy tham số kết nối từ resource hub 2.3 Interrupts from SPB-Connected Peripheral Devices (Ngắt gián đoạn thiết bị ngoại vi với SPB) Nếu có định luật quán tính Newton (vật có xu hướng tiếp tục trì trạng thái) máy tính vậy, tiến trình tiếp tục chạy trừ bị gián đoạn Nếu khơng có u cầu ngắt máy tính tiếp tục trạng thái Mỗi tín hiệu đầu vào gây gián đoạn, buộc CPU phải dùng lại để xử lý kiện tương ứng Ví dụ q trình soạn thảo Word, người dùng bấm giữ phím mũi tên bàn phím (thiết bị ngoại vi) CPU phải xử lý tín hiệu (interrupt) gửi thơng tin tới Word để Word di chuyển trỏ Tức process bị gián đoạn - interrupt bấm phím Phần trình bày việc Windows xử lý tín hiệu interrupt gửi từ thiết bị ngoại vi Khơng giống vài bus ví dụ PCI bus tín hiệu interrupt gửi trực tiếp từ thiết bị ngoại vi tới xử lý SPB chẳng hạn IIC SPI gửi tín hiệu interrupt thơng qua phần cứng riêng nằm bên ngồi SPB SPB controller Cụ thể, yêu cầu ngắt gửi từ SPB-connected tới Connection ID mà driver nhận số integer 64 bit Tuy nhiên để driver lấy tham số kết nối từ resource hub driver phải kết hợp ID với device_path_name Để lấy device path name driver gọi tới function RESOURCE_HUB_CREATE_PATH_FROM_ID 23 GPIO controller (general-purpose I/O) GPIO chuyển tiếp tín hiệu tới xử lý10 Kể từ Windows 8, UMDF (User-Mode Driver Framework) hỗ trợ ISRs cho UMDF drivers UMDF gọi hàm IWDFDevice3::CreateInterrupt để kết nối tới ISR để xử lý interrupt từ thiết bị.Trong đó, ISR(Interrupt Service Routine - gọi Interrupt handler11) service dùng để xử lý interrupt request gửi từ thiết bị ngoại vi ISR tiếp nhận xử lý request gửi tới CPU, tiến hành ngắt tiến trình hoạt động Cụ thể việc bấm phím mũi tên trên, ISR nhận tín hiệu gửi tới CPU, CPU gửi tới Word processor, trỏ di chuyển sang phải Khi người dùng nhả phím mũi tên ISR xử lý “key up event” Điều làm gián đoạn trạng thái “key down” trước đó, tín hiệu xử lý để dừng việc di chuyển trỏ Word 2.4 Atomic Bus Operations Thuật ngữ “atomic” thường sử dụng xử lý multiThreading ám thread sử dụng nhớ thread khác khơng thể thực việc thay đổi thêm sửa xố vùng nhớ thread kết thúc Thì Windows, thiết bị ngoại vi kết nối tới SPB SPB controller (hoặc driver bên ngồi cài riêng cho thiết bị đó) cần thực việc transfer liệu với thiết bị gọi atomic bus operation Q trình transfer liệu coi “atomic” khơng tiến trình transfer liệu tới thiết bị SPB controller hoàn thành nhiệm vụ Cách thức để client thực atomic bus operation gửi request IOCTL SPB EXECUTE SEQUENCE tới thiết bị ngoại vi Trong 10 https://docs.microsoft.com/vi-vn/windows-hardware/drivers/gpio/gpio-interrupts 11 https://techterms.com/definition/isr 24 request client liệt kê danh sách chuỗi thao tác đọc ghi thực thi theo thứ tự mà chúng liệt kê 2.5 Device Configuration Information Hình mơ tả cấu hình SPB, trường hợp này, IIC bus connect hai thiết bị ngoại vi với Soc module - chứa IIC controller GPIO controller Bộ xử lý dùng IIC controller để chuyển tiếp data với hai thiết bị ngoại vi Khi thiết bị gửi interrupt request GPIO controller gửi tín hiệu tới xử lý 2.6 Software and Hardware Layers 25 Sơ đồ khối mô tả lớp phần mềm lớp phần cứng mà kết nối thiết bị ngoại vi thông qua SPB tới ứng dụng, phần mềm Trong SPB peripheral device driver hình UMDF driver, thiết bị ngoại vi (tầng sơ đồ khối) sensor Và mơ tả, thiết bị kết nối tới IIC bus gửi tín hiệu interrupt request thơng qua GPIO controller Ba khối tô màu xám system-supplied modules Bắt đầu từ Windows 7, phần mở rộng lớp sensor (sensor class extension) khả dụng UMDF Từ Windows SPB framework extension 26 (SpbCx) GPIO framework extension (GpioCIx) khả dụng KMDF để thực hàm tương ứng SPB controller GPIO controller Ở tầng sơ đồ khối, ứng dụng gọi Sensor API Location API để giao tiếp với thiết bị ngoại vi Bằng API ứng dụng gửi I/O requests tới thiế bị nhận phản hồi cần thiết Khi ứng dụng gọi hàm Sensor API Location API khởi tạo I/O request gửi tới SPB peripheral device driver sensor class extension module xử lý SpbCx quản lý I/O requests tới SPB controller dạng queue IIC controller driver cung cấp nhà sản xuất phần cứng quản lý toàn hoạt động IIC controller 27 LỜI KẾT Máy tính bước vào sống lâu bền vững, tạo nên thay đổi cho giới khả lồi người Máy tính làm cho sống dễ dàng Mọi câu hỏi, băn khoăn, thay phải lục tung tài liệu để tìm câu trả lời, đơn giản lấy bàn phím gõ vài từ khóa vào Google Như nói máy tính quan trọng khơng có thiết bị ngoại vi máy tính khơng thể có bước tiến dài Ứng với thiết bị, hệ điều hành, đặc biệt Windows - hệ điều hành phổ biến lại có cách khác để tương tác điều khiển thiết bị cho đạt hiệu cao Khi hồn thành nghiên cứu này, nhóm thu nhận nhiều kiến thức bổ trợ từ việc tìm hiểu đề tài, biết loại thiết bị ngoại vi cách mà Windows quản lý điều khiển thiết bị Bên cạnh đó, nhóm muốn gửi lời cảm ơn tới thầy giáo Nguyễn Thanh Hải - thầy người giảng dạy tạo điều kiện cho nhóm có hội tìm hiểu nghiên cứu đề tài theo dõi, hướng dẫn sát sao, giải đáp khúc mắc nhóm gặp vấn đề khó giải q trình tìm hiểu Nhóm tiếp tục cố gắng hồn thiện kiến thức để đạt kết tốt mơn học ngun lý hệ điều hành thú vị thầy giảng dạy Xin chân thành cảm ơn! 28 ... https://www.statista.com/statistics/218089/global-market-share-of -windows- 7/ Nội dung ? ?Nghiên cứu quản lý thiết bị ngoại vi Windows? ?? bao gồm sau: Chương I: Định nghĩa phân loại thiết bị ngoại vi Chương II: Giới thiệu thiết bị ngoại vi Windows Chương... vào giới thiệu thiết bị ngoại vi, lịch sử hình thành số điểm thú vị xung quanh chúng II GIỚI THIỆU CÁC THIẾT BỊ NGOẠI VI TRONG WINDOWS Keyboard a Khái niệm: Là thiết bị ngoại vi dùng để nhập... hiểu thiết bị ngoại vi chúng thiết bị hoạt động độc lập (standalone devices), hoạt động gắn kết với điều khiển máy tính cài đặt hệ điều hành trình điều khiển Phân loại thiết bị ngoại vi Một thiết