Tương tự những bước nạp chương trình vào bộ nhớ, để khởi động một hệ điều hành, cần phải tải vào bộ nhớ kernel ( nhân ) của hệ đề hành đó. Nói ngắn gọn, để máy tính có thể làm việc được hệ điều hành cần nạp vào RAM .
Vậy làm thế nào mà phần cứng, đơn cử ở đây là ổ đĩa ( secondary storage, có thể là HDD hoặc SSD ), biết kernel ở đâu và làm thế nào để tải lên bộ nhớ kernel đó ? Thủ tục khởi động máy tính bằng cách tải hạt nhân được gọi là khởi động mạng lưới hệ thống .
Để khởi động máy, hay để máy tính có thể hoạt động, nhất thiết phải cần hệ điều hành. Để nạp hệ điều hành hiểu đơn giản là cách “đánh thức” hệ điều hành, làm chiếc máy tính của bạn hoạt động.
Trong hầu hết các hệ thống máy tính, một đoạn mã nhỏ được gọi là chương trình bootstrap hoặc trình khởi động sẽ định vị kernel, tải nó vào bộ nhớ chính và bắt đầu tiến trình khởi động.
Nói theo cách khác, chương trình đơn thuần ấy sẽ “ mồi ” cho cả hệ điều hành lớn hoạt động giải trí. Chuyên sâu hơn, nó sẽ chỉ chỗ mở màn có những file của hệ điều hành, và khởi động những file ấy. Sau đó, những file được “ mồi ” được khởi động ấy sẽ khởi động cả hệ điều hành .
Chương trình bootstrap có thể triển khai khá nhiều tác vụ. Thông thường, một trong số đó là chạy chẩn đoán để xác lập trạng thái của máy. Nếu tác dụng chẩn đoán ổn, chương trình có thể liên tục với những bước khởi động. Nếu không, máy của bạn sẽ được quét / scan, và việc này là tự động hóa, bạn không hề tránh .
Tại sao các file hệ thống, các file hệ điều hành lại nằm trên ổ đĩa (HDD hoặc SSD) mà không nằm trên RAM để tải cho nhanh?
Bạn biết rằng những chương trình đã nằm trong RAM sẽ được CPU thực thi nhanh hơn ( bạn có thể tìm hiểu thêm khái niệm tầng tài liệu ). Nhưng một trong những nguyên do chính hệ điều hành không nằm sẵn trên RAM là vì :
- RAM ở trạng thái unknown (không xác định) khi khởi động máy tính.
- Dữ liệu, file nằm trên ổ đĩa (ở dạng read-only memory, hay nằm trên HDD, SSD), khó bị virus xâm nhập.
Hệ điều hành lưu trữ ở đâu
Một số hệ thống như điện thoại di động, máy tính bảng và game console lưu trữ toàn bộ hệ điều hành trong ROM. Lưu trữ hệ điều hành trong ROM phù hợp với các hệ điều hành nhỏ, phần cứng hỗ trợ đơn giản, và hoạt động khắc nghiệt.
Một yếu tố với cách tiếp cận này là việc đổi khác mã khởi động sẽ yên cầu phải đổi khác những chip phần cứng ROM. Một số mạng lưới hệ thống xử lý yếu tố này bằng cách sử dụng EPROM : EEPROM dùng để lưu trữ lượng tài liệu ít và có thể đổi khác nội dung được .
Tất cả những dạng ROM đều được biết đến như là firmware, một chương trình nhỏ để điều khiển và tinh chỉnh phần cứng, vì đặc tính của chúng nằm ở đâu đó giữa phần cứng và ứng dụng. Một yếu tố với firmware nói chung là mã thực thi của nó chậm hơn so với mã thực thi trong RAM. Một số mạng lưới hệ thống tàng trữ hệ điều hành trong firmware và sao chép nó vào RAM để thực thi cho nhanh. Một yếu tố sau cuối với firmware là nó khá đắt .
Đối với những hệ điều hành lớn ( gồm có hầu hết những hệ điều hành như Windows, Mac OS X và UNIX ) hoặc so với những mạng lưới hệ thống đổi khác tiếp tục, trình nạp bootstrap được tàng trữ trong firmware và hệ điều hành thì lưu trong đĩa .
GRUB là một ví dụ về một chương trình khởi động có mã nguồn mở (open source) cho các hệ thống Linux. Tất cả các bootstrap ràng buộc đĩa, và ngay cả hệ điều hành đều có thể dễ dàng thay đổi bằng cách viết các phiên bản mới hơn vào đĩa. Một đĩa có phân vùng khởi động (đọc thêm trong Phần 10.5.1) được gọi là đĩa khởi động hoặc đĩa hệ thống. Bạn hoàn toàn có thể tải kernel từ đây https://cdn.kernel.org/pub/linux/kernel/ và cài vào máy hay máy ảo để vọc.
Hãy sắp xếp thứ tự các công việc thực hiện tuần tự khi nạp hệ điều hành
Các việc làm thực thi tuần tự khi nạp hệ điều hành :
1/ Cắm nguồn và Bật máy.
2/ Kiểm tra các thiết bị kết nối với máy tính.
3/ Tìm chương trình khởi động trên đĩa khởi động.
4/ Nạp hệ điều hành vào bộ nhớ trong.
Để máy tính có thể làm việc được, hệ điều hành cần nạp vào RAM .