BIOS có được coi là HĐH không? [đóng cửa]


11

Câu hỏi này xuất hiện trong đầu khi xử lý mảng RAID, nhưng không nhất thiết phải áp dụng cho chủ đề.

Làm thế nào mà BIOS có thể đọc từ ổ cứng để tải HĐH một cách hiệu quả, khi nhiều trình điều khiển cần có hệ điều hành để có thể làm điều tương tự? BIOS có một danh sách các trình điều khiển mà nó lấy từ một trong những hệ điều hành chính giống như Windows hoặc Linux không?


2
Quản trị viên SU không mang tính xây dựng
Stumbler

Câu trả lời:


10

Trước hết, BIOS là Hệ thống đầu vào / đầu ra cơ bản, không phải là Hệ điều hành ... Về việc tải RAID và như vậy, điều xảy ra trong quá trình khởi động là máy truy vấn bất kỳ thẻ bổ sung nào hỏi xem chúng có tải BIOS không. Thẻ RAID của ông hét lên "Ya, tôi phải làm gì đó trước", sau đó anh ta kích hoạt "BIOS" của mình (trong trường hợp này là HĐH), tự thực hiện một số tính toán, sau đó chuyển điều khiển trở lại BIOS chính ("Hey, Tôi đã làm xong, đây là tất cả thông tin bạn cần biết về một nhu cầu cần biết, bạn biết không? ").

Khi BIOS chính được kiểm soát một lần nữa, nó có thể chuyển sang câu "Ahhh, tôi thấy Mr RAID có âm lượng có thể khởi động, tôi sẽ chuyển qua đó nếu có thể, sau đó thử các thủ thuật khác của tôi".

Vì vậy, "về mặt kỹ thuật" không phải là một hệ điều hành BIOS, mà nó là một hệ thống Đầu vào / Đầu ra để chuẩn bị cho hệ điều hành thực sự


11
" Anh ấy kích hoạt" BIOS "của mình (trong trường hợp này là HĐH) " - Phần mở rộng BIOS hoặc BIOS đơn giản không phải là HĐH. Mục đích nổi bật của HĐH là quản lý tài nguyên . BIOS, như một chương trình khởi động độc lập, không bận tâm đến việc duy trì bất kỳ thông tin phân bổ tài nguyên nào. Không có thói quen mở () hoặc đóng () do BIOS cung cấp để hạn chế quyền truy cập vào phần cứng. Bất kỳ mã thực thi nào cũng có thể sử dụng các chức năng đọc / ghi BIOS. BIOS không đáp ứng mục đích cơ bản của HĐH.
mùn cưa

@sawdust những gì về việc kích hoạt hoặc vô hiệu hóa các thiết bị trên tàu? Điều đó sẽ hạn chế quyền truy cập vào phần cứng.
Bon Gart

@BonGart - En / dis-abling của BIOS chỉ đơn giản là một công cụ cấu hình thay thế cho việc cài đặt hoặc gỡ bỏ thiết bị một cách vật lý. Đó là một hành động trên toàn hệ thống và có hiệu lực cho đến khi lỗi cấu hình lại hoặc thiết bị. Tôi đã thực sự đề cập đến các khái niệm hệ điều hành để đồng bộ hóa và loại trừ, chẳng hạn như mutexes và semaphores có thể kiểm soát / hạn chế ở cấp độ quy trình và / hoặc luồng. Hoặc ví dụ như một bộ đệm in; chương trình bộ đệm của hệ điều hành sở hữu máy in và không cho phép sử dụng trực tiếp máy in đó. Bạn phải gửi công việc in của mình cho bộ đệm, hàng đợi yêu cầu in.
mùn cưa

10

Các BIOS , nghĩa là một "hệ thống đầu vào / đầu ra cơ bản", là một tập hợp các chương trình nhỏ mã hóa cứng vào bo mạch chủ của máy tính (thường được lưu trữ trên một EEPROM ). Các chương trình này bao gồm khả năng sửa đổi cài đặt, viết văn bản và lấy đầu vào của người dùng từ các thiết bị I / O cơ bản (bo mạch chủ phải mô phỏng chúng cho các thiết bị chuột / bàn phím VGA và USB tiên tiến) và quan trọng nhất là cung cấp chức năng tìm và khởi động hệ điều hành hiện diện trên bất kỳ thiết bị lưu trữ bị tấn công.

Chính nó, BIOS không phải là một hệ điều hành. BIOS là một chương trình nhỏ để thực sự tải một hệ điều hành. Mặc dù trong một số hệ điều hành có thể gọi các hệ thống phụ BIOS khác nhau, điều này đòi hỏi CPU phải quay về chế độ thực, vì BIOS không cung cấp hỗ trợ bộ nhớ ảo, chuyển đổi tác vụ (và do đó khả năng chạy các chương trình ) hoặc hỗ trợ trình điều khiển thiết bị (và do đó, không thể truy cập trực tiếp phần cứng ra khỏi phạm vi có thể truy cập trên bản đồ trực tiếp, cũng như không có bất cứ điều gì không có trong các cuộc gọi ngắt BIOS ).

Như Linus Torvalds đã nói :

Không phải tôi từng khẳng định rằng BIOS cũng tuyệt vời, nhưng ít nhất mọi người đều biết rằng BIOS chỉ là một bộ tải khởi động, và không cố gắng làm cho nó bất cứ điều gì khác.

Ưu điểm hoàn toàn lớn nhất của BIOS là nó quá bất tiện và rõ ràng là lỗi thời, đến nỗi bạn phải điên lên muốn làm bất cứ điều gì nghiêm trọng trong nó [...] không có ý tưởng nào về việc nó là một khuôn khổ hoành tráng cho bất cứ điều gì khác hơn là "chỉ cần tải hệ điều hành và thoát khỏi đó".

Cuối cùng, cần lưu ý rằng BIOS khác biệt đáng kể so với UEFI ( Giao diện phần mềm mở rộng hợp nhất ), phần sau gần hơn đáng kể để cung cấp giao diện hệ điều hành cơ bản (cung cấp trình điều khiển thiết bị và hỗ trợ ứng dụng). Người ta vẫn nghi ngờ liệu UEFI có thể được coi là một hệ điều hành thực sự hay không, mặc dù nó được coi là một hệ điều hành gần như đáng kể so với BIOS.


2

Để đối phó với nhiều ý kiến ​​và quan điểm đưa ra, tôi đã chỉnh sửa câu trả lời một lần nữa.

BIOS có phải là Hệ điều hành không?

Chà, nếu một hệ điều hành được định nghĩa là phần mềm cho phép người dùng tương tác với phần cứng của máy tính, thì vâng, đúng là kỹ thuật và đó là một Hệ điều hành.

Nhiệm vụ chuyển đổi có xác định những gì tạo nên một hệ điều hành?

Xem xét rằng MS-DOS là một Hệ điều hành hợp lệ và cho đến khi phiên bản 5 Chuyển đổi tác vụ không được hỗ trợ, chuyển đổi tác vụ không ảnh hưởng đến việc phần mềm có phải là Hệ điều hành hay không.

Liệu Virtualization of Memory có định nghĩa được điều gì tạo nên một Hệ điều hành không?

Một lần nữa, sử dụng MS-DOS làm ví dụ, mặc dù có thể thêm hỗ trợ cho ảo hóa bộ nhớ bằng cách chạy các bộ mở rộng trong quá trình tải, không cần thiết phải sử dụng chúng. Do đó, ảo hóa bộ nhớ cũng không phải là điều kiện tiên quyết cho những gì tạo nên một Hệ điều hành.

Nếu nó được lưu trữ trong Firmware, nó có phải là HĐH không?

Một số người sẽ cho rằng một bộ định tuyến không sử dụng Hệ điều hành. Ví dụ, dường như có sự tranh cãi về việc liệu DD-WRT có được coi là Hệ điều hành hay không. Có thiết bị nào lưu trữ Hệ điều hành trong Phần sụn không? Điện thoại hiện đại, iPod và nhiều hệ điều hành phức tạp hơn có thể có các chương trình được thêm vào trong Firmware. Vì vậy, chỉ vì một hệ điều hành được tải vào Firmware, điều này không loại trừ phần mềm được đề cập khỏi bị coi là Hệ điều hành.

Nếu bạn không thể thêm chương trình, đó không phải là Hệ điều hành.

Bước ra khỏi một điện thoại thông minh hiện đại. Nhìn vào một chiếc điện thoại di động dùng một lần giá rẻ. Nó có một Hệ điều hành được lưu trữ trong Firmware, nhưng bạn không thể thêm các chương trình. Nó chạy như nó là, và chỉ với các chức năng được cung cấp. Bạn điều hướng qua các menu như bất kỳ HĐH nào khác, bạn chọn những gì bạn muốn làm (chơi trò chơi, v.v.) và với một số lượng tốt trong số đó từ vài năm trước, họ không có khả năng thêm bất kỳ phần mềm bổ sung nào.

Nếu nó không hiện đại, nó không phải là một hệ điều hành?

Điểm trong lịch sử mà HĐH được tạo và khởi chạy không liên quan đến việc nó có phải là Hệ điều hành hay không.

Vì vậy, BIOS có thể không đẹp và nó có thể không cung cấp cho bạn chức năng cực đoan. Tuy nhiên, nó vẫn là một hệ điều hành.


3
Định nghĩa của Hệ điều hành trên wikipedia là nghi vấn chính nó. (Tôi đã nghe một số người khác) Nhưng dù sao thì bạn hoàn toàn bỏ lỡ [...] cung cấp các dịch vụ chung cho các chương trình máy tính , điều mà tôi nghĩ là cần thiết cho HĐH.
Baarn

1
Tôi nghiêng về phần sụn hơn hệ điều hành. Một bios không có trí thông minh, nó chỉ giao tiếp với phần cứng ở mức rất thấp và chuyển thông tin đó đến HĐH. UEFI đang thay đổi trò chơi mặc dù.
Moab

1
Đó là một ranh giới tốt giữa firmware và HĐH, chủ quan như địa ngục.
Moab

1
OK, tôi cho vào, đó là một biOS, bây giờ bạn có thể ngả đầu ra khỏi .. ;-)
Moab

2
@BonGart một BIOS thiếu hỗ trợ bộ nhớ ảo và lập lịch tác vụ - và do đó, thiếu khả năng chạy các chương trình (nghĩa là nó không thể chạy đồng thời với bất kỳ thứ gì khác). Mặc dù tôi đồng ý rằng nó cung cấp hỗ trợ I / O cơ bản, nhưng đó là một chương trình nhỏ chứ không phải hệ điều hành ... Hoặc bạn sẽ phân loại đoạn mã nhỏ trên vi điều khiển của tôi nhận mật khẩu và bật đèn LED (do đó cung cấp I cơ bản / O hỗ trợ) một hệ điều hành là tốt?
Đột phá

2

"Hệ điều hành" là gì hay không là vấn đề của sự phán xét. Có thể cho rằng (và tôi đã lập luận điều này vào năm 1980), PC / MS DOS ban đầu không phải là một "hệ điều hành" (mặc dù tên của nó), vì nó chỉ cung cấp dịch vụ I / O (và một bộ phân tích lệnh thô) và không có cơ sở quản lý hệ thống thực sự .

OTOH, nhiều triển khai BIOS hiện nay bao gồm một số mức độ của chức năng hypanneror quản lý tài nguyên hệ thống theo một cách khá tinh vi.

Về cách BIOS quản lý tải từ đĩa, v.v., không có trình điều khiển, theo các thiết bị "khởi động" theo quy ước / tiêu chuẩn bao gồm một tập hợp các hoạt động có thể được sử dụng mà không phải thiết lập cơ sở hạ tầng quản lý tinh vi. Trong một số trường hợp, đây chỉ là khả năng đọc một vài lĩnh vực tại một địa điểm tương đối cố định, nhưng đó là tất cả những gì cần thiết trong hầu hết các trường hợp.


Vì vậy, bạn sẽ bật máy tính, tải MS-DOS và sau đó có thể chạy các chương trình. Bạn nói rằng MS-DOS không phải là HĐH ... HĐH đó ở đâu? Có vẻ như bạn đang nói rằng MS-DOS không phải là thứ bạn coi là một hệ điều hành thực sự, ngay cả khi nó hoạt động về mặt kỹ thuật như một (và do đó là một).
Bon Gart

1
Đã từng có rất nhiều máy tính không có "hệ điều hành", chỉ là "bộ điều hành thời gian chạy" hoặc một số máy tính cung cấp dịch vụ tệp và bộ phân tích lệnh. Họ không bao giờ gọi chúng là "hệ điều hành".
Daniel R Hicks

2
@bonGart " HĐH đã ở đâu? " Không có yêu cầu phải có HĐH, nghĩa là, người phân bổ / quản lý tài nguyên, để thực thi các chương trình trên máy tính. Các máy tính đời đầu (hoặc đơn giản) (bao gồm cả micros chạy CP / M) chỉ đơn giản là có chương trình tải thường trú và chương trình được tải có toàn quyền truy cập vào tất cả các tài nguyên máy tính. Không có tranh chấp về tài nguyên, do đó không cần HĐH.
mùn cưa

@sawdust - Đúng. Và một bước lên từ "trình tải chương trình thường trú" là một thư viện thời gian chạy thường trú (băng giấy, đĩa mềm và các chức năng bàn phím / hiển thị - có thể là máy in) và "màn hình" hoặc "điều hành" hoặc một số thứ sẽ phát hiện khi một chương trình đã kết thúc để tải cái tiếp theo. DOS không phức tạp hơn những thứ này.
Daniel R Hicks
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.