Nhóm 1 | Học kì 2 |
TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP TP.HCM
KHOA CÔNG NGHỆ THÔNG TIN
oOo
MÔN HỌC: HỆ ĐIỀU HÀNH
TÊN TIỂU
Cơ chế Boot và cách cài đặt
MultiBoot nhiều hệ điều hành trên
cùng một máy đơn
LUẬN:
Nhóm thực
hiện:
1
Khoa:
Công nghệ thông
Giảng viên hướng dẫn:
Nguyễn Minh Hải
tin
TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP TP.HCM
KHOA CÔNG NGHỆ THÔNG TIN
oOo
MÔN
1.
Trần Quốc Vương
14045681
2.
Trần Xuân Toàn
14062151
3.
Nguyễn Hoàng Ngọc Hân
14071161
HÀNH
cài14022271
đặt
MultiBoot nhiều hệ điều hành trên
cùng một máy đơn
4.
Cơ chế
Boot
và cách
Nguyễn
Trung
Trực
HỌC: HỆ ĐIỀU
TÊN TIỂU LUẬN:
Nhóm thực
hiện:
1
Khoa:
Công nghệ thông tin
Giảng viên hướng dẫn:
Danh sách nhóm:
Nguyễn Minh Hải
Nhóm 1 | Học kì 2 |
Nội dung
I.
1.
Khái niệm:
Boot:
Trong máy tính, khởi động máy tính hay boot máy
tính (booting) là một quá trình tải hay tự mồi (bootstrapping) để khởi
động sự làm việc của hệ điều hành khi người dùng bật một hệ thống máy
tính.
1.1.
Boot sequence:
Một trình tự khởi động (boot sequence) là một tập hợp các lệnh
ban đầu được máy tính thực hiện khi nó được khởi động.
Trình tự khởi động, thường được gọi là thứ tự khởi động, là thứ tự
của các thiết bị được liệt kê trong BIOS mà máy tính sẽ tìm kiếm thông tin
về hệ điều hành.
Ổ đĩa cứng, ổ đĩa quang, ổ đĩa mềm, ổ đĩa flash, và các nguồn tài
nguyên mạng là tất cả các thiết bị tiêu biểu được liệt kê như là lựa chọn
thứ tự khởi động trong BIOS.
Trình tự khởi động cũng đôi khi được gọi là trình tự khởi động
trong BIOS hoặc thứ tự khởi động trong BIOS.
Trình khởi động (boot loader) sẽ nạp hệ điều hành chính vào máy
tính để hoạt động.
1.2.
Boot loader
Các hệ thống tính toán hoạt động được nhờ bộ xử lý trung tâm (hay
một tập hợp các bộ xử lý), chỉ có thể thực thi các đoạn mã ở bộ nhớ điều
hành, được biết đến với tên gọi là bộ nhớ hệ thống, với nhiều loại tùy
thuộc vào công nghệ sản xuất như: ROM (Read-Only Memory - bộ nhớ chỉ
đọc), hay RAM (Random Access Memory - bộ nhớ truy cập ngẫu nhiên).
Mã của các hệ điều hành, các chương trình ứng dụng và dữ liệu hiện nay
thường được lưu trữ trên các bộ nhớ bền, bộ nhớ ngoại vi, hay bộ nhớ
thứ cấp. Các ví dụ của các loại bộ nhớ đó là: hard disk (ổ cứng), CD, USB,
đĩa mềm. Khi một máy tính được bật, ban đầu nó dựa hoàn toàn vào các
mã và dữ liệu nằm trên những phần có sẵn của bản đồ bộ nhớ hệ thống,
như ROM, NVRAM hay CMOS RAM. Các đoạn mã và dữ liệu "cứng" được
lưu trữ trên bản đồ bộ nhớ hệ thống này là những hướng dẫn cần thiết tối
thiểu để truy nhập vào những thiết bị cứng ngoại vi và nạp vào bộ nhớ hệ
thống tất cả những phần cần thiết của hệ điều hành. Có thể nói trong
khoảng thời gian khởi động máy tính, hệ thống máy tính không có hệ điều
hành nào trong bộ nhớ trong. Tuy nhiên, nếu chỉ có phần cứng máy tính
không thôi (vi xử lý hay bộ nhớ hệ thống) thì không thể thực hiện được
những thao tác phức tạp để nạp các tệp tin chương trình từ hệ thống lưu
trữ vào bộ nhớ, mà đây vốn là một trong những tác vụ quan trọng nhất.
Chương trình giúp bắt đầu một chuỗi các lệnh được kết thúc bằng
việc toàn bộ hệ điều hành được nạp vào hệ thống gọi là "bootstrap loader".
Những nhà thiết kế máy tính thời kỳ đầu đã từng có ý tưởng: trước khi
một máy tính ở trạng thái hoạt động hoạt động, nó phải trải qua một giai
đoạn khởi động hay "mồi". Do đó, để thiết lập trạng thái hoạt động cho hệ
thống máy tính, một chương trình đặc biệt, dung lượng nhỏ, gọi là "trình
nạp khởi động" (tiếng Anh: "bootstrap loader" hay "bootstrap" hay "boot
loader"), sẽ được thực thi trước tiên. Chương trình này chỉ có nhiệm vụ
duy nhất là nạp các phần mềm khác để hệ điều hành có thể bắt đầu hoạt
động. Thường thì trình nạp khởi động gồm nhiều giai đoạn, mỗi giai đoạn
là một chương trình nhỏ hơn được thực hiện tuần tự, sau khi chương
trình này kết thúc sẽ gọi tiếp đến chương trình kia, cho đến khi chương
trình cuối cùng nạp hệ điều hành.
Những máy tính thời kỳ đầu có một dãy công tắc chuyển mạch (toggle
switch) ở bảng điều khiển cho phép người điều hành có thể nhập bằng tay
những lệnh khởi động bằng dưới dạng các số hệ nhị phân vào bộ nhớ
trước khi chuyển tiếp điều khiển cho CPU. Trình nạp khởi động sau đó sẽ
đọc hệ điều hành từ một bộ nhớ ngoài như băng đục lỗ, thẻ đục lỗ, hay
đĩa nhớ.
Mã giả với ngôn ngữ Assembly mô tả một quá trình nạp hệ thống đơn giản
gồm 8 bước:
0: Đặt thanh ghi P là 8
1: Kiểm tra thiết bị đọc băng đục lỗ sẵn sàng chưa
2: Nếu chưa sẵn sàng, nhảy đến 1
3: Đọc 1 byte từ băng đục lỗ vào bộ lưu
4: Nếu kết thúc băng, nhảy đến 8
5: Lưu bộ lưu vào địa chỉ trong thanh ghi P
6: Tăng thanh ghi P lên
7: Nhảy đến 1
Một ví dụ liên quan dựa trên một trình nạp hệ thống trong một máy tính
cá nhân của tập đoàn Nicolet Instrumet vào những năm 1970. Lưu ý: các
byte trong bước thứ hai (bước số 1) được đọc từ băng đục lỗ theo chiều
ngược.
0: Đặt thanh ghi P là 106
1: Kiểm tra thiết bị đọc băng đục lỗ sẵn sàng chưa
2: Nếu chưa sẵn sàng, nhảy đến 1
3: Đọc 1 byte từ băng đục lỗ vào bộ lưu
4: Lưu bộ lưu vào địa chỉ trong thanh ghi P
5: Giảm thanh ghi P
6: Nhảy đến 1
Boot loader (bộ nạp khởi động) là một chương trình máy tính nạp
một hệ điều hành hoặc một số phần mềm hệ thống khác cho máy tính sau
khi hoàn thành việc tự kiểm tra điện trên; nó là bộ nạp cho hệ điều hành
riêng của mình. Trong quá trình khởi động lại cứng, nó chạy sau khi hoàn
thành việc tự kiểm tra, sau đó tải và chạy phần mềm. Một bộ nạp khởi
động được nạp vào bộ nhớ chính từ bộ nhớ dai dẳng, chẳng hạn như một
ổ đĩa cứng hoặc, trong một số máy tính cũ, từ một phương tiện như thẻ
đục lỗ, băng đục lỗ, hoặc băng từ. Bộ nạp khởi động sau đó tải và thực
hiện các quá trình hoàn tất khởi động. Giống như quá trình POST, mã bộ
nạp khởi động xuất phát từ một vị trí "cứng có dây" và dai dẳng; nếu vị trí
đó quá giới hạn đối với một số lý do, mà bộ nạp khởi động chính gọi một
bộ nạp khởi động giai đoạn thứ hai hoặc một bộ nạp chương trình trung
học.
Trên các máy tính mục đích chung hiện đại, quá trình khởi động có
thể mất vài chục giây, và thường liên quan đến việc thực hiện một poweron self-test, định vị và khởi tạo các thiết bị ngoại vi, và sau đó tìm kiếm, tải
và bắt đầu một hệ thống điều hành. Quá trình ngủ đông hoặc ngủ không
liên quan đến khả năng khởi động. Tối thiểu, một số hệ thống nhúng
không đòi hỏi một trình tự khởi động đáng chú ý để bắt đầu hoạt động và
khi bật chỉ đơn giản là có thể chạy các chương trình hoạt động được lưu
trữ trong ROM. Tất cả các hệ thống máy tính là những cỗ máy nhà nước,
và khởi động lại có thể là phương pháp duy nhất để trở về một định zeronhà nước từ một trạng thái ngoài ý muốn, bị khóa.
Boot là viết tắt bootstrap hoặc bootstrap load và xuất phát từ cụm từ
để kéo mình lên nhờ nỗ của mình. Việc sử dụng gọi sự chú ý đến các yêu
cầu đó, nếu hầu hết các phần mềm được tải lên một máy tính bằng phần
mềm khác đang chạy trên máy tính, một số cơ chế phải tồn tại để tải các
phần mềm ban đầu vào máy tính. [4] máy tính sớm sử dụng một loạt các
phương pháp ad-hoc để có được một chương trình nhỏ vào bộ nhớ để giải
quyết vấn đề này. Việc phát minh ra bộ nhớ chỉ đọc (ROM) của nhiều loại
hình giải quyết nghịch lý này bằng cách cho phép các máy tính sẽ được
xuất xưởng với một chương trình bắt đầu lên mà không thể bị xóa. Tăng
trưởng trong khả năng của ROM đã cho phép hơn bao giờ hết xây dựng
bắt đầu các thủ tục để được thực hiện.
2.
MultiBoot:
MultiBoot là hành vi cài đặt nhiều hệ điều hành trên một máy tính, và
có thể chọn cái nào để khởi động . Thuật ngữ dual-booting đề cập đến cấu
hình chung của riêng hai hệ điều hành. MultiBoot có thể yêu cầu một tùy
chỉnh bộ nạp khởi động ( boot loader.).
Multi-boot cho phép nhiều hơn một hệ điều hành nằm trên một máy
tính, ví dụ nếu bạn có một hệ điều hành chính và một hệ thống thay thế
mà bạn sử dụng thường xuyên. Một lý do khác cho đa khởi động có thể
được để điều tra hoặc thử nghiệm một hệ điều hành mới mà không cần
chuyển đổi hoàn toàn. Multi-boot cho phép một hệ điều hành mới để cấu
hình tất cả các ứng dụng cần thiết, và di chuyển dữ liệu trước khi gỡ bỏ hệ
điều hành cũ, nếu muốn. Một lựa chọn có thể để đa khởi động là ảo, nơi
mà một hypervisor được sử dụng để lưu trữ một hoặc nhiều máy ảo chạy
hệ điều hành khách. Multi-khởi động cũng rất hữu ích trong các tình
huống mà các ứng dụng phần mềm khác nhau đòi hỏi các hệ thống điều
hành khác nhau. Một cấu hình đa khởi động cho phép người dùng sử
dụng tất cả các phần mềm này trên một máy tính. Điều này thường được
thực hiện bằng cách sử dụng một bộ nạp khởi động như NTLDR, LILO, vs
GRUB có thể khởi động nhiều hệ điều hành. Multi-khởi động cũng đã
được sử dụng bởi các nhà phát triển phần mềm, nơi nhiều hệ điều hành
đã được yêu cầu cho mục đích phát triển hoặc thử nghiệm. Có những hệ
thống trên một máy là một cách để giảm chi phí phần cứng.
Trong một máy tính đa khởi động từng nhiều hệ điều hành có thể cư
trú trên thiết bị lưu trữ riêng của mình, hoặc một số thiết bị lưu trữ có thể
chứa nhiều hơn một hệ điều hành trong các phân vùng khác nhau.
Một ví dụ về một máy tính với một hệ điều hành trên thiết bị lưu trữ là
một máy tính dual-boot mà các cửa hàng Windows trên ổ đĩa một đĩa và
Linux trên ổ đĩa khác. Trong trường hợp này một bộ nạp khởi động đa
năng khởi động là không thực sự cần thiết bởi vì người dùng có thể chọn
để vào cấu hình BIOS ngay lập tức sau khi mở điện và làm cho ổ đĩa mong
muốn đầu tiên trong danh sách khởi động theo thứ tự. Tuy nhiên, nó là
thuận tiện hơn để có một bộ nạp khởi động đa năng khởi động vào một
trong các ổ đĩa, thiết lập BIOS một lần để luôn luôn bắt đầu khởi động từ
(ví dụ, tải bộ nạp khởi động từ) ổ đĩa, và sau đó cho phép người dùng lựa
chọn một hệ điều hành từ menu boot loader của. Không có phân vùng đĩa
đặc biệt là cần thiết khi mỗi hệ điều hành có ổ đĩa chuyên dụng riêng của
mình.
Một ví dụ của một máy tính với nhiều hệ điều hành trên thiết bị lưu trữ
là một máy tính dual-boot mà các cửa hàng cả Windows và Linux trên ổ đĩa
cùng một đĩa. Trong trường hợp này một bộ nạp khởi động đa năng khởi
động là cần thiết. Ngoài ra, đĩa phải được phân chia cho mỗi hệ điều hành
phân vùng riêng trên ổ đĩa.
II.
Cơ chế Boot:
Dưới đây là một phác thảo của quá trình boot:
Mọi thứ bắt đầu hoạt độngkhi bạn nhấn nút nguồn trên máy. Một
khi các bo mạch chủ được cung cấp cho nó firmware riêng của mình - các
chipset và rẻ quạt khác - và cố gắng để cho CPU chạy. Nếu cólỗi vào thời
điểm này (ví dụ, các CPU bị hư) sau đó bạn có thể sẽ có một hệ thống
không hoạt động ngoài trừ quạt gió. Một vài bo mạch quản lý phát ra tiếng
bíp cho một CPU vắng mặt hoặc bị lỗi. Đôi khi USB hoặc các thiết bị khác
có thể gây ra điều này: rút tất cả các thiết bị không cần thiết là một cách có
thể sửa lỗi hệ thống ngưng hoạt động thế này. Sau đó bạn có thể loại ra các
thiết bị thủ phạm bằng cách loại bỏ.
Nếu tất cả đều ổn định thì CPU bắt đầu chạy. Trong một đa xử lý
hoặc đa lõi hệ thống một CPU được tự động chọn là bộ vi xử lý bootstrap
(BSP) mà chạy tất cả các BIOS và mã kernel khởi tạo. Các bộ vi xử lý, được
gọi là application processors (AP) còn lại vào thời điểm này, vẫn dừng lại
cho đến sau này khi được kích hoạt một cách rõ ràng bởi kernel. CPU của
Intel đã được phát triển trong những năm qua nhưng chúng hoàn toàn
tương thích ngược, vì vậy các CPU hiện đại có thểxử lý như bản gốc
1978 Intel 8086 , đó là chính xác những gì chúng làm sau khi bật
nguồn. Trong điện lên trạng thái nguyên thủy này, các bộ vi xử lý là
trong chế độ thực với bộ nhớ phân trangbị vô hiệu hóa. Điều này cũng
giống như cổ MS-DOS, nơi chỉ có 1 MB bộ nhớ có thể được giải quyết và
các mã có thể viết thư cho bất cứ nơi nào trong bộ nhớ - không có khái
niệm về bảo vệ hoặc đặc quyền.
Hầu hết các thanh ghi trong CPU có giá trị được xác định rõ sau khi
bật nguồn, bao gồm cả các con trỏ chỉ dẫn (EIP) mà giữ địa chỉ bộ nhớ cho
các hướng dẫn được thực hiện bởi CPU. CPU của Intel sử dụng một hack
theo đó mặc dù chỉ có 1MB bộ nhớ có thể được giải quyết tại điện lên, một
địa chỉ cơ sở ẩn (một bù đắp, về cơ bản) được áp dụng cho EIP để hướng
dẫn đầu tiên thực hiện là tại địa chỉ 0xFFFFFFF0 (16 byte ngắn cuối cùng 4
đồng biểu diễn của bộ nhớ và cũng ở trên một megabyte). Địa chỉ ma
thuật này được gọi là vector reset và là tiêu chuẩn cho các CPU Intel hiện
đại.
Bo mạch chủ này đảm bảo rằng các hướng dẫn tại vector thiết lập lại
là một bước nhảy đến vị trí bộ nhớ ánh xạ tới các điểm vào BIOS. Nhảy
này mặc nhiên xóa địa chỉ cơ sở ẩn hiện tại điện lên.Tất cả các vị trí bộ nhớ
có các nội dung cần thiết ngay bởi CPU nhờ vào bản đồ bộ nhớ lưu giữ
bởi chipset. Tất cả chúng được ánh xạ vào bộ nhớ flash có chứa BIOS kể từ
thời điểm này các mô-đun bộ nhớ RAM có tào lao ngẫu nhiên trong
đó. Một ví dụ về các vùng bộ nhớ có liên quan được hiển thị dưới đây:
Các CPU sau đó bắt đầu thực thi mã BIOS, khởi tạo một số các phần
cứng trong máy. Sau đó BIOS đá ra khỏi Power-on Self Test (POST) mà
kiểm tra các thành phần khác nhau trong máy tính. Thiếu một card màn
hình làm việc không POST và gây BIOS để ngăn chặn và phát ra tiếng bíp
để cho bạn biết những gì là sai, vì tin nhắn trên màn hình không phải là
một lựa chọn. Một card màn hình làm việc đưa chúng ta đến một giai đoạn
mà các máy tính trông còn sống: logo nhà sản xuất được in, bộ nhớ bắt
đầu được thử nghiệm, thiên thần thổi kèn sừng. Thất bại POST khác,
giống như một bàn phím mất tích, dẫn đến ngừng với một thông báo lỗi
trên màn hình.POST bao gồm một hỗn hợp của các thử nghiệm và khởi
tạo, bao gồm phân loại ra tất cả các nguồn lực - ngắt, những dãy bộ nhớ,
I / O ports - cho các thiết bị PCI. BIOS hiện đại theo các cấu hình nâng cao
và giao tiếp điện xây dựng một số bảng dữ liệu mô tả các thiết bị trong máy
tính;các bảng này sau đó được sử dụng bởi các kernel.
Sau khi POST BIOS muốn khởi động một hệ điều hành, trong đó
phải được tìm thấy ở đâu đó: ổ đĩa cứng, ổ đĩa CD-ROM, đĩa mềm, vv tự
thực tế mà BIOS tìm kiếm một thiết bị khởi động là người dùng có thể cấu
hình. Nếu không có thiết bị khởi động phù hợp BIOS ngừng với một
khiếu nại như "Non-System đĩa hoặc đĩa lỗi." Một ổ đĩa cứng chết có thể
gây ra với triệu chứng này. Hy vọng rằng điều này không xảy ra, BIOS tìm
thấy một đĩa làm việc cho phép khởi động để tiến hành.
BIOS bây giờ đọc 512 byte đầu tiên khu vực (khu vực không) của đĩa
cứng. Đây được gọi làMaster Boot Record và nó thường có chứa hai thành
phần quan trọng: một chương trình bootstrapping hệ điều hành cụ nhỏ
vào đầu MBR theo sau là một bảng phân vùng cho đĩa. BIOS tuy nhiên
không quan tâm đến bất cứ điều này: nó chỉ đơn giản là tải các nội dung
của MBR vào vị trí bộ nhớ 0x7c00 và nhảy đến vị trí đó để bắt đầu thực
hiện bất cứ điều gì đang ở MBR.
Các mã cụ thể trong MBR có thể là một bộ nạp Windows MBR, mã
từ bộ tải Linux như LILO hay GRUB, hoặc thậm chí là một virus. Ngược
lại bảng phân vùng là chuẩn: nó là một khu vực 64-byte với bốn mục 16byte mô tả làm thế nào đĩa đã được chia ra (do đó bạn có thể chạy nhiều hệ
điều hành hoặc có khối lượng riêng biệt trong cùng một đĩa). Theo truyền
thống, Microsoft MBR đang có một cái nhìn tại các bảng phân vùng, tìm
(chỉ) phân vùng đánh dấu là hoạt động, load các boot sector cho rằng phân
vùng, và chạy mã lệnh đó. Các khu vực khởi động là khu vực đầu tiên
của một phân vùng, như trái ngược với các khu vực đầu tiên cho toàn bộ
đĩa. Nếu có gì là sai với các bảng phân vùng mà bạn sẽ nhận được tin nhắn
như "Bảng phân vùng không hợp lệ" hoặc "Thiếu hệ điều hành." Thông
điệp này không đến từ BIOS mà là từ mã MBR nạp từ đĩa. Vì vậy, các
thông điệp cụ thể phụ thuộc vào các hương vị MBR.
Boot tải đã nhận được tinh vi hơn và linh hoạt theo thời gian. Các
bộ tải khởi động Linux Lilo và GRUB có thể xử lý một loạt các hệ điều
hành, hệ thống tập tin, và các cấu hình khởi động. Mã MBR của họ không
nhất thiết phải làm theo "khởi động phân vùng hoạt động" cách tiếp cận
được mô tả ở trên. Nhưng chức năng quá trình đi như thế này:
1.
MBR chính nó chứa giai đoạn đầu tiên của bộ nạp khởi động. GRUB
gọi giai đoạn này 1.
2.
Do kích thước nhỏ bé của nó, các mã trong MBR không chỉ đủ để tải
khu vực khác từ đĩa có chứa thêm đang boostrap. Khu vực này có thể
là khu vực khởi động cho một phân vùng, nhưng cũng có thể là một
lĩnh vực đã được mã hóa cứng vào mã MBR khi MBR đã được cài
đặt.
3.
Mã MBR cộng với mã nạp trong bước 2 sau đó đọc một tập tin có
chứa các giai đoạn thứ hai của bộ nạp khởi động.Trong GRUB này là
GRUB Giai đoạn 2, và trong Windows Server này là c: \ NTLDR. Nếu
bước 2 bị lỗi trong Windows, bạn sẽ nhận được một tin nhắn như
"NTLDR is missing". Mã giai đoạn 2 sau đó đọc một tập tin cấu hình
khởi động (ví dụ, grub.conf trong GRUB, boot.ini trong
Windows). sau đó nó thể hiện sự lựa chọn khởi động cho người sử
dụng hoặc chỉ đơn giản là đi trước trong một hệ thống đơn khởi
động.
4.
Tại thời điểm này mã bộ nạp khởi động cần phải cháy lên một
kernel. Nó phải biết đủ về hệ thống tập tin để đọc kernel từ phân
vùng khởi động. Trong Linux này có nghĩa là đọc một tập tin như
"vmlinuz-2.6.22-14-server" có chứa các kernel, tải các tập tin vào bộ
nhớ và nhảy đến mã kernel bootstrap. Trong Windows Server 2003
một số các kernel đang bắt đầu-up là tách biệt với hình ảnh kernel
chính nó và thật sự nhúng vào NTLDR. Sau khi thực hiện một số
khởi tạo, NTDLR tải hình ảnh kernel từ tập tin c: \ Windows \
System32 \ ntoskrnl.exe và, giống như GRUB không, nhảy đến điểm
vào kernel.
Có một biến chứng đáng nói (tức là, tôi đã nói với bạn điều này là
hacky). Các hình ảnh cho một kernel Linux hiện nay, thậm chí nén, không
phù hợp với 640K RAM có sẵn trong chế độ thực.Kernel vani Ubuntu của
tôi là 1,7 MB nén. Tuy nhiên, các bộ nạp khởi động phải chạy trong chế độ
thực để kêu gọi các thói quen BIOS để đọc từ đĩa, vì kernel rõ ràng là
không có sẵn tại thời điểm đó. Giải pháp là đáng kính chế độ không
thật . Đây không phải là một chế độ thực sự xử lý (Tôi muốn các kỹ sư của
Intel đã được cho phép để vui chơi như thế), mà là một kỹ thuật mà một
chương trình chuyển qua lại giữa chế độ thực và chế độ bảo vệ để truy cập
vào bộ nhớ trên 1MB trong khi vẫn sử dụng BIOS. Nếu bạn đọc mã nguồn
GRUB, bạn sẽ thấy những chuyển khắp nơi (nhìn dưới stage2 / cho các
cuộc gọi đến và real_to_prot prot_to_real).Vào cuối quá trình dính này
loader đã nhồi kernel trong bộ nhớ, bằng móc hoặc bởi kẻ gian, nhưng nó
để lại các bộ xử lý trong chế độ thực khi nó được thực hiện.
Chúng ta đang ở bước nhảy từ "Boot Loader" đến " Early Kernel
Initialization" như thể hiện trong sơ đồ đầu tiên. Đó là khi mọi thứ nóng
lên như kernel bắt đầu mở ra và thiết lập những chuyển động.
III.
1.
-
Cài đặt multiBoot:
Các khái niệm chung:
Ổ đĩa cứng - HDD
HDD (Hard Disk Drive) là ổ cứng truyền thống, nguyên lý hoạt
động cơ bản là có một đĩa tròn làm bằng nhôm (hoặc thủy tinh, hoặc gốm)
được phủ vật liệu từ tính. Giữa ổ đĩa có một động cơ quay để để đọc/ghi
dữ liệu, kết hợp với những thiết bị này là những bo mạch điện tử nhằm
điều khiển đầu đọc/ghi đúng vào vị trí của cái đĩa từ lúc nãy khi đang quay
để giải mã thông tin. Vì vậy mà các thao tác của bạn như chép nhạc, phim
hay dữ liều (Cài đặt phần mềm, game) nào đó từ máy tính ra thiết bị khác
(USB, Ổ cứng) nhanh hay chậm cũng phụ thuộc vào phần này, hơn nữa
chất liệu của các linh kiện trong ổ cứng này càng tốt thi dữ liệu bạn lưu
trên này sẽ an toàn hơn.
HDD có tốc độ quay 5400 rpm hoặc cao hơn là 7200 rpm (số vòng
quay càng cao thì ổ cứng hoạt động nhanh hơn đôi chút), ngoài ra HDD
cũng có nhiều thế hệ để đánh giá khả năng xử lý như trước thì có Sata 1,
cao hơn có Sata 2 (tốc độ đọc/ghi 200 MB/s), Sata 3 (tốc độ đọc/ghi 6
Gbp/s).
- Partition:
• Partition là một thuật ngữ phân mềm, nói đến một vùng
không gian chứa dữ liệu xác định trên ổ đĩa cứng.
• Có 2 loại phân vùng là:
o Primary: phân vùng khởi động, dùng để cài đặt
HDH(OS)
o Extended: phân vùng mở rộng, trong đó có thể chia nhỏ
thành các phần vùng Logical để chứa dữ liệu riêng. Phân
vùng Logical không có khả năng khởi động.
- File System:FileSystem của ổ đĩa cứng hay một phân vùng nói lên
cách lưu trữ, giao tiếp của hệ thống với dữ liệu có trên ổ đĩa hay
phân vùng đó . Các hang công nghệ đưa ra nhiều File System khác
nhau để phục vụ cho từng mục đích lưu trữ riêng của họ.
- Ổ đĩa cứng thông thường có 2 dạng:
• MBR: sử dụng MBR-Master Boot Record để quản lý toàn bộ ổ
đĩa , là định dạng phổ biến hiện nay
GPT:(GUIDPartitionTable) là định dạng tối ưu hơn, tuy nhiên
lại hơi khó hình dung cũng như sử dụng, được xem là định
dạng ổ đĩa cứng trong tương lai.
Trong đề tài này, các đĩa cứng được đề cập đều ở dạng MBR. Trong
một ổ đĩa định dạng MBR, chỉ cho phép tồn tại tối đa 4 phân vùng
Primary, hoặc 3 phân vùng Primary-1 phân vùng Extended. Phân
vùng Primary phải được Set Active mới khởi động được.
Đây cũng là 2 lỗi rất thường gặp của người dùng khi tự phân vùng ổ
đĩa.
•
-
-
2.
-
Khái niệm về File System
Journaling:
Điểm trước tiên cần tìm hiểu ở đây chính là Journaling trước khi
chúng ta nghiên cứu kỹ hơn về vấn đề này. Điều duy nhất các bạn
cần nhớ về journaling là tất cả các loại file hệ thống ngày nay đều
phải sử dụng journaling theo nhiều dạng khác nhau trên nền tảng
laptop hoặc desktop với Linux.
Journaling chỉ được sử dụng khi ghi dữ liệu lên ổ cứng và đóng vai
trò như những chiếc đục lỗ để ghi thông tin vào phân vùng. Đồng thời, nó
cũng khắc phục vấn đề xảy ra khi ổ cứng gặp lỗi trong quá trình này, nếu
không có journal thì hệ điều hành sẽ không thể biết được file dữ liệu có
được ghi đầy đủ tới ổ cứng hay chưa.
Chúng ta có thể hiểu nôm na như sau: trước tiên file sẽ được ghi
vào journal, đẩy vào bên trong lớp quản lý dữ liệu, sau đó journal sẽ ghi file
đó vào phân vùng ổ cứng khi đã sẵn sàng. Và khi thành công, file sẽ được
xóa bỏ khỏi journal, đẩy ngược ra bên ngoài và quá trình hoàn tất. Nếu xảy
ra lỗi trong khi thực hiện thì file hệ thống có thể kiểm tra lại journal và tất
cả các thao tác chưa được hoàn tất, đồng thời ghi nhớ lại đúng vị trí xảy ra
lỗi đó.
Tuy nhiên, nhược điểm của việc sử dụng journaling là phải “đánh đổi” hiệu
suất trong việc ghi dữ liệu với tính ổn định. Bên cạnh đó, còn có nhiều
công đoạn khác để ghi dữ liệu vào ổ cứng nhưng với journal thì quá trình
không thực sự là như vậy. Thay vào đó thì chỉ có file metadata, inode hoặc
vị trí của file được ghi lại trước khi thực sự ghi vào ổ cứng.
-
File System trong Linux:
-
•
•
Ext – Extended file system: là định dạng file hệ thống đầu tiên
được thiết kế dành riêng cho Linux. Có tổng cộng 4 phiên bản
và mỗi phiên bản lại có 1 tính năng nổi bật. Phiên bản đầu tiên
của Ext là phần nâng cấp từ file hệ thống Minixđược sử dụng
tại thời điểm đó, nhưng lại không đáp ứng được nhiều tính
năng phổ biến ngày nay. Và tại thời điểm này, chúng ta không
nên sử dụng Ext vì có nhiều hạn chế, không còn được hỗ trợ
trên nhiều distribution.
xExt2 thực chất không phải là file hệ thống journaling, được
phát triển để kế thừa các thuộc tính của file hệ thống cũ, đồng
thời hỗ trợ dung lượng ổ cứng lên tới 2 TB. Ext2 không sử
dụng journal cho nên sẽ có ít dữ liệu được ghi vào ổ đĩa hơn.
Do lượng yêu cầu viết và xóa dữ liệu khá thấp, cho nên rất phù
hợp với những thiết bị lưu trữ bên ngoài như thẻ nhớ, ổ
USB... Còn đối với những ổ SSD ngày nay đã được tăng tuổi
•
•
•
thọ vòng đời cũng như khả năng hỗ trợ đa dạng hơn, và chúng
hoàn toàn có thể không sử dụng file hệ thống không theo
chuẩn journaling.
Ext3 về căn bản chỉ là Ext2 đi kèm với journaling. Mục đích
chính của Ext3 là tương thích ngược với Ext2, và do vậy
những ổ đĩa, phân vùng có thể dễ dàng được chuyển đổi giữa 2
chế độ mà không cần phải format như trước kia. Tuy nhiên,
vấn đề vẫn còn tồn tại ở đây là những giới hạn của Ext2 vẫn
còn nguyên trong Ext3, và ưu điểm của Ext3 là hoạt động
nhanh, ổn định hơn rất nhiều. Không thực sự phù hợp để làm
file hệ thống dành cho máy chủ bởi vì không hỗ trợ tính năng
tạo disk snapshot và file được khôi phục sẽ rất khó để xóa bỏ
sau này.
Ext4: cũng giống như Ext3, lưu giữ được những ưu điểm và
tính tương thích ngược với phiên bản trước đó. Như vậy,
chúng ta có thể dễ dàng kết hợp các phân vùng định dạng
Ext2, Ext3 và Ext4 trong cùng 1 ổ đĩa trong Ubuntu để tăng
hiệu suất hoạt động. Trên thực tế, Ext4 có thể giảm bớt hiện
tượng phân mảnh dữ liệu trong ổ cứng, hỗ trợ các file và phân
vùng có dung lượng lớn... Thích hợp với ổ SSD so với Ext3,
tốc độ hoạt động nhanh hơn so với 2 phiên bản Ext trước đó,
cũng khá phù hợp để hoạt động trên server, nhưng lại không
bằng Ext3.
BtrFS – thường phát âm là Butter hoặc Better FS, hiện tại
vẫn đang trong giai đoạn phát triển bởi Oracle và có nhiều tính
năng giống với ReiserFS. Đại diện choB-Tree File System, hỗ
trợ tính năng pool trên ổ cứng, tạo và lưu trữ snapshot, nén
dữ liệu ở mức độ cao, chống phân mảnh dữ liệu nhanh
chóng... được thiết kế riêng biệt dành cho các doanh nghiệp có
quy mô lớn.
Mặc dù BtrFS không hoạt động ổn định trên 1 số nền tảng
distro nhất định, nhưng cuối cùng thì nó vẫn là sự thay thế
mặc định của Ext4 và cung cấp chế độ chuyển đổi định dạng
nhanh chóng từ Ext3/4. Do vậy, BtrFS rất phù hợp để hoạt
động với server dựa vào hiệu suất làm việc cao, khả năng tạo
snapshot nhanh chóng cũng như hỗ trợ nhiều tính năng đa
dạng khác.
Bên cạnh đó, Oracle cũng đang cố gắng phát triển 1 nền tảng
công nghệ nhằm thay thế cho NFS và CIFS gọi là CRFS với
nhiều cải tiến đáng kể về mặt hiệu suất và tính năng hỗ trợ.
•
•
Những cuộc kiểm tra trên thực tế đã chỉ ra BtrFS đứng
sau Ext4khi áp dụng với các thiết bị sử dụng bộ nhớ Flash
như SSD, server database...
ReiserFS: có thể coi là 1 trong những bước tiến lớn nhất của
file hệ thống Linux, lần đầu được công bố vào năm 2001 với
nhiều tính năng mới mà file hệ thống Ext khó có thể đạt được.
Nhưng đến năm 2004, ReiserFS đã được thay thế
bởi Reiser4với nhiều cải tiến hơn nữa. Tuy nhiên, quá trình
nghiên cứu, phát triển của Reiser4khá “chậm chạp” và vẫn
không hỗ trợ đầy đủ hệ thống kernel của Linux. Đạt hiệu suất
hoạt động rất cao đối với những file nhỏ như file log, phù hợp
với database và server email.
XFS được phát triển bởi Silicon Graphics từ năm 1994 để
hoạt động với hệ điều hành riêng biệt của họ, và sau đó chuyển
sang Linux trong năm 2001. Khá tương đồng với Ext4 về một
số mặt nào đó, chẳng hạn như hạn chế được tình trạng phân
mảnh dữ liệu, không cho phép các snapshot tự động kết hợp
với nhau, hỗ trợ nhiều file dung lượng lớn, có thể thay đổi
kích thước file dữ liệu... nhưng không thể shrink – chia nhỏ
phân vùng XFS. Với những đặc điểm như vậy thì XFS khá phù
hợp với việc áp dụng vào mô hình server media vì khả năng
truyền tải file video rất tốt. Tuy nhiên, nhiều phiên bản
distributor yêu cầu phân vùng /boot riêng biệt, hiệu suất hoạt
động với các file dung lượng nhỏ không bằng được khi so với
các định dạng file hệ thống khác, do vậy sẽ không thể áp dụng
với mô hình database, email và một vài loại server có nhiều file
log. Nếu dùng với máy tính cá nhân, thì đây cũng không phải
là sự lựa chọn tốt nên so sánh với Ext, vì hiệu suất hoạt động
không khả thi, ngoài ra cũng không có gì nổi trội về hiệu năng,
quản lý so với Ext3/4.
•
ZFS hiện tại vẫn đang trong giai đoạn phát triển bởi Oracle
với nhiều tính năng tương tự như Btrfs và ReiserFS. Mới
xuất hiện trong những năm gần đây vì có tin đồn rằng Apple sẽ
dùng nó làm file hệ thống mặc định. Phụ thuộc vào thỏa thuận
điều khoản sử dụng, Sun CDDL thì ZFS không tương thích
với hệ thống nhân kernel của Linux, tuy nhiên vẫn hỗ trợ toàn
bộ Linux’s Filesystem in Userspace – FUSE để có thể sử dụng
được ZFS. Người sử dụng có thể gặp khó khăn khi cài đặt hệ
điều hành Linux vì có yêu cầu FUSE và có thể không được hỗ
trợ bởi distributor.
•
Swap có thể coi thực sự không phải là 1 dạng file hệ thống,
bởi vì cơ chế hoạt động khá khác biệt, được sử dụng dưới 1
dạng bộ nhớ ảo và không có cấu trúc file hệ thống cụ thể.
Không thể kết hợp và đọc dữ liệu được, nhưng lại chỉ có thể
được dùng bởi kernel để ghi thay đổi vào ổ cứng. Thông
thường, nó chỉ được sử dụng khi hệ thống thiếu hụt bộ
nhớ RAM hoặc chuyển trạng thái của máy tính về chế
độHibernate.
File System trong Windows:
• FAT (File Allocation Table): là bảng định vị File trên đĩa , bảng
này liệt kê tuần tự số thứ tự của các cluster dành cho file lưu
trú trên đĩa. Cluster là một nhóm các sector liền kề nhau (còn
•
-
JFS được IBM phát triển lần đầu tiên năm 1990, sau đó
chuyển sang Linux. Điểm mạnh rất dễ nhận thấy của JFS là
tiêu tốn ít tài nguyên hệ thống, đạt hiệu suất hoạt động tốt với
nhiều file dung lượng lớn và nhỏ khác nhau. Các phân
vùngJFS có thể thay đổi kích thước được nhưng lại không thể
shrink như ReiserFS vàXFS, tuy nhiên nó lại có tốc độ kiểm
tra ổ đĩa nhanh nhất so với các phiên bảnExt.
•
•
gọi là liên cung). Số lượng sector có trong một Cluster là do hệ
điều hành áp đặt cho từng loại đĩa có dung lượng thích hợp.
Đĩa mềm thường được nhóm 2 sector thành một cluster. Với
đĩa cứng, số sector trong một cluster có thể là 4 , 8,16, 32 ... Khi
FAT đã chỉ định Cluster nào dành cho file thì toàn bộ các sector
trong cluster đó bị file chiếm giữ kể cả khi trong thực tế file chỉ
nằm trên một vài sector đầu của Cluster, còn các sector sau bỏ
trống. Rõ ràng ta thấy số sector trong một cluster càng nhiều
thì tình trạng lãng phí các sector bỏ trống mà file chiếm sẽ
càng lớn
FAT32: Xuất hiện cùng với bản Windows95 OEM Service
Release 2 (OSR2), có không gian địa chỉ 32 bit.
o Bằng việc tăng kích thước của bảng định vị tập tin, nó có
khả năng hỗ trợ nhiều cluster hơn với kích thước nhỏ
hơn trên những ổ đĩa cứng lớn, giảm sự lãng phí dung
lượng đĩa.
o Một cải tiến khác của FAT32 là nó cho phép đặt tên tập
tin đến 255 ký tự, trong khi FAT cũ chỉ cho phép tên tối
đa 8 ký tự.
o Ưu điểm của FAT32 là ngoài việc tăng dung lượng quản
lý địa chỉ từ 2GB lên 2TB, nó còn tăng cường độ tin cậy
nhờ khả năng chuyển sang sử dụng bảng FAT sao lưu
trong trường hợp bảng FAT mặc định bị hỏng.
o Tuy nhiên, FAT32 cũng có khuyết điểm là làm FileSystem
nặng nề và vì thế không hiệu quả trên những đĩa cứng
nhỏ hơn 260MB
NTFS:
o NTFS (New Technology File System), được đưa ra cùng
với Windows NT (cũng hỗ trợ FAT32).
o Với không gian địa chỉ 64 bit và khả năng thay đổi kích
thước của cluster độc lập với dung lượng đĩa, NTFS đã
loại trừ được những hạn chế về kích thước của cluster.
o Ngoài ra nó còn mang lại những ưu điểm khác như
thuộc tính bảo mật cho tập tin và thư mục, mã hoá tập
tin và hỗ trợ khả năng lưu trữ đến 16TB và 232 cluster.
o NTFS thay bảng FAT quen thuộc bằng bảng quản lý tập
tin MFT(MasterFileTable), có khả năng lưu trữ nhiều
thông tin về tập tin hơn FAT. MFT tham chiếu đến mọi
tập tin và thư mục có trên ổ đĩa, kể cả những siêu dữ liệu
tương ứng như thông số bảo mật. NTFS cũng có khả
năng chịu lỗi cao. NTFS không thích hợp với đĩa dưới
400MB và không thể dùng cho đĩa mềm.
3.
Đặc điểm phân vùng để cài hệ điều hành:
Thao tác phân vùng cho ổ đĩa có thể hiểu là phân chia lại các khoảng
không gian lưu trữ trên đĩa cho phù hợp với mục đích sử dụng.
-
Ưu điểm:
•
•
•
•
•
•
-
Tách hệ điều hành và dữ liệu thành các vùng riêng biệt.Giúp
quản lý, sao lưu, phục hồi… mà không ảnh hưởngtới dữ liệu.
Sử dụng nhiều hệ điều hành trên cùng một đĩa cứng.
Tạo khu vực riêng cho bộ nhớ ảo, tập tin phân trang củahệ
điều hành.
Quản lý các vùng dữ liệu độc lập. Một phân vùng lỗi sẽkhông
ảnh hưởng tới các phân vùng khác.
Dễ quản lý dữ liệu riêng tư bằng các biện pháp cần thiếtcho cả
một phân vùng. (vd: mã hóa)
Tăng tốc độ truy xuất dữ liệu trong một phần vùng: Vềmặt
phần cứng, đầu từ dễ dàng hoạt động liên tục hơntrong phạm
vi hẹp. Về mặt phần mềm, truy xuất tập tin từbảng quản lý tập
tin (vd như $MFT của NTFS) càng nhỏ thì càng nhanh.
Nhược điểm:
•
•
•
•
•
•
-
Các loại phân vùng:
•
•
-
Primary: là phân vùng thường dùng để cài đặt điềuhành.
Trong một ổ đĩa định dạng MBR, chỉ cho phéptồn tại tối đa 4
phân vùng Primary, hoặc 3 phân vùngPrimary - 1 phân vùng
Extended. Phân vùng Primaryphải được Set Active mới khởi
động được.
Extended: phân vùng này có thể chiếm phần còn lạihay chỉ
chiếm một phần của đĩa. Phân vùngExtended chứa các phân
vùng con Logical liên tụcnhau.
Ứng dụng phân vùng đĩa:
•
•
-
Giảm dung lượng lưu trữ của HDD (tăng dung lượng - ngầm
-cầnđể quản lý lưu trữ cho từng phân vùng.
Giảm năng lực lưu trữ thực của đĩa (vd: HDD ta có 2
phânvùng, mỗi phân vùng còn trống 10GB, ta không thể copy
mộtfile 15GB vào đâu mặc dù HDD thực sự còn trống đến
20GB).
Tăng khả năng phân mảnh dữ liệu > giảm tốc độ truy
xuấtchung, giảm khả năng cứu dữ liệu nếu lỗi phân vùng.
Chậm quá trình di chuyển tập tin trong đĩa (nếu cùng
phânvùng, Windows sẽ thực hiện sửa địa chỉ trên MFT - thao
tác move coi như xong, nhưng nếu khác phân vùng Windows
sẽphải thực hiện việc move khối dữ liệu thực sự)
Giảm tốc độ truy xuất dữ liệu trung bình toàn hệ thống:
Cáckhu vực dữ liệu thường xuyên được truy xuất trên toàn bộ
đĩa(theo thống kê của Windows) sẽ không gom được vào 1
vùng,giảm khả năng tối ưu đường đi của đầu đọc.
Vì vậy, ta không nên chia ổ cứng thành quá nhiều phân vùng.
Các ứng dụng phân vùng kèm theo của hệ điều hành haycác
hãng sản xuất ổ cứng thường khó sử dụng và đòi hỏingười
dùng phải nắm rõ ý nghĩa các thuộc tính và thông số chuyên
sâu. Chỉ có các phần mềm của bên thứ 3 nhưSymatec, Acronis,
Easeus…hay Gparted của cộng đồngLinux là dễ sử dụng, cập
nhật và hỗ trợ nhiều hơn.
Hiện tại ứng dụng Easeus partition manager - miễn phí -nhỏ
gọn chạy trên Windows và Acronis Disk Directorphiên bản cứu
hộ (Hiren’s Boot) là 2 ứng dụng thôngdụng để chuẩn bị đĩa
trước khi cài Windows hay Linux.
Trong đề tài, nhóm sẽ chuẩn bị sẵn 3 phânvùng để cài đặt hệ
điều hành:
•
•
4.
1 vùng cài Linux (Unallocated – khi cài đặt sẽ chọnMount point
root (/) và Swap vì nếu ta phân vùngsẵn, các phiên bản Fedora
và Ubuntu mới hiểu cácphân vùng đó là phân vùng cài Linux
khác nên việcxóa và chọn mount point sẽ khó và chậm hơn).
2 vùng cài hệ điều hành Windows (Primary partition– NTFS,
để Windows 7/8 không chiếm quyềnBootloader với Linux, ta
sẽ cho ẩn 1 trong 2 phânvùng cài Windows sau đó mới cài đặt).
Xác định số lượng hệ điều hành để thực hiện multiBoot:
Bạn có thể cài đặt nhiều hệ điều hành trên một máy tính để người
dùng có thể lựa chọn hệ điều hành để sử dụng mỗi khi người dùng khởi
động máy tính. Bạn cũng có thể chỉ định một hệ thống hoạt động như là
mặc định để khởi động khi người dùng không có lựa chọn.
Nếu bạn cài đặt Windows Vista và bất kỳ hệ thống điều hành khác
trên máy tính, bạn phải cài đặt Windows Vista trên một phân vùng riêng
biệt. Cài đặt Windows Vista trên một phân vùng riêng biệt đảm bảo rằng
nó sẽ không ghi đè lên các tập tin được sử dụng bởi hệ điều hành khác.
Tuy nhiên, cài đặt nhiều hệ điều hành trên một máy tính có một số
nhược điểm. Mỗi hệ điều hành sử dụng không gian đĩa, và vấn đề tương
thích (đặc biệt là giữa các hệ thống tập tin) có thể phức tạp. Ngoài ra, bạn
không thể sử dụng các ổ đĩa động với hệ điều hành nhất định. Chỉ có
Windows 2000, Windows XP Professional, và Windows Vista có thể truy
cập một đĩa động.
Chuyển đổi một đĩa cơ bản thành một đĩa động có chứa nhiều cài đặt
của Windows Vista, Windows XP Professional, hoặc Windows 2000 có thể
gây ra các vấn đề khởi động.
Để đảm bảo rằng bạn luôn có thể khởi động máy tính, mặc dù vấn đề
trình điều khiển hoặc đĩa, xem xét các tính năng phục hồi thảm họa có sẵn
trong Windows Vista. Chế độ an toàn cho phép Windows Vista khởi động
lại với các thiết lập mặc định và số lượng tối thiểu của các trình điều
khiển. Máy tính sẽ bắt đầu ngay cả khi một trình điều khiển mới gây ra
một vấn đề. Với điều này và các tính năng phục hồi thảm họa khác, bạn
không cần nhiều hơn một hệ điều hành như là một việc bảo vệ chống lại
các vấn đề hệ thống
Khi bạn thực hiện một cài đặt Windows Vista (không phải là một
nâng cấp), theo mặc định cài đặt được đặt trên một phân vùng mà không
có hệ điều hành khác nằm. Bạn có thể chỉ định một phân vùng khác nhau
khi bạn chạy Setup.
Trước khi thiết lập một máy tính có nhiều hơn một hệ điều
hành, xem xét những hạn chế sau đây.
Đối với các máy tính mà bạn muốn cài đặt MS-DOS và Windows
Vista:
•
•
•
•
•
•
Cài đặt MS-DOS 1. Nếu không quan trọng các tập tin cần thiết để
khởi động Windows Vista có thể được ghi đè.
Cài đặt mỗi hệ điều hành trên phân vùng của nó và sau đó cài đặt các
ứng dụng được sử dụng với mỗi hệ điều hành trên cùng một phân
vùng. Nếu bạn dự định chạy một ứng dụng trên cả hai hệ điều hành, cài
đặt nó trên cả hai phân vùng.
Định dạng phân vùng hệ thống là FAT.
Đối với các máy tính mà bạn muốn cài đặt Windows 95 và Windows
Vista:
Cài đặt Windows 95 trước tiên. Nếu không quan trọng các tập tin
cần thiết để khởi động Windows Vista có thể được ghi đè.
Cài đặt mỗi hệ điều hành trên phân vùng của nó và sau đó cài đặt các
ứng dụng được sử dụng với mỗi hệ điều hành trên cùng một phân
vùng. Nếu bạn dự định chạy một ứng dụng trên cả hai hệ điều hành, cài
đặt nó trên cả hai phân vùng.
Định dạng phân vùng hệ thống là FAT. (Đối với Windows 95 OSR2,
phân vùng chính phải được định dạng FAT hoặc FAT32).