BỘ CÔNG THƯƠNG
TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI
KHOA CÔNG NGHỆ THƠNG TIN
MƠN: NGUN LÍ HỆ ĐIỀU HÀNH
ĐỀ TÀI
Nghiên cứu tìm hiểu về quản lý thiết bị ngoại vi trong HĐH Linux
Giáo viên hướng dẫn: Nguyễn Thanh Hải
Nhóm 08
1.
2.
3.
4.
5.
Trần Viết Cường
Phạm Văn Đức
Hoàng Hữu Duy
Nguyễn Đăng Huy Hoàng
Đỗ Khánh Vinh
Hà Nội, Ngày 24 tháng 12 năm 2021
Trường Đại học Công Nghiệp Hà Nội – Khoa Công Nghệ Thơng Tin
MỤC LỤC
1. Tìm hiểu về thiết bị ngoại vi
1.1.
Thiết bị ngoại vi là gì?
1.1.1.
Khái niệm
1.1.2.
Phân loại
1.1.3.
Một số thiết bị ngoại vi phổ biến
1.2.
Nhận biết cổng và khe cắm trong máy tính
1.2.1.
Cổng là gì? Chức năng chính?
1.2.2.
Cổng nối tiếp và cổng song song
1.2.3.
Các cổng phổ biến. Công dụng của từng loại cổng, tốc
độ truyền dữ liệu
1.2.4.
Khe cắm PCI, ISA
2. Yêu cầu và nguyên tắc xử lí thiết bị ngoại vi
2.1.
Yêu cầu quản lý thiết bị ngoại vi
2.2.
Nguyên tắc phân cấp trong quản lý thiết bị ngoại vi
3. Các kĩ thuật trong quản lý thiết bị ngoại vi
3.1.
Kỹ thuật vùng đệm
3.2.
Kỹ thuật kết khối
3.3.
Xử lí lỗi
3.4.
SPOOL
4. Kết luận
2
Trường Đại học Công Nghiệp Hà Nội – Khoa Công Nghệ Thơng Tin
LỜI NĨI ĐẦU
Linux - hệ điều hành mã nguồn mở từ lâu đã khơng cịn xa lạ với người
dùng máy tính, nó thu hút được nhiều sự chú ý nhất trong vòng vài năm trở lại
đây. Ngay từ khi xuất hiện, nó đã được lan rộng một cách nhanh chóng và biết
tới như một hệ điều hành Unix với mã nguồn mở. Thật ngạc nhiên, sự thành
công của Linux có được nhờ sự làm lại một trong những hệ điều hànhlâu đời
nhất và hiện đang được sử dụng rộng rãi – hệ điều hành Unix.
Linux bao gồm cả các cơng nghệ cũ và mới. Nhìn từ góc độ kỹ thuật,
Linux chi là một nhân hệ điều hành, nó hỗ trợ đầy đủ các phục vụ cơ bản về
quản lý tiến trình, bộ nhớ ảo, quản lý file và vào ra thiết bị. Nói cách khác, bản
thân Linux là phần thấp nhất của hệ điều hành. Tuy nhên, còn khá nhiều rắc rối
và bất cập khiến HĐH miễn phí này chưa thể thay thế hồn tồn Window là nó
khá rắc rối khi cài đặt, cực hình với những dịng lệnh, khơng thể sử dụng tất cả
những ứng đụng có thể chạy trên win... và đặc biệt là không hỗ trợ hoàn toàn
thiết bị ngoại vi. Hầu hết những thiết bị ngoại vi thông thường như modem,
máy in, cạc mạng.... đều làm việc tốt dưới Linux. Tuy vậy có vài loại thiết bị
ngoại vi làm việc kém, có loại lại không làm việc.
Nhằm giới thiệu thêm những kiến thức cơ bản về cách quản lý thiết bị ngoại
vi trong hệ điều hành Linux, Nhóm chúng tơi viết bài luận này muốn được chia
sẻ với các bạn những gì chúng tơi biết về cách quản lý thiết bị ngoại vi trong hệ
điều hành mã nguồn mở này.
1. Tìm hiểu thiết bị ngoại vi
1.1.
Thiết bị ngoại vi là gì?
3
Trường Đại học Công Nghiệp Hà Nội – Khoa Công Nghệ Thông Tin
1.1.1. Khái niệm
- Thiết bị ngoại vi là tên chung nói đến một số loại thiết bị bên ngồi
thùng máy được gắn kết với máy tính với tính năng nhập xuất (IO)
hoặc mở rộng khả năng lưu trữ (như một dạng bộ nhớ phụ).
- Các thiết bị ngoại vi:
Màn hình.
Ổ đĩa mềm.
Ổ đĩa quang (CD, DVD)
Ổ đĩa cứng.
USB, thẻ nhớ, ...
Bàn phím.
Chuột.
Loa, tai nghe.
1.1.2. Phân loại
1.1.2.1. Thiết bị nhập dữ liệu
- Thiết bị nhập dữ liệu là thiết bị chuyển đổi dữ liệu con người
có thể hiểu được sang dạng dữ liệu máy tính hiểu được
- Ví dụ: Bàn phím, chuột, thiết bị đọc thẻ từ…
1.1.2.2. Thiết bị xuất dữ liệu
- Thiết bị xuất: Chuyển đổi dữ liệu máy tính xử lí được sang
dạng dữ liệu mà con người hiểu được
Dữ liệu hiển thị (bản mềm): biểu diễn trên màn hình thiết bị
Dữ liệu in ấn (bản cứng): biểu diễn trên giấy
- Ví dụ: Màn hình, máy in, …
1.1.2.3. Thiết bị vừa nhập vừa xuất
- Ví dụ: Đĩa cứng, đĩa mềm, …
1.1.3. Một số thiết bị phổ biến
- Màn hình máy tính:
Là thiết bị điện tử được gắn trực tiếp trên máy tính đảm nhận
chức năng hiển thị và giao tiếp giữa người dùng với máy tính.
Máy tính cá nhân có thể tách rời màn hình cịn máy tính xách tay
thì khơng thể.
4
Trường Đại học Công Nghiệp Hà Nội – Khoa Công Nghệ Thơng Tin
- Chuột
Chuột máy tính cũng là một thiết bị ngoại vi dùng để điều khiển và
làm việc trực tiếp với máy tính thơng qua con trỏ chuột trên màn
hình hiển thị.
- Loa máy tính
Là thiết bị phát ra âm thanh được tích hợp sẵn nhằm phục vụ cho
việc giao tiếp và giải trí.
5
Trường Đại học Công Nghiệp Hà Nội – Khoa Công Nghệ Thông Tin
- Webcam
là một loại máy quay phim kỹ thuật số được chế tạo riêng
cho máy tính cá nhân nhằm giúp người dùng thực hiện các
cuộc gọi video, gửi thư bằng hình ảnh, tải hình ảnh.
- Ổ cứng gắn ngoài hoặc ổ cứng di động
Ổ cứng là bộ nhớ không bao giờ bị mất dữ liệu ngay cả khi mất
điện hay bị ngừng cấp điện.
Thiết bị ngoại vi này dùng để lưu trữ dữ liệu trên bề mặt các
tấm đĩa hình trịn phủ vật liệu từ tính.
Ổ cứng được lắp cố định trong máy tính nên không thể thay thế
được.
1.2.
Nhận biết cổng và khe cắm trong máy tính
1.2.1. Khái niệm
- Một cổng kết nối trên máy tính đóng vai trị như là một giao diện
hay đơn giản là một điểm kết giao tiếp giữa máy tính và các thiết
bị ngoại vi khác
- Chức năng chính của một cổng trên máy tính là một điểm gắn kết,
cáp từ thiết bị ngoại vi có thể được cắm vào và thơng qua đó, cho
phép dữ liệu truyền đi và đến thiết bị.
6
Trường Đại học Công Nghiệp Hà Nội – Khoa Công Nghệ Thông Tin
1.2.2. Cổng nối tiếp và cổng song song
1.2.2.1. Cổng nối tiếp (Serial port)
- là một cổng thông dụng trong các máy tính trong các máy
tính truyền thống dùng kết nối các thiết bị ngoại vi với máy
tính như: bàn phím, chuột điều khiển, modem, máy quét, ...
- Cổng nối tiếp cịn có tên gọi khác là Cổng COM.
1.2.2.2. Cổng song song
- Cổng song song (chuẩn LPT) truyền được nhiều bit tại một
thời điểm. Cổng này thường được được dùng để kết nối máy
in, máy vẽ, máy quét. Cổng này sử dụng chủ yếu loại đầu nối
25 chân và chiều dài cap không quá 2m.
1.2.3. Các loại cổng phổ biến
1.2.3.1. HDMI
- HDMI (High-Definition Multimedia Interface) là giao diện
kỹ thuật số để kết nối các thiết bị có độ nét cao và siêu nét
như màn hình máy tính, HDTV, đầu đĩa Blu-Ray, các thiết bị
chơi game hay máy ảnh độ nét cao, …
7
Trường Đại học Công Nghiệp Hà Nội – Khoa Công Nghệ Thông Tin
1.2.3.2. Cổng kết nối USB-Type C
- USB-Type C là cổng kết nối thế hệ mới thay thế cho USBType A đã được trang bị cho một số dòng laptop mới hiện
nay, thậm chí cịn được trang bị cho cả smartphone.
1.2.3.3. Cổng kết nối USB-Type A (USB 2.0 và 3.0)
Thông thường cổng USB 3.0 được phân biệt với cổng 2.0 bằng cách sơn
xanh.
- Đây là loại cổng kết nối phổ biến nhất và có thể kế nối với
8
Trường Đại học Công Nghiệp Hà Nội – Khoa Công Nghệ Thông Tin
hầu hết các thiết bị ngoại vi hiện nay. Bao gồm cổng USB 2.0
và USB 3.0.
1.2.3.4. Giao thức Thunderbolt 3.
- Thunderbolt 3 được xem là giao thức kết nối trên laptop
nhanh nhất hiện nay với tốc độ truyền tải lên đến gần 5GB/s,
gấp 4 lần cổng USB 3.1.
1.2.3.5. Cổng kết nối VGA
Cổng VGA hơi lớn một chút
- Đây là loại cổng kết nối xuất hình ảnh tương tự analog. Mặc
dù ra đời từ rất lâu rồi nhưng cho đến hiện nay loại cổng này
vẫn rất phổ biến trên các loại laptop, TV và máy chiếu.
1.2.3.6. Cổng kết nối LAN RJ-45.
Cổng kết nối ETHERNET hay còn gọi là cổng LAN RJ-45
9
Trường Đại học Công Nghiệp Hà Nội – Khoa Công Nghệ Thông Tin
-
Cổng LAN RJ-45 là
cổng hỗ trợ kết nối
internet khơng thể
thiếu ở các loại máy
tính kể cả laptop và
PC. Với ưu điểm là
tốc độ kết nối ổn
định và mạnh hơn so
với sử dụng wifi, loại
cổng này vẫn được sử dụng thường xuyên ngày nay mặc dù
wifi rất phổ biến.
1.2.4. Khe cắm PCI, ISA
1.2.4.1. PCI
- PCI (Peripheral Component Interconnect) là khái niệm để
chỉ chuẩn giao tiếp giữa các linh kiện phần cứng máy tính với
nhau.
- Hiện nay có các chuẩn khe cắm PCI bao gồm: PCI x1, PCI
x4, PCI x8, PCI x16, PCI x32.
2. Yêu cầu và nguyên tắc xử lí thiết bị ngoại vi
2.1.
Yêu cầu quản lý thiết bị ngoại vi
- Chức năng của các thiết bị ngoại vi là đảm nhiệm việc truyền thông tin qua
lại giữa các bộ phận của hệ thống. Do đó, yêu cầu của Hệ điều hành là tìm
phương pháp tổ chức và truy nhập thông tin trên các thiết bị.
10
Trường Đại học Công Nghiệp Hà Nội – Khoa Công Nghệ Thơng Tin
- Ngồi các thiết bị ngoại vi có tính chất bắt buộc (màn hình, bàn phím, chuột,
máy in, …) thì các hệ thống máy tính phải có khả năng kết nối với số lượng
tùy ý các thiết bị ngoại vi bổ sung. Các thiết bị ngoại vi này có thể khác nhau
về bản chất và nguyên lý hoạt động, vì vậy Hệ điều hành cần phải tìm cách
quản lý, điều khiển và khai thác các thiết bị một cách có hiệu quả.
- CPU khơng làm việc trực tiếp với các thiết bị ngoại vi do đó cần phải tổ
chức các thiết bị sao cho CPU không phụ thuộc vào sự biến động của các
thiết bị.
2.2.
Nguyên tắc phân cấp trong quản lý thiết bị ngoại vi
2.2.1. UCB và Driver
2.2.2. Kênh vào ra
• Máy tính thế hệ I và II: Processor làm việc trực tiếp với thiết bị
ngoại vi,
• Hạn chế: Tốc độ - Số lượng - Chủng loại,
• Từ thế hệ III trở lên:
Phân kênh vào ra
Bộ điều khiển kênh (Controllers)
•
•
•
•
Phép trao đổi vào ra: thực hiện theo nguyên lý Macroprocessor,
Với máy vi tính: Thiết bị điều khiển vào ra I/O Card,
Máy Card on Board
Lập trình trên Card vào/ra: Viết TOOLS khởi tạo chương trình
kênh,
• Khái niệm kênh bó (Multiplex), Card Multimedia:
11
Trường Đại học Công Nghiệp Hà Nội – Khoa Công Nghệ Thông Tin
Processor TB điều khiển TB ngoại vi
3. Các kĩ thuật áp dụng trong quản lí thiết bị.
3.1.
Kĩ thuật vùng đệm.
3.1.1. Khái niệm
- Vùng đệm là 1 vùng nhớ trung gian dùng làm nơi lưu trữ thông
tin tạm thời trong các thao tác vào/ra.
- Để thực hiện 1 thao tác vào/ra, hệ thống cần phải thực hiện các
bước sau:
Kích hoạt thiết bị.
Chờ thiết bị đạt trạng thái thích hợp.
Chờ thao tác vào/ra được thực hiện.
3.1.2. Phân loại vùng đệm
- Vùng đệm chung chuyển
- Vùng đệm xử lí
- Vùng đệm vịng trịn
3.1.3. Ví dụ:
- Bàn phím hoạt động bằng các chip xử lý bàn phím, chúng sẽ liên
tục kiểm tra trạng thái của ma trận quét (scan matrix) để xác định
công tắc tại các tọa độ X, Y đang được đóng hay mở và ghi một
mã tương ứng vào bộ đệm. Sau một khoảng thời gian nhất định
thì chức năng của các vùng đệm được trao đổi cho nhau vòng tròn
tức là vùng đệm vào thành vùng đệm xử lý, vùng đệm xử lý thành
vùng đệm ra và xuất ra màn hình
- Máy chơi game cầm tay:
12
Trường Đại học Công Nghiệp Hà Nội – Khoa Công Nghệ Thông Tin
Máy chơi game cầm tay được kết nối thơng qua cổng USB hay là
bluetooth. Khi nhận được tín hiệu điều khiển, tín hiệu sẽ được
đưa đến vùng nhớ đệm. Khi gặp lệnh đọc (read) xác định địa chi
thông tin, sau đó sẽ xử lí thơng tin trong vùng đệm trung chuyển
đó và đưa ra màn hình kết quả thông qua lệnh write. Cả việc vào
ra đều được tổ chức trong 1 vùng đệm.
3.2.
Kĩ thuật kết khối
- Để giảm số lần truy nhập vật lí, hệ thống cịn sử dụng kĩ thuật kết
khối tức là ghép nhiều bản ghi logic thành một bản ghi vật lí và
việc trao đổi thông tin giữa các bộ phận được tiến hành theo bản
ghi vật lí.
- Hệ thống file XFS: được phát triển bởi công ty Silicon Graphic
năm 1990 để khắc phục hạn chế của các hệ thống file hiện hành
về kích thước và số lượng partition directory và file.
XFS là hệ thống file 64 bits.
Kèm theo công cụ Volume Manager cho phép quản lý tới
128 Volume, mỗi Volume có thể được ghép lên tới 100
partition đĩa cứng vật lý, hỗ trợ chức năng journaling đối
với dữ liệu.
Khả năng bảo đảm tốc độ truy cập dữ liệu cho các ứng
dụng, cho phép các ứng dụng duy trì được tốc độ truy xuất
dữ liệu trên đĩa.
- Hệ thống file JFS: được phát triển bởi IBM, xây dựng cho các
internet file server với đặc điểm thời gian khởi động máy nhanh,
dung lượng chứa dữ liệu cao.
JFS là hệ thống file 64 bits.
JFS hỗ trợ journaling cho dữ liệu, dựa trên phương pháp
thường được sử dụng trong hệ cơ sở dữ liệu: ghi lại quá
trình thao tác thay đổi file (transaction).
Trong trường hợp có sự cố xảy ra thì hệ thống chỉ cần cho
khơi phục lại transaction trước đó mà không cần phải đọc
lại hết journal log, giúp cho quá trình phục hồi được nhanh
hơn.
JFS hỗ trợ tính năng Logical Volumes cho phép nối các
partition vật lý thành các partition logic với dung lượng
cao.
3.3.
Xử lý lỗi
13
Trường Đại học Công Nghiệp Hà Nội – Khoa Công Nghệ Thông Tin
- Phương pháp chủ yếu áp dụng trong chống lỗi vào/ra là giao trách
nhiệm phát hiện lỗi cho hệ thống. Nếu hệ thống không tự khắc
phục được sẽ thông báo lỗi cho người dùng tự giải quyết.
- Ổ cứng:
Kiểm tra lỗi trên ổ cứng bằng công cụ badblocks tool trên
Terminal. Công cụ này giúp người dùng phát hiện lỗi trên
ổ cứng và sửa chữa các lỗi đó bằng các mã sửa lỗi của hệ
thống. Hệ thống cung cấp cho người dùng công cụ để sửa
lỗi bằng các mã sửa lỗi được lập trình sẵn.
Cú pháp trên terminal:
$ sudo badblocks -v /dev/sdb: kiểm tra và hiển thị số lỗi
trên ổ có địa chỉ sdb. Nếu khơng có lỗi trả về “0 bad
blocks found”.
Nếu có bất kì lỗi nào thì hệ thống có cung cấp cho người
dùng các công cụ sửa lỗi như e2fsck (dành cho ext2 /
ext3 / ext4) và fsck với tệp badsectors.txt để hướng dẫn
hệ điều hành khơng ghi vào các bad sector đó.
Tuy nhiên trước khi sử dụng câu lệnh e2fsck đảm bảo các
ổ not mounted: chưa được liên kết (lệnh mount để thơng
báo cho hệ thống có tồn tại thiết bị nào đó. Do đó để sử
dụng bất kì thiết bị lưu trữ nào trên Linux đều cần đến
lệnh mount)
Ví dụ với ổ đĩa có địa chỉ là sda:
Cú pháp:
$ sudo e2fsck -l badsectors.txt /dev/sda
14
Trường Đại học Công Nghiệp Hà Nội – Khoa Công Nghệ Thông Tin
$ sudo fsck -l badsectors.txt /dev/sda
- USB
Khi đã cắm USB vào nhưng xuất hiện lỗi “device not
found” tức là thiết bị chưa kết nối đến máy tính. Hệ
thống không thể tự sửa lỗi mà gửi thông báo đến người
dùng để người dùng biết và cắm lại hoặc làm cách nào đó
để giải quyết.
3.4.
SPOOL (hệ thống mơ phỏng các phép trao đổi ngoại vi trong
chế độ trực tiếp)
- Nhiệm vụ của SPOOL là tạo ra các hiệu ứng sử dụng song song, các
chỉ thị chỉ được phép khai thác trong chế độ tuần tự. Việc mô phỏng
các thiết bị ngoại vi xuất hiện thiết bị ảo. Mỗi thiết bị ngoại vi cộng
với chương trình mơ phỏng sẽ tạo ra thiết bị hoàn toàn khác trong
tay người sử dụng.
- Bàn phím:
Khi khơng có một bàn phím gắn vào máy tính hoặc nếu
bạn chỉ muốn có một tùy chọn hiện đại hơn, bạn có thể
sử dụng tính năng bàn phím ảo trên hệ điều hành Linux.
Sử dụng lênh trên Terminal với câu lệnh:
$ onboard khi đó trên màn hình hiện ra bàn phím để
người dùng có thể thao tác và sử dụng song song với bàn
phím. Thơng tin trên thiết bị ảo sẽ được chuyển đến thiết
bị thật.
15
Trường Đại học Công Nghiệp Hà Nội – Khoa Công Nghệ Thông Tin
- Máy in (Printer)
Các tài liệu sẽ được in được lưu trữ trong SPOOL và sau
đó được thêm vào hàng đợi để in. Trong thời gian này,
nhiều quy trình có thể thực hiện các hoạt động của chúng
và sử dụng CPU mà không cần chờ đợi trong khi máy in
thực hiện quy trình in trên tài liệu từng cái một.
Nhiều tính năng cũng có thể được thêm vào quá trình in
Spooling, như đặt mức độ ưu tiên hoặc thơng báo khi q
trình in đã hồn thành hoặc chọn các loại giấy, cỡ giấy
khác nhau để in theo sự lựa chọn của người dùng.
16
Trường Đại học Công Nghiệp Hà Nội – Khoa Công Nghệ Thơng Tin
KẾT LUẬN
Như vậy ta có thể thấy từ khi ra đời đến này, tính đến thời điểm hiện tại,
Linux đã có rất nhiều biến thể và phiên bản khác nhau, được xây dựng và phát
triển riêng biệt bởi các công ty phần mềm và các cá nhân. Hiện nay, sau hơn 20
năm tồn tại và phát triển, Linux được sử dụng rộng rãi trên toàn thế giới, trên các
máy tính cá nhân, các máy chủ, đến các thiết bị di động, máy nghe nhạc, máy tính
bảng, các máy ATM và thậm chí trên cả các siêu máy tính... Ngày nay, Linux được
xem là biểu tượng của sự chia sẻ cộng đổng, được phát triển bởi cộng đồng và
được ủng hộ vì hồn tồn miễn phí. Với những tính năng ngày càng tiên tiến, hệ
thống File được nâng cấp, hoàn thiện đáp ứng nhu cầu của người sử dụng. Hệ điều
hành Linux sẽ ngày càng phát triển trong tương lai.
17