Câu hỏi Làm thế nào để tải một tập tin ISO vào RAM và khởi động MS-DOS từ nó?


Tôi không có nhiều kinh nghiệm trong việc này, vì vậy tôi ở đây để nhờ giúp đỡ.

Vấn đề của tôi là:

Tôi muốn tải một ISO vào RAM của tôi từ một ổ đĩa flash USB. Bao gồm trong đó ISO nên là một MS-DOS chạy (mà phiên bản không quan trọng lúc đầu tiên).

Tôi cũng muốn có một ISO thứ hai gắn vào RAM, nhưng những tập tin này cũng có thể được nạp vào hình ảnh đầu tiên, nếu nó có. (Tôi chỉ nhớ tối đa 1.44 MB đĩa mềm, không phù hợp).

Vì vậy, khi tôi rút phích cắm USB, tất cả dữ liệu sẽ được truy cập thông qua RAM.

Suy nghĩ đầu tiên của tôi là sử dụng GRUB để tải nó vào RAM và khởi động nó. Unfortunatelly nếu tôi chỉnh sửa ISO MS-DOS (theo bất kỳ cách nào, ví dụ: chuyển bố cục bàn phím hoặc bao gồm một tệp nhỏ khác), nó sẽ từ chối khởi động nó.

Tôi cần phải có một MS-DOS đã chỉnh sửa, vì tôi muốn bao gồm các tệp lệnh như cho xcopy, net use, NTFS4DOS và vân vân.

Vì vậy, khi khởi động, tôi muốn có MS-DOS bắt đầu với quyền truy cập vào các dữ liệu khác. Nếu điều này là trên cùng một "ổ đĩa" (nói ISO) hoặc trên một thứ hai không quan trọng.

Làm thế nào để tải MS-DOS và các tập tin bổ sung vào RAM và khởi động nó?

GRUB là không cần thiết, nó chỉ là những gì tôi tìm thấy rất lâu trên các nghiên cứu internet của tôi.


2
2017-08-06 15:21


gốc


Nếu bạn đang sử dụng máy tính Windows để thực hiện việc này, hãy thử sử dụng YUMI? Có một tùy chọn cho tùy chọn không khởi động ISO - GRUB khởi động từ RAM. Về khởi động MSDOS ISO, tại sao không chỉ cần chạy các lệnh cần thiết sau khi nó khởi động? Hoặc bạn có thể gắn kết ISO, chỉnh sửa tệp và đóng gói lại ISO không? Và bạn cũng có thể cân nhắc sử dụng FreeDOS - Darius
bạn đã cosidered bằng cách sử dụng một máy ảo thay vì khởi động trực tiếp vào DOS? bạn có thể gắn kết iso trên một máy ảo không có đĩa, và chỉ cần khởi động nó khi cần thiết. khá giống như khởi động từ đĩa mềm. - Frank Thomas
Tôi sẽ sử dụng điều này để bắt đầu một môi trường cài đặt cho một số máy tính, vì vậy một máy ảo trên một máy không đủ. - Trollwut


Các câu trả lời:


Dự án Syslinux chứa một bộ nạp khởi động được gọi là memdisk, có thể khởi động đĩa cứng ảo. Vì vậy, nếu bạn đặt MS-DOS của bạn cài đặt trên một đĩa cứng thay vào đó, nó sẽ tải đĩa vào bộ nhớ và khởi động từ nó. Bạn cũng có thể tải nhiều ảnh đĩa cứng để xem nhiều đĩa.

Tuy nhiên, các ổ đĩa chỉ hoạt động nếu phần mềm của bạn sử dụng int13 để truy cập đĩa và nó không hoạt động trên tất cả các BIOS. Ngoài ra, giải pháp này không sử dụng hình ảnh ISO ở tất cả - nhưng nếu nó hoạt động trên hệ thống của bạn, nó có thể giải quyết vấn đề của bạn.


1
2017-08-06 23:56





Bạn có thể sử dụng Rufus hoặc các tiện ích tương tự khác để tạo thẻ USB MS-DOS có thể khởi động như được mô tả đây.

Sau đó bạn phải tạo ramdisk và chuyển các tập tin hệ thống ở đó.

Đĩa cứu hộ Windows 98 sử dụng cách tiếp cận tương tự, trích xuất nội dung của tệp cab với các tiện ích trong đĩa RAM.


0
2017-08-06 15:33





Tôi muốn tải một ISO vào RAM của tôi từ một ổ đĩa flash USB. Bao gồm trong đó ISO nên là một MS-DOS chạy (mà phiên bản không quan trọng lúc đầu tiên).

MS-DOS sử dụng các cuộc gọi BIOS 16 bit thực tế để liệt kê và truy cập các đĩa, cũng như bất kỳ thứ gì DEVICE= hoặc là DEVICEHIGH= dòng trong của bạn CONFIG.SYS có thể cài đặt.

Bạn có thể nghĩ rằng sau đó bạn có thể tìm thấy một số đĩa RAM dựa trên DOS (RAMDRIVE.SYS? Đã lâu rồi ...) Vấn đề là khi DOS khởi động, nó cần tải IO.SYS và MSDOS.SYS, sau đó CONFIG.SYS và bất kỳ tệp nào CONFIG.SYS trỏ đến, và nó sẽ sử dụng các thói quen BIOS để thực hiện điều đó. Không có ổ đĩa RAM nào có sẵn cho đến ít nhất IO.SYS và MSDOS.SYS được tải - và nó sẽ cố gắng tải nó từ cùng một nơi nó được khởi động từ AFAIK.

Không có cách nào để "tải trước" mọi thứ từ CONFIG.SYS để vượt qua điều đó.

Vì vậy, trừ khi BIOS của bạn (không phải bất kỳ thứ gì khác) hỗ trợ tải một .ISO trong RAM và làm cho nó trông giống như một ổ cứng khác gắn vào hệ thống (mà không có gì - nhưng có một số BIOS vào cuối những năm 80 đã có DOS trong ROM và ), hoặc bạn chạy một bộ nạp lớp phủ thực hiện điều này trước khi khởi động MS-DOS (tôi không biết bất kỳ hoặc nếu điều đó thậm chí sẽ làm việc), bạn không thể làm điều này.


0
2017-08-06 16:11