Tại sao chúng ta phải chuyển ROM [đóng]


-2

Chúng ta có thể cài đặt windows trên một loạt các máy, nhưng khi một người cố gắng flash ROM trên thiết bị Android khác, nó không hoạt động. Tôi cho rằng điều này là do tối ưu hóa kernel và hệ thống chỉ tương thích với SOC, pin cụ thể. BIOS thông báo cho các cửa sổ về khả năng của các thiết bị khác nhau thông qua các bảng ACPI và nó hoạt động với một loạt phần cứng. Có một lý do tại sao không có một lớp trừu tượng phần cứng theo nghĩa thông thường trên các thiết bị Android, đó chỉ là các nhà sản xuất đạt được?


1
Hầu hết các giả định của bạn là không chính xác. Bạn không thể "flash" ROM. Bộ nhớ flash không "ROM" . Android không có các lớp trừu tượng CTNH. Thực tế là Android chạy trên phạm vi rộng hơn ( phạm vi không phải số) thiết bị hơn Windows chứng minh điểm đó. Vấn đề là hình ảnh được tùy chỉnh hoàn toàn cho phần cứng. Trong khi cài đặt Windows âm thầm tự cấu hình và cố gắng tự động cài đặt tất cả các trình điều khiển thiết bị cần thiết cho bạn. Đó là lý do tại sao bạn phải kết nối Internet trong khi cài đặt.
sawdust

google.co.uk/amp/s/lifehacker.com/ Rom vừa trở thành từ đồng nghĩa với HĐH di động với giao diện tùy chỉnh trong trường hợp này
Lewis Kelsey

Câu trả lời:


0

Có lý do tại sao không có lớp trừu tượng phần cứng theo nghĩa thông thường trên các thiết bị Android

Lý do kinh tế:

  • Các thiết bị Android thường là các thiết bị dựa trên ARM một bảng với tất cả phần cứng được nhúng và phần cứng đó sẽ không thay đổi theo thời gian sử dụng của thiết bị. Người dùng thường sẽ chỉ mua một thiết bị mới.

  • Android là một loại hệ điều hành "nhúng". Phần cứng chạy Android thường không được mong đợi hỗ trợ hoặc chạy bất kỳ hệ điều hành nào khác.

  • ACPI là một tiêu chuẩn phức tạp khó thực hiện.

Đối với những thứ như điện thoại, thời gian để tiếp thị có giá trị hơn cho các công ty hơn là phát triển các tiêu chuẩn mà các công ty khác sử dụng. Windows, muốn bán các hệ điều hành hoạt động trên các nhà cung cấp phần cứng đa dạng dựa trên Intel, rõ ràng thích có tiêu chuẩn (và cả Intel và Microsoft đều có tay trong thiết kế ACPI.)

Lý do kỹ thuật:

  • Windows phụ thuộc rất nhiều vào phần sụn (BIOS hoặc UEFI) trong khi khởi động và trong khi vận hành. Linux có thể được cấu hình để hoàn toàn không dựa vào phần sụn sau khi được tải và đối với các nền tảng ARM, điều này có lẽ là điển hình.

    • Vì vậy, các lược đồ đơn giản hơn (và ít thân thiện hơn) có thể được sử dụng với Linux, cả những thứ như cây thiết bị hoặc chỉ có trình điều khiển được tích hợp trong kernel để biết phần cứng của chúng nằm ở đâu trên nền tảng mà không cần thực hiện bất kỳ khám phá nào.

nhưng khi một người cố gắng flash ROM trên thiết bị Android khác, nó không hoạt động

  • Bộ tải khởi động trong các thiết bị Android thường được cấu hình để chỉ tải một hình ảnh đã ký - nếu hình ảnh chứa HĐH không được ký thì nó sẽ không hoạt động.

  • Bộ tải khởi động thường rất đặc biệt về phần cứng và được xây dựng cho một bảng cụ thể. . Nếu hình ảnh ROM chứa bộ tải khởi động và bạn cố chạy nó trên nền tảng sai, nó có thể sẽ không hoạt động.

  • Trình điều khiển Linux cho các thiết bị phần cứng trong nhiều thiết bị Android không phải là nguồn mở. Bao gồm những thứ như màn hình, Wifi, di động. Vì vậy, họ sẽ không làm việc với các phiên bản kernel sau này. Có thể đây là lý do chính khiến các ROM khác nhau không hoạt động, vì phiên bản kernel là phiên bản mới hơn, tốt hơn, nhưng không có trình điều khiển mới hơn (và không thể xây dựng trình điều khiển mà không có mã nguồn).

  • Các tùy chọn dòng lệnh được truyền cho kernel khởi động có thể rất quan trọng - ví dụ: các tùy chọn đó có thể cho kernel biết để tránh các phạm vi bộ nhớ nhất định khiến hệ thống bị khóa nếu được truy cập.


1
Những câu trả lời cho các câu hỏi của OP là sai (ví dụ: Android không có tính trừu tượng CTNH) và lý do cũng sai. OP tương đương việc ghi hình ảnh flash Android với cài đặt Windows, thực hiện cấu hình hệ thống. Không có cấu hình khi hình ảnh flash Android được "cài đặt". Hoạt động tương đương của Windows sẽ là ghép hệ thống Windows hiện có trên ổ cứng / SSD từ PC này sang PC khác và hy vọng nó sẽ khởi động hoàn hảo. OP đang so sánh cài đặt giống như táo với cam và "câu trả lời" này không chỉ ra điều đó.
sawdust

Bạn có một điểm hay về cách flash ROM theo cách OP mô tả giống như ghép một Windows hiện có. Tôi biết về "giao diện nhà cung cấp" HAL trong Oreo nhưng nó không liên quan đến cách ACPI trên x86 cố gắng trình bày phần cứng - Android HAL là cấp hệ điều hành, không phải cấp độ phần sụn.
LawrenceC
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.