Chế ngự ổ đĩa mềm
Chế ngự ổ đĩa mềm Thanh hoà, The Best of DOS World 8/96. Sử dụng cả hai công cụ của DOS là DRIVPARM và DRIVER.SYS có thể giúp bạn làm việc với các ổ đĩa mềm một cách hiệu quả hơn. Tất nhên là chúng không giúp bạn lau đầu đọc hay tạo dây cáp mới, nh-ng chúng thêm rất nhiều khả năng linh hoạt cho thiết bị bạn đang có - và bạn sẽ thấy chúng vô giá khi các ổ đĩa khó tính không chịu giao tiếp với DOS theo cách bạn mong muốn. Lệnh DRIVPARM và chơng trình DRIVER.SYS của nó có thể làm cầu nối giao tiếp tốt giữa bạn và những phơng tiện lu trữ bớng bỉnh này. Sau một thời gian sử dụng máy PC, chắc chắn bạn đã nhận thấy rằng ổ đĩa mềm là phần yếu nhất và gây rắc rối nhất của mọi hệ máy tính. Những vấn đề thờng hay gặp nhất là: - Làm thế nào để sửa DOS khi nó cứ khăng khăng đòi hiển thị th mục từ một ổ đĩa đã đợc rút ra khỏi ổ đĩa? - Nếu bạn chỉ sử dụng đĩa 360K và 720K double-density, làm cách nào cho DOS loại bỏ thói quen khó chịu là luôn tìm cách định dạng các đĩa đó nh đĩa 1,2MB và 1,44MB high-dinsity? - Làm sao có thể sử dụng ổ đĩa 3,5 inch hay ổ đĩa high-density nếu BIOS của bạn không biết gì về chúng? - Cách bổ sung một ổ đĩa mềm lắp ngoài (external floppy drive)? - Muốn sao từ một đĩa 3,5 inch sang một ổ đĩa khác trên máy chỉ có một ổ 5,25 và một ổ 3,5 thì làm thế nào? Có hai công cụ của hệ điều hành có thể giải quyết các vấn đề trên, đó là lệnh DRIVPARM và driver thiết bị DRIVER.SYS. DRIVPARM đem lại giải pháp cho ba vấn đề đầu, còn DRIVER.SYS cho hai vấn đề còn lại. Nếu bạn có rắc rối với DOS về ổ đĩa mềm, các lệnh này sẽ giúp giải quyết bất đ ồng. Để sử dụng một trong hai tính năng trên, bạn phải thêm lệnh vào file CON FIG.SYS (vị trí lệnh trong file không thành vấn đề). Nếu bạn không quen soạn thảo CONFIG.SYS và thử các lệnh mới, hãy đọc mục "An toàn trớc hết" trong bài này để có thể tiếp tục mà không làm nguy hại đến bất kỳ thành phần nào của máy. An toàn trớc hết Để thử nghiệm các ý tởng và các lệnh dới đây, bạn sẽ phải sửa file CONFIG.SYS đôi chút. Vì một lỗi chính tả hay lỗi khác trong CONFIG.SYS có thể làm cho máy tính không khởi động đợc, bạn nên có đĩa khởi động cấp cứu dự phòng. Bạn có thể tạo đĩa khởi động theo cách dới đây : FORMAT A:/S Sau đó thử khởi động từ đĩa mềm để yên tâm sửa file CONFIG.SYS trên đĩa cứng. Bạn có thể lu các file khác trên đĩa cấp cứu của mình, gồm cả bản sao các file CONFIG.SYS và AUTOEXEC.BAT của đĩa cứng, các trình tiện ích giúp bạn phục hồi nếu có trục trặc đĩa cứng. Nếu máy tính của bạn đang chạy DOS 6.x, bạn có một phơng án khác: giảm thiểu nguy cơ bị treo máy vì CONFIG.SYS bằng cách sử dụng cùng lúc menu đa cấu hình. Để làm điều này, hãy tạo một lựa chọn menu mới trong file CONFIG.SYS mà với nó bạn có thể thử nghiệm. Nếu có lỗi, hãy khởi động lại máy và chọn một trong các lựa chọn mà bạn chắc chắn sẽ làm việc; sau đó sửa lại dòng sai trong phần thử nghiệm file CONFIG.SYS. Bạn cũng có thể nhấn F5 hay F8 để bỏ qua hoàn toàn phần sử lý CONFIG.SYS hoặc sử lý từng dòng một và bỏ qua chỗ có lỗi. Đặt các tham số ổ đĩa Thông thờng, chơng trình cài đặt máy tính chứa thông tin về các ổ đĩa mềm và dung lợng của chúng. Nhng ổ đĩa của bạn có thể không tơng ứng với định nghĩa BIOS chu ẩn, hoặc có các đòi hỏi riêng. Khi ấy bạn nên dựa vào DRIVPARM để thiết lập mối liên hệ tốt hơn giữa ổ điã và DOS. Bạn chỉ có thể sử dụng DRIVPARM khi BIOS và DOS đã nhận biết ổ đĩa mà vì l ý do gì đó không thể làm việc với nó theo ý bạn. Tuy nhiên, cú pháp của DRIVPARM khá rắc rối, đó là l ý do vì sao ngời sử dụng ít khi nghĩ đến việc thử nó (xem mục "Cú pháp của DRIVPARM"). Phần lớn các ổ đĩa mềm có thể gửi tín hiệu đổi tuyến (changeline singnal) tới máy khi bạn mở cửa ổ đĩa. DOS sử dụng tính hiệu này để quyết định xem nó có cần đọc lại th mục ổ đĩa của bảng FAT hay không. Nếu DOS cho rằng ổ đĩa có thể gửi tín hiệu nh vậy, nó thờng sẽ không đọc lại các v ùng hệ thống quan trọng này cho tới khi bạn đổi đĩa. Nhng nếu nó cho rằng ổ đĩa không thể gứi tín hiệu m ở cửa, nó sẽ đọc lại th mục và bảng FAT mỗi khi bắt đầu một lần truy nhập đĩa. Một trong các ứng dụng thờng xuyên nhất của DRIVPARM là giúp DOS có khả năng đổi tuyến. Đã có trờng hợp đờng dây tín hiệu bị đứt sau khi làm việc hữu hiệu trong một, hai năm, hoặc là do dây cắm ổ đĩa bị ép cong, hoặc một sensor ngay trong ổ đĩa bị hỏng. Trong trờng hợp nào bạn c ũng vẫn có thể sử dụng ổ đĩa đó, mặc dù không hoàn toàn hiệu quả. Để làm điều này, hãy thêm một lệnh vào CONFIG.SYS thông báo cho DOS biết rằng ổ đĩa mềm này không có khả năng phát hiện s ự đổi tuyến. Khi đó, DOS sẽ đọc lại th mục và bảng FAT trớc khi truy nhập đĩa. Đối với một ổ đĩa 1,2MB đợc chỉ định là ổ A, lệnh thích hợp là : DRIVPARM=/D:0/F:1 Đối với ổ đĩa mềm 1,44MB đợc chỉ định là ổ A, hãy sử dụng lệnh: DRIVPARM=/D:0/F:7 Bỏ qua tham số/C có nghĩa là ra lệnh cho DOS không chờ tín hiệu đổi tuyến. Tránh các nhợc điểm format Nếu là ngời thận trọng về dữ liệu, bạn sẽ không bao giờ thử format một đĩa 360K double-dentish hay 720K thành 1,2MB hay 1,44MB. Nhng DOS có một thói quen khó chịu là luôn tìm cách format đĩa mềm theo dung lợng lớn nhất của ổ đĩa. Bạn có thể khắc phục bằng các tham số khác nhau, nhng nếu quên, bạn sẽ phá hỏng đĩa double-density. Nếu luôn làm việc với đĩa double-density (hoặc đĩa high-density trên ổ 2,88MB), bạn có thể sử dụng DRIVPARM để đặt dung lợng cực đại mới cho ổ đĩa. Chẳng hạn, lệnh sau đây buộc DOS coi ổ A (/D:O) là double-density (/F:O): DRIVPARM=/D:0/F:0/C Mặt khác nó cũng ra lệnh cho DOS rằng ổ đĩa B có dung lợng cực đại là 720K: DRIVPARM=/D:1/F:2/C Cả hai lệnh đều buộc DOS chờ tín hiệu đổi tuyến từ ổ đĩa. Bạn sẽ có đợc kết quả thú vị nếu thiết lập một ổ đĩa ít hơn dung lợng c ực đại. Trớc hết, nó có thể đọc đĩa dễ dàng hơn. Thứ hai, bạn sẽ không thể format đĩa high-density thành 1,2 MB hay 1,44MB, nhng vẫn có thể đọc hoặc ghi lên các đĩa high-density đã format (trên một ổ đĩa khác) thành đĩa high-density. Tuy nhiên, vì chỉ có thể format đĩa ở dung lợng cực đại mà bạn đã thiết lập hoặc ở dung lợng thấp hơn, bạn có thể format các đĩa double-density mà không cần đa các tham số vào lệnh FORMAT. Đó có phải là lợi điểm? Nếu bạn chỉ làm việc với đĩa double-density, thì đúng là nh vậy. Nếu bạn chuyển đổi giữa các đĩa mềm double-density và high-density, bạn có thể sử dụng lệnh DRIVER.SYS, đợc mô tả trong phần "Bổ sung các ổ đĩa mới", để làm cho ổ đĩa vừa nh là double-density vừa nh là high-density. Cập nhật máy tính cũ Cuối cùng, bạn có thể sử dụng lệnh DRIVPARM nếu muốn cài đặt một ổ đĩa mềm mà BIOS không nhận biết đợc. Chẳng hạn, nhiều máy tính cũ không hề biết đến ổ đĩa 3,5 inch. Tất nhiên, bạn có thể nâng cấp BIOS của máy để cài đặt ổ đĩa 3,5 inch, hoặc có thể sử dụng DRIVPARM thay thế. Tham số /I buộc DRIVPARM cài đặt driver cho ổ đĩa mà bạn chỉ định. Ch ẳng hạn, nếu BIOS của máy không nhận biết đợc ổ B là ổ 1,44MB 3,5 inch, bạn có thể sử dụng lệnh sau: DRIVPARM=/D:1/F:7/I Với dòng này trong file CONFIG.SYS, bạn sẽ có thể dùng ổ đĩa 3,5 inch mới của mình trên bất kỳ máy tính và chạy DOS, với điều kiện bạn sử dụng dây cáp đúng loại và ổ đĩa tơng thích về mặt điện tử với bộ điều khiển đĩa. Trong phần lớn các trờng hợp, /I tránh cho bạn khỏi phải mua một bản BIOS nâng cấp, mà thận chí có khi không có cho các máy PC cũ. Mặc dù có thể sử dụng DRIVPARM để buộc DOS đặt các tham số mới cho ổ đĩa cứng, ổ băng từ hay ổ quang, rất ít ngời sử dụng nó cho mục đích này. Các ổ băng và ổ quang hầu nh luôn có phần mềm driver riêng; và một khi khởi động máy từ ổ đĩa cứng, bạn sẽ không muốn thay đổi các tham số của thiết bị này. Nhng bạn có thể sử dụng DRIVPARM trên máy tính cũ để buộc DOS nhận biết ổ đĩa cứng thứ hai có dung lợng lớn mà bạn không thể định nghĩa với BIOS. Hãy thử nghiệm để xem công dụng này có hữu hiệu trên máy tính của bạn hay không. Bổ sung các ổ đĩa mới DRIVPARM thay đổi các tham số của một ổ điã mà cả DOS và BIOS đều đã nhận biết đợc. Nhng khi muốn thêm vào một ổ đĩa mới mà DOS không nhận biết, bạn cần đến DRIVER.SYS. Cú pháp của DRIVER.SYS tơng tự nh DRIVPARM, nhng hạn chế hơn (xem mục "Sử dụng DRIVER.SYS"). Mặc dù vậy, đừng bỏ qua DRIVER.SYS chỉ vì lý do này. Nó có hai ứng dụng quan trọng mà DRIVPARM không có. Nhiều bộ điều khiển ổ đĩa có thể dùng cho 4 ổ đĩa mềm thay vì chỉ 2 ổ nh thờng đợc cài đặt trong máy. ổ thứ ba và thứ t thờng đợc gắn bên ngoài, trong hộp riêng và với ngu ồn điện riêng; bạn nối chúng với máy tính bằng dây cáp chuẩn cho ổ đĩa mềm. Vấn đề là ngay cả khi bạn cài đặt chúng một cách đúng đắn, BIOS và DOS của bạn vẫn có thể không nhận biết đợc. Và DRIRER.SYS sẽ làm cho máy nhận biết đợc các đĩa bên ngoài. Cú pháp cho ổ đĩa thứ ba (ổ đĩa mềm 1,44MB 3,5 inch hỗ trợ tín hiệu đổi tuyến) nh sau: DEVICE=C:\DOS\DRIVER.SYS /D:2 /F:7 /C Cú pháp cho ổ đĩa thứ t cũng nh vậy, nhng bạn nên sử dụng /D:3 để gọi nó: DEVICE=C\DOS\DRIVER.SYS /D:3 /F:7 /C Nếu thích bạn có thể chuyển DRIVER.SYS vào khối bộ nhớ trên bằng cách thêm DEVICE HIGH vào đầu dòng lệnh. DOS sẽ gán cho các ổ đĩa này chữ cái chỉ tên ổ đĩa (drive letter) gần nhất còn lại trong bản chữ cái. Chẳng hạn, nếu bạn có một ổ đĩa cứng và không sử dụng chơng trình nén đĩa nh DiskSpace, ổ đĩa mềm bên ngoài đầu tiên sẽ là D. Cú pháp của DRIVPARM Cú pháp cho lệnh DRIVPARM mà bạn chỉ có thể sử dụng trong file CON FIG.SYS khá rắc rối. Sử dụng các quy tắc cú pháp của Microsoft, nó có dạng sau: DRIVPARM=/D:d[/F:n][/H:h][/T:t][/S:s][/N][/C][/I] Trong tất cả các lệnh và tham số trên, chỉ có các chữ DRIVPARM, dấu =, và /D:d là bắt buộc. /D:d đặt tên ổ đĩa mà bạn muốn đặt tham số cho nó. Theo cách đánh số ổ đĩa của DRIVPARM, bạn sử dụng/D:0 để chỉ ổ A, /D:1 để chỉ ổ B, /D:2 để chỉ ổ C.v v. Mọi thứ khác trong dòng đều là lựa chọn tuỳ ý, mặc dù có lẽ bạn sẽ phải đa thêm ít nhất một hoặc hai thông tin mỗi khi sử dụng DRIVPARM. Chẳng hạn, bạn sẽ hầu nh luôn phải sử dụng lựa chọn /F:n của DRIVPARM; nó xác định kích thớc và loại ổ đĩa. DOS sở dụng các số sau để mô tả mỗi loại ổ đĩa mà nó hỗ trợ: * /F:0 chỉ ổ đĩa một mặt 160K hay 180K, hoặc ổ đĩa 5,25 inch hai mặt 320K hay 360K. * /F:1 chỉ ổ đĩa 1,2M 5,25 inch. * /F:2 chỉ ổ đĩa 720K 3,5 inch. * /F:5 chỉ ổ đĩa cứng. * /F:6 chỉ ổ đĩa băng từ. * /F:7 chỉ ổ đĩa 1,44MB 3,5 inch. * /F:8 chỉ ổ đĩa quang đọc/ghi. * /F:9 chỉ ổ đĩa 2,88MB 3,5 inch. Bạn có thể thắc mắc về F/:3 và /F:4, chúng đã đợc sử dụng ban đầu để hỗ trợ các ổ đĩa 8 inch, một loại đặc biệt mà giờ đây gần nh không còn nữa. Nếu bạn không chỉ rõ loại đĩa, DOS sẽ coi nh bạn đặt tham số ổ đĩa 720K 3,5 inch (loại 2). Nếu đang làm việc với ổ đĩa mềm chuẩn, bạn có thể bỏ qua các tham số /H:h, /T:t và /S:s. Các phần này định nghĩa số đầu đọc (head), track và sector mà ổ đĩa sử dụng và đợc đặt tự động bằng lựa chọn /F:n. Bạn sẽ phải tự đặt các lựa chọn này nếu đang sử dụng DRIVPARM để định nghĩa ổ băng từ, đĩa quang, hoặc một ổ đĩa mềm không thông thờng nh ổ đĩa có thể lu trữ 10 đến 20 MB chỉ trên một đĩa. Tham số /N cho DOS biết rằng phơng tiện ghi không tháo ra đợc thiết lập b ởi DRIVPARM. Tham số này thờng dành riêng cho đĩa cứng, mà đĩa cứng hiếm khi đợc thiết lập b ởi DRIVPARM. Bạn đừng bao giờ sử dụng DRIVPARM để định nghĩa các tham số mới cho đĩa kh ởi động máy; làm nh vậy bạn sẽ bị khoá máy, và còn có thể làm h ổ đĩa. Sự hiện diện của /C (lựa chọn đổi tuyến) có thể giải quyết nhiều vấn đề với một ổ đĩa không ổn định. Nếu bạn sử dụng /C, DOS coi nh ổ đĩa sẽ thông báo cho nó biết khi cửa m ở và đóng. Bạn có thể thông báo cho DOS rằng không có tín hiệu đổi tuyến bằng cách chỉ định r õ DRIVPARM cho ổ đĩa này và bỏ qua lựa chọn /C. Cuối cùng , tham số /I ra lệnh cho DOS cài đặt driver phần mềm cho ổ đĩa ngoài việc thiết lập các thông số của nó. Hãy sử dụng chức năng này nếu bạn đã thêm một ổ đĩa 3, 5 inch vào máy tính có BIOS cũ không hỗ trợ loại ổ đĩa này; đó là máy 8088 và một vài máy 80286 cũ. Tham số /I là một cách khác để thử cập nhật BIOS nếu máy tính của bạn chỉ có đĩa 3,5 inch. Các ổ đĩa ảo (phantom) Các ổ đĩa mềm bên ngoài đã từng rất thông dụng, nhng phần lớn chúng ta thờng làm việc với một hoặc hai đĩa mềm bên trong và một ổ đĩa cứng lớn, DRIVER.SYS lẽ ra đã tr ở nên vô dụng nếu nó không có một ứng dụng quan trọng khác :có thể gán chữ cái mới cho ổ đĩa mềm có s ẵn. Có khi nào bạn muốn đặt tên cho một ổ đĩa mềm vừa là B vừa là D? Điều này nghe có vẻ lạ lùng, nhng bằng cách sử dụng hai chữ cái cho một ổ đĩa, bạn có thể th ực hiện một vài mẹo mà thông thờng không thể thực hiện đợc. Giả thiết rằng bạn có thể sao chép file từ đĩa 3,5 inch sang đĩa kia? Một cách là sao chép file sang ổ đĩa cứng, tráo đĩa, và sau đó sao lại sang đĩa mới. Nhng có thể bạn không có đủ chỗ trên đĩa cứng, hoặc có thể bạn phải sao chép file từ đĩa 720K sang một số lợng ít hơn đĩa 1,44MB để lu. Một trong những cách khôn ngoan nhất để sao chép file sử dụng lệnh DOS nh COPY, XCOPY hay MOVE là gán cho ổ đĩa đó hai chữ cái, có thể là B và D. Trong trờng hợp này, chữ cái B chỉ ổ đĩa chu ẩn thứ hai, và D là ổ đĩa ảo sử dụng cùng một thiết bị phần cứng. Với thiết lập ổ đĩa ảo, bạn có thể dùng lệnh DOS nh sau: COPYB:\*.*D: Nếu cả B: và D: đều cùng chỉ một ổ đĩa, máy tính sẽ cho bạn biết khi nào phải nhét đĩa nguồn và đĩa đích vào. Nếu đã từng sao chép file từ A sang B trên một máy tính với chỉ một ổ đĩa, chắc chắn bạn đã đợc đọc các thông báo tơng tự. Một lý do khác để tạo ổ ảo là bạn có thể sử dụng một chữ cái cho đĩa double-density và chữ cái khác cho đĩa high-densty. Khi đó bạn có thể format đĩa trong ổ này (hay đọc các đĩa hỏng) bằng cách sử dụng chữ cái chỉ tên ổ đĩa phù hợp cho mỗi loại đĩa. Để tạo một ổ đĩa ảo, hãy sử dụng DRIVER.SYS để gán chữ cái mới cho một ổ đĩa đã có s ẵn. Chẳng hạn, để tạo một chữ cái chỉ tên ổ đĩa ảo cho ổ đĩa vật lý thứ hai của bạn (ổ B) và để cài đặt ổ ảo thành 720K 3,5 inch có hỗ trợ đổi tuyến, bạn có thể sử dụng lệnh DOS sau: DEVICE=C:\DOS\DRIVER.SYS /D:1 /F/:2 /C Nếu thờng sao chép dữ liệu từ đĩa này sang đĩa khác, bạn có thể thấy các ổ đĩa aỏ làm cho công việc đợc dễ dàng hơn. Sử dụng DRIVER.SYS Cú pháp format cho DRIVER.SYS mà bạn chỉ có thể cài đặt từ CON FIG.SYS nh sau: DEVICE=DRIVER.SYS/D:d[/F:n][/H:h][/T:t][/S:s][/C] Nếu nh thích, hãy sử dụng DEVICEHIGH thay cho DEVICE. Trừ khi bạn lu DRIVER.SYS trong th mục gốc của đĩa boot, phải ghi rõ đờng dẫn (path) đầy đủ vào lệnh (ví dụ : DEVICE=C:\DOS\DRIVER.SYS). Các lựa chọn cho DRIVER.SYS tơng tự với DRIVPARM, nhng chúng phức tạp hơn một chút. DRIVER.SYS đòi hỏi drive number (số mô tả ổ đĩa) d; cho phép mô tả ổ đĩa bằng kiểu loại (n) hay head (h), track (t) và sector (s); cho phép xác định ổ đĩa có thể báo cáo về thay đổi đĩa hay không. Tuy nhiên DRIVER.SYS chỉ hỗ trợ đĩa mềm, vì thế cả hai tham số /D: và /F: làm việc hơi khác một chút. DRIVER.SYS, cũng nh DRIVPARM, đòi hỏi drive number, sử dụng /D:0 để chỉ ổ đĩa A và D: 1 chỉ ổ đĩa B. Tuy nhiên, không nh DRIVPARM, DRIVER.SYS sử dụng /D:2 để chỉ ổ đĩa thứ ba là ổ đĩa bên ngoài thứ hai. Cũng nh DRIVPARM, DRIVER.SYS cần phải biết loại ổ đĩa nào đợc sử dụng. Tham số / F:n dùng cùng hệ thống đánh số nh F:n của DRIVPARM, nhng DRIVER.SYS chỉ hỗ trợ các ổ đĩa loại 0,1,2,7 và 9. * /F:0 chỉ ổ đĩa 5,25 inch một mặt 160K hay 180K hoặc hai mặt 320K hay 360K. * /F:1 chỉ ổ đĩa 1,2MB 5,25 inch * /F:2 chỉ ổ đĩa 720K 3,5 inch * /F:7 chỉ ổ đĩa 1,44MB 3,5 inch * /F:9 chỉ ổ đĩa 2,88MB 3,5 inch Hãy sử dụng lựa chọn /H:h, /T:t và /S:s để đặt số lợng head, track và sector nếu bạn đang d ùng ổ đĩa không thông thờng. Cuối cùng, /C làm việc giống nh với DRIVPARM, nếu ổ đĩa có thể gửi tính hiệu m ở cửa (đổi tuyến) tới DOS, bạn nên đa tham số này vào. Nếu ổ đĩa không thể gửi tin hiệu m ở cửa, hãy bỏ qua C/. . /F:1 chỉ ổ đĩa 1,2M 5,25 inch. * /F:2 chỉ ổ đĩa 720K 3,5 inch. * /F:5 chỉ ổ đĩa cứng. * /F:6 chỉ ổ đĩa băng từ. * /F:7 chỉ ổ đĩa 1,44MB. Cách bổ sung một ổ đĩa mềm lắp ngoài (external floppy drive)? - Muốn sao từ một đĩa 3,5 inch sang một ổ đĩa khác trên máy chỉ có một ổ 5,25 và một ổ 3,5