I'M Keven Feil

Graphic Designer . Web Developer . Photographer

About Me

Hello

I'mKeven Doe

Developer and Startup entrepreneur

I am Keven Doe. Web scholar. Introvert. Explorer. Hardcore thinker. Devoted social media fan. Wannabe reader.

If you are going to use a passage of Lorem Ipsum, you need to be sure there isn't anything embarrassing hidden in the middle of text making it over 2000 years old.

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor.

Fusce quis volutpat porta, ut tincidunt eros est nec diam erat quis volutpat porta, neque massa, ut tincidunt eros est nec diam FusceFusce quis volutpat portaFusce quis volutpat

Web Dedign

UX/UI Dedign

Wordpress

Javascript

What I do?

Graphic

Lorem ipsum dolor sit amet, augue theophrastus ex.

Photography

Lorem ipsum dolor sit amet, augue theophrastus ex.

Development

Lorem ipsum dolor sit amet, augue theophrastus ex.

Responsive

Lorem ipsum dolor sit amet, augue theophrastus ex.

Wordpress

Lorem ipsum dolor sit amet, augue theophrastus ex.

Javascript

Lorem ipsum dolor sit amet, augue theophrastus ex.

My Experience

Apple Inc.

2015-Today

Art & Creative director

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Facebook Inc.

2012-2015

Web designer & developer

Lorem ipsum dolor sit amet, sit augue theophrastus ex. Nec ne dicam impedit perpetua, legimus fierent molestiae ei nec. Eum ei adhuc meliore pericula.At agam omittam accumsan mel.

IBM Inc.

2011-2012

Mid-level designer

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

My Latest Projects

Showing posts with label hackintosh. Show all posts
Showing posts with label hackintosh. Show all posts

Hackintosh sẽ ra sao nếu Apple không ra thêm mẫu máy nào chạy CPU Intel?

Apple Silicon.

Apple đang rất thành công với các mẫu máy chạy dòng CPU M1. Có vẻ như hãng sẽ không ra thêm bất kì sản phẩm nào chạy CPU Intel trong thời gian sắp tới. Vậy bức tranh Hackintosh trong tương lai sẽ ra sao?

M1 Ultra performance vs power.

Câu truyện bắt đầu từ những ngày cuối tháng 6 năm 2020, Apple công bố sẽ sử dụng CPU mà hãng phát triển dựa trên nền tảng ARM trên các model Macintosh trong tương lai. Con CPU M1 là bước đầu tiên,  vừa rồi Apple đã đem cuộc chơi đi xa hơn với mẫu M1 Ultra, và rồi Apple sẽ còn đi xa hơn nữa trong các mẫu Apple Silicon kế tiếp. Vui quá, người chơi hệ Macintosh thì quá vui vì máy Mac càng ngày càng mạnh, mỏng, mát hơn.

CPU Intel cuối cùng được Apple sử dụng là Ice Lake với mã I7-1068NG7 và I5-1038NG7 trên Macbook Pro 13 inh. Đi cùng với nó là iGPU Intel® Iris® Plus. Có nghĩa là các phiên bản macOS sắp tới Apple sẽ chỉ có kext cho iGPU Intel Iris Plus là tối đa. Người chơi hệ Hackintosh bắt đầu buồn từ đây.

Một combo Intel 12th Gen Hackintosh.

Hackintosh trên Laptop sẽ dừng cuộc chơi ở intel thế hệ 10, tương ứng với các mã CPU dùng iGPU Intel Iris Plus hoặc Intel UHD 630. Từ thế hệ 11 trở đi, Intel dùng dòng iGPU xịn hơn trong khi macOS không hỗ trợ dòng iGPU này,  VGA rời thì không nhận trên macOS dẫn tới Laptop sẽ ngừng cuộc chơi đầu tiên. Hạn chế trong nâng cấp phần cứng Laptop không cho phép bạn lựa chọn.

Hackintosh trên Desktop sẽ cố gắng thêm thời gian dài nữa vì có thể lắp card rời. CPU Desktop thế hệ 11, 12 vẫn tương thích được với macOS. Có chăng thì thế hệ 12 tích hợp E-core sẽ cần thêm thủ thuật để kích hoạt nhưng vẫn khá OK, ít nhất là trên macOS Monterey. VGA AMD vẫn sẽ được support dài vì Apple còn cần support eGPU trên các máy Macbook Pro 13 inh 2020 thêm nhiều năm nữa. 

Nếu có ý định mua một chiếc Laptop mới tinh để cài macOS dùng, bạn hãy cân nhắc tới việc mua 1 chiếc Real Mac hoặc lắp máy bàn.

Hãy comment xuống bên dưới nhu cầu của bạn là gì nhé, bạn sẽ tiếp tục hackintosh hay gia nhập hội những người dùng macintosh? 

Phần 4: Hackintosh thực hành patch DSDT cổng USB


Cổng USB phải là điều bạn quan tâm đầu tiên bởi vì bộ cài sẽ được cắm vào cổng này. Thực hành patch DSDT cho cổng USB cũng rất điển hình, từ sau guide này level bạn sẽ lên một bậc. Cho tiện thì mình sẽ gọi chung ổ USB, ổ cứng di động là USB.
Mình nhắc lại điều đã nói ở Phần 1: "Hãy gạt bỏ những suy nghĩ và phương pháp mà trước giờ bạn thường sử dụng để đọc bài này".  Mình cam đoan nếu như bạn bỏ qua Phần 1, Phần 2Phần 3 thì đọc Phần 4 này bạn sẽ không hiểu gì cả.
Các bài hướng dẫn tràn lan đang dẫn dắt bạn theo hướng "cài lấy được":
* Bạn không hiểu vì sao lại làm thế dẫn tới suy nghĩ không cần phải biết chỉ cần làm theo.
* Lâu ngày sẽ sinh tâm lý không muốn tìm hiểu thêm, trốn tránh các bước khó càng nhiều càng tốt, bạn tìm lý do để bao biện cho việc lười biếng này, 2 trong số đó là:
*phải là dân IT, phải là dân lập trình mới fix được lỗi của DSDT.
*phải có kiến thức, có kinh nghiệm mới chơi được Hackintosh. 

Điều này là sai, mình khẳng định là sai.
Bạn không trốn tránh mãi được, mình và chuỗi bài viết của mình sẽ giúp bạn đối mặt với khó khăn thay vì né tránh nó.
Lỗi "cấm đi ngược chiều" thần thánh do không nhận USB.


So sánh nhỏ:
Cách patch DSDT kiểu cũ để xử lý vấn đề USB như này:
Đầu tiên bạn phải tải các file công cụ về rồi tiến hành:
Bước 1) dịch file DSDT.aml ra DSDT.asl,
Bước 2)  fix sạch  error của DSDT,
Bước 3) rename device và apply patch,
Bước 4) save lại ra DSDT.aml.

Bước 2) ☠ chính là bước làm newbie nản lòng nhất vì không phải lỗi nào cũng có patch fix sẵn.

Cách mình đưa ra:
Vận dụng tính chất External include của ACPI (đã nói ở Phần 2)để thực hiện các thao tác tương đương.
Bước 1) rename Device và Method _DSM bằng config
Bước 2) override method _DSM của EHCI và XHCI bằng một SSDT khác.

* không cần tải thêm công cụ nào hết.
* không cần dịch ngược, không cần fix error DSDT không đụng chạm gì vào file DSDT gốc.
=> loại bỏ khó nhăn nhức đầu nhất với newbie.

Hiện tại trong đầu bạn có thể sẽ xuất hiện vài dấu "?" lớn như sau:
EHCI và XHCI là gì?
* Method _DSM là gì?
External include là gì và nó hoạt động như nào?
Find and Replace ACPI của Clover hoạt động ra sao?
...
thì bạn hẵng kiềm chế mình sẽ giải thích sau khi thao tác xong.

Patch DSDT cho cổng USB:

Bước 1) rename Device và Method _DSM.

Bước 2) override method _DSM cho XHC
Để đảm bảo override method _DSM cho XHC thành công, bạn sẽ override luôn _OSI
Dùng SSDT-XHC.amlSSDT-XOSI.aml

Lưu file config, SSDT-XHC.aml và SSDT-XOSI.aml bạn cứ lưu lại vào máy tính, xong xuôi chúng ta sẽ nói chung một thể sẽ lưu nó ở đâu trong bộ cài.

EHCI(Enhanced Host Controller Interface) và XHCI(eXtensible Host Controller Interface) là khái niệm về phần cứng, 2 module này quản lý các cổng USB 2.0 và 3.0. Khi bạn cắm thiết bị USB vào, hệ điều hành sẽ thông qua 2 module quản lý này để điều khiển thiết bị. MacOS quản lý EHCI và XHCI thông qua tên của Device trong DSDT. Rename chúng cho giống với máy Mac thì MacOS sẽ điều khiển chúng trơn chu được.

Method _DSM (Device-Specific Methods), nó định nghĩa các thuộc tính của thiết bị. MacOS chỉ lấy các thuộc tính của thiết bị thông qua method này. Các method _DSM nguyên bản của DSDT/SSDT của máy Hackintosh không có chứa thuộc tính MacOS cần, cho nên bạn có thể ung dung loại bỏ mà không gặp vấn đề gì.

SSDT là bảng phụ của DSDT, nó sẽ được gộp vào DSDT khi nạp vào hệ điều hành. Mình gọi đây là cơ chế  External include.
External include hoạt động ra sao ?

  1. => Rename _DSM thành XDSM, method _DSM trở nên vô nghĩa vì nó sau khi rename thì là XDSM mà MacOS không load gì từ XDSM hết.
  2. => Bởi vì không còn thấy _DSM trong DSDT nên MacOS sẽ tìm kiếm _DSM của device ở SSDT.
  3. => Trong bài này, MacOS tìm đến  và load _DSM của EHCI và XHCI có trong nội dung của file SSDT-XHC.aml.

Find and Replace ACPI của Clover sẽ Find and Replace tên toàn bộ DSDT và SSDT có sẵn của hệ thống. Cái lợi của nó là sẽ bao phủ DSDT và tất cả các bảng SSDT.

  • Cách patch kiểu cũ không thể bao phủ toàn bộ mà chỉ rename trên DSDT và các SSDT được patch mà thôi. Nếu bạn chọn patch toàn bộ SSDT đồng nghĩa ngồi fix toàn bộ các lỗi của từng file, cũng đồng nghĩa với việc tăng rủi ro patch sai. Newbie patch sai thì lại càng rối và rối. 
  • Nếu bạn chọn patch một vài SSDT cần thiết, khả năng phát sinh các lỗi khi hoạt động do rename thiếu.Nếu trong DSDT của bạn, không có XHC1 mà nó đã sẵn là XHC thì không sao hết, không find thấy XHC1 nên sẽ không thực hiện replace này. Tương tự nếu DSDT không có EHC0, EHC1 thì cũng không thực hiện replace.

Rename _DSM thành XDSM từ bài này không chỉ có tác dụng cho riêng cụm USB mà có tác dụng cho toàn bộ các thành phần khác của hệ thống. Từ giờ trở đi muốn MacOS load _DSM của thành phần nào, bạn sẽ phải dùng thêm SSDT_DSM cho thành phần đó. Đọc lại Phần 2 bạn sẽ hiểu tại sao lại thế.

_OSI dùng để xác định phiên bản của Windows, dựa vào đó sẽ có cấu hình cụm USB phù hợp. Phần cứng dùng để Hackintosh không được thiết kế để chạy MacOS nên khi MacOS load DSDT sẽ không tìm thấy cấu hình USB phù hợp với mình, override _OSI sẽ cấu hình lại cụm USB phù hợp với MacOS.Rename _OSI thành XOSI, MacOS sẽ load lại XOSI trong SSDT-XOSI.aml.

Phương pháp này có tên gọi là "hot patch". 
Nó được sinh ra trong hoàn cảnh từ Skylake trở đi có nhiều hệ thống nếu patch trực tiếp vào file DSDT/SSDT sẽ không thể boot được.
Phương pháp này cũng có lợi điểm là tái sử dụng mạnh mẽ cho bất kỳ hệ thống nào, bạn thấy đó không cần quan tâm DSDT/SSDT hiện tại ra sao, chỉ cần thực hiện 2 bước là patch xong DSDT cho cổng USB.

Tổng kết:
*Chúng ta khởi động như vậy thôi, nhồi thêm nữa sẽ phản tác dụng.
*Để hoàn thành toàn bộ cho cổng USB sẽ cần thêm một số patch DSDT nâng cao, cần thêm Kext nữa.
*Kext sẽ nói sau khi xong hết về patch DSDT cho các thành phần khác.
*Patch DSDT nâng cao sẽ nói thêm sau khi cài xong MacOS cho thong thả.
*Config nãy lưu lại, sẽ tiếp tục dùng cho các bài tiếp theo.

Phần 4 sẽ kết thúc ở đây, bạn từ từ ngâm cứu sẽ là tiền đề tốt để làm theo Phần 5 sắp tới nhé.

Bạn đang mong chờ gì ở bài viết tiếp theo hãy mạnh dạn comment ý kiến cuối bài.

Phần 3: Hackintosh patch dsdt một khái niệm đễ hiểu "nhầm".

MacIasl Công cụ patch DSDT quen thuộc.
 Bạn không cần phải căng não ra cố gắng patch DSDT như  kiểu cũ của các bài hướng dẫn khác. Hãy chú ý đọc kỹ những gì mình nói trong bài này bởi vì đây là tiền đề giúp bạn hiểu những bài viết sau này.
Trước khi bắt đầu, hãy chắc chắn rằng bạn đã đọc : Phần 2: Hackintosh hình dung trước rồi hãy bước.

*Bạn có thể thấy hầu hết các bài hướng dẫn hiện nay copy đi copy lại nội dung của nhau. Hướng dẫn bạn phải tải cái phần mềm này, phần mềm kia về chạy và patch - không rối trí sao được?

Nay mình sẽ chỉ bạn cách làm khác có thao tác đơn giản hơn, dễ chỉnh sửa và dễ chỉnh sửa lâu dài nhưng đem lại hiệu quả tương đương.

1) Patch DSDT bản chất là gì?
Patch DSDT mang hàm nghĩa là chỉnh sửa file DSDT/SSDT.

2) Patch DSDT nhằm mục đích gì ?
Chỉnh sửa DSDT/SSDT sao cho nó giống với DSDT/SSDT của Real Mac, giúp cho Mac có thể hiểu và sử dụng được phần cứng.

3) Các thao tác khi patch DSDT là gì?
Thêm / Sửa / Xóa nội dung file DSDT/SSDT.

4) Nếu không patch vào file DSDT thì có cách nào tương đương ?
Có nhiều cách tương đương, hiệu quả của nó cũng tương đương. Mình sẽ nói dần dần.

5) Có thể dùng chung đồ đã patch DSDT cho nhiều máy khác nhau không?
Patch kiểu truyền thống thì không nhưng Có thể nếu làm theo cách ở mục 4).

Hãy nói về Patch file DSDT.

Patch nghe có vẻ gì đó khó vào đầu, bạn hiểu đơn giản đi, patch tức là chỉnh sửa  file.

Mình sẽ chia Patch DSDT ra thành  2 kiểu thao tác cơ bản là Find and Replace và Inject.
* kiểu tức là bạn sẽ phải làm cả 2 chứ không phải chỉ cần làm 1 trong 2.

Find and Replace 

+ Find and Replace là các patch  tìm kiếm và thay thế hoàn toàn một cụm string bằng một cụm string khác (có thể là string rỗng).
+ Find and Replace là patch thường được dùng cho fix lỗi sau khi dịch file .aml ra dsl, thường được dùng cho Các patch System và patch pin (đối với laptop).
+ Find and Replace thường được áp dụng cho DSDT.

Inject

+ Inject là các patch thêm thông tin cho Device, hoặc thêm nguyên 1 Device vào DSDT/SSDT. Các patch có chứa method _DSM là điển hình, patch IMEI, LPC v.v... cũng liệt vào danh sách này.
+ Inject có thể dùng để Fake ID của Device, Mac nhận diện và điều khiển Device theo ID, inject cho IntelHD là ví dụ điển hình.

Phương pháp tương đương.

Bạn hãy hiểu rằng Patch sẽ làm thay đổi nội dung của DSDT khi nạp lúc boot.
Clover cho phép bạn chỉnh sửa DSDT/SSDT thông qua file config thay vì patch trực tiếp vào Clover.

Chức năng ACPI to Patch của Clover có thể thay thế tương đối cho Find And Replace.

Chức năng ACPI to Patch của Clover.
Chức năng Add Properties và Arbrinary  có thể dùng để Inject device.

Chức năng Add Properties và Arbrinary của Clover.

Nếu không có Mac thì dùng Clound Clover Editor:
Clound Clover Editor truy cập bằng web, dùng cho mọi hệ điều hành.
Mình thường dùng các chức năng trên để patch, nó rất đơn giản khi chỉnh sửa (edit file config.plist bằng notepad luôn được), ngoài ra còn các chức năng khác nhưng tạm chưa nói đến ngay.

Tạm thời bạn không cần phải lo fix lỗi DSDT để Apply Patch như cách truyền thống nữa. Cụ thể sẽ áp dụng Find and Replace và Inject cho các thành phần phần cứng ra sao mình sẽ viết tiếp trong phần sau.

*Mình nhắc cho bạn nhớ, tính tới guide này, bạn vẫn không cần đến môi trường Mac OS để làm việc. Ngoài Clound Clover Editor ra sẽ dùng những công cụ gì thì phần sau mình sẽ nói dần dần.

Phần 4: Hackintosh thực hành patch DSDT cổng USB

Nếu bạn mong chờ bài viết tiếp theo hãy mạnh dạn comment ý kiến cuối bài.

Phần 2: Hackintosh hình dung trước rồi hãy bước.

DSDT & SSDT là trò chơi xếp hình.

Để bắt đầu bước chân vào thế giới hackintosh bạn hãy tìm hiểu về việc làm sao để phần mềm có thể điều khiển được phần cứng. Bạn hãy hình dung được cơ chế hoạt động của nó trước và sẽ tìm cách hiểu về nó bằng thực hành.

Trước khi bắt đầu, hãy chắc chắn rằng bạn đã đọc Phần 1: Cách Hackintosh của newbie hầu hết đều sai.

DSDT là gì vậy ?

Trong phần cứng máy tính, Motherboard (hay còn gọi là Mainboard) là thiết bị giữ chức năng gắn kết tất cả các thành phần phần cứng. Khi làm việc với hệ điều hành, DSDT chính là cuốn hướng dẫn sử dụng của Motherboard.
DSDT & SSDT giống như sách hướng dẫn sử dụng.
DSDT viết tắt của : Differentiated System Description Table.
DSDT là một bản ghi được lập trình bằng ACPI (Advanced Configuration and Power Interface)
DSDT chứa các giao thức giúp cho hệ điều hành có thể nhận điện, điều khiển, kiểm tra và giám sát trạng thái các thành phần phần cứng .  

In a computer, the Advanced Configuration and Power Interface (ACPI) provides an open standard that operating systems can use to discover and configure computer hardware components, to perform power management by (for example) putting unused components to sleep, and to perform status monitoring. wiki

DSDT là bộ mặt (theo nghĩa phần mềm) của Motherboard.
Mỗi model Motherboard sẽ có một DSDT riêng. 
Ngược lại nếu DSDT tương tự nhau có nghĩa là sẽ có các thành phần phần cứng giống hoặc tương tự nhau.

Nhấn mạnh rằng RealMac cũng có DSDT như bao hệ thống Máy tính mà bạn đang dùng để chạy Windows hàng ngày vậy.

Còn SSDT thì sao ?

SSDT là bảng phụ của DSDT, nó sẽ được gộp vào DSDT khi nạp vào hệ điều hành.  

SSDT viết tắt của Secondary System Description Table.
SSDT cũng có các tính chất của DSDT.
SSDT khác DSDT ở chỗ là nó không dành cho tổng thể Motherboard, nó chứa đựng giao thức về thành phần phần cứng cụ thể trên motherboard.

SSDT thường chứa các giao thức về CPU, GPU, port USB, hệ thống cảm biến, SATA...

Nguyên nhân sinh ra SSDT ?

Để dễ dàng tái sử dụng code ACPI khi sản xuất hàng loạt model Motherboard có cùng kiến trúc phần cứng. Cụ thể như sau:

Danh sách các dòng Motherboard dùng chipset 200 series của MSI 
Về phần cứng mỗi dòng MotherBoard trên đều có sự giống nhau về chipset (dòng Z270 sẽ dùng chipset Z270, dòng H270 sẽ dùng chipset H270... tương tự các dòng khác).
Chẳng hạn nếu cùng một phân khúc, các dòng main này khác nhau 10%  thì có thể tái sử dụng DSDT cho 90%  giống nhau, sự khác nhau còn lại dành  cho SSDT.
Giống như chơi xếp hình, bạn muốn lấy miếng lego màu đỏ cho dòng Motherboad M7 và màu xanh cho M5. Chỉ cần lấy DSDT chung, rồi Motherboard nào thì nạp SSDT theo thành phần của Motherboard đó.

Làm sao để trích suất DSDT & SSDT ?

Hackintosh thì dùng Clover Bootloader, vậy hãy trích suất DSDT & SSDT bằng Clover là chuẩn nhất.

Chuẩn bị 1 USB có dung lượng 128MegaByte trở lên.
Format USB với định dạng FAT32.

Bước 1: Tải về Package.
Bước 2: Giải nén thu được thư mục EFI
Bước 3: Copy thư mục EFI vào USB.
Bước 4: Khởi động lại, vào menuboot lúc khởi động chọn USB UEFI
Bước 5: Clover hiện lên, ấn F2 chờ 20s, ấn tiếp F4 chờ 20s, ấn tiếp F6 chờ 20s
Bước 6: Ấn nút nguồn để tắt máy, rút usb khi tắt máy xong.
Bước 7: Lúc này DSDT & SSDT gốc của máy bạn đang nằm ở USB/EFI/Clover/ACPI/Origin.

* Chú ý
+ trong BIOS phải disable Secureboot.
Một số máy nhất là acer yêu cầu phải tạo pass admin trong BIOS mới cho disable Secureboot.
+ trong BIOS phải enable UEFI.
Với desktop thì trong bios chỉnh lại chọn boot với OtherOS.
Với laptop thì nên để chế độ boot UEFI và enable CSM.

Khi đã có được DSDT & SSDT gốc rồi, tới Phần 3, mình sẽ nói về cách chế biến DSDT & SSDT theo cách dễ nhất.

Mời các bạn đón đọc.

Phần 3: Hackintosh patch dsdt một khái niệm đễ hiểu "nhầm"
Nếu bạn mong chờ bài viết tiếp theo hãy mạnh dạn comment ý kiến cuối bài.

Phần 1: Cách Hackintosh của newbie hầu hết đều sai.

Mài sắc rìu rồi hãy hẵng chặt cây.

Bài viết này sẽ định hướng lại, giúp các bạn hình dung về cách chơi hackintosh sao cho đơn giản và chuyên nghiệp nhất. Hãy gạt bỏ những suy nghĩ và phương pháp mà trước giờ bạn thường sử dụng để đọc bài này.

Con đường chơi hackintosh của newbie Việt Nam hầu hết đều sai.

Để mình miêu tả con đường mà 100% newbie hình dung khi chơi hackintosh:
Bước 1) tìm hiểu tạo bộ cài.
Bước 2) tìm hiểu fix lỗi khi boot bộ cài
---- khi đã có thể cài vào được
Bước 3) tìm hiểu cài kext các kiểu cài lấy được để cho nó nhận cái đã.
Bước 4) thấy Mac dở ẹc (do cài không đến nơi đến trốn), mất thời gian tìm hiểu mà chả được như các tút viết bla bla....

Với kiểu bên trên bạn thường bỏ cuộc ở 2) hoặc 4) mình nói đúng chứ ?.
Kết quả là hàng tá ông sida, cài không nổi rồi lu loa trên các diễn đàn là hackintosh không bằng Mac thật, cà giật, không kext bla bla........

Tức là sao ?
Tức là bạn đi theo lối cái gì cảm thấy dễ thì làm trước, khó thì làm sau, thậm trí khó thì bỏ qua luôn.

Bây giờ mình sẽ dẫn bạn đi theo con đường đúng đắn nghe thì có vẻ căng khó nhưng lúc làm thì cực kì đơn giản:

Bước 1) patch DSDT/SSDT , chuẩn bị config và kext.
Bước 2) tạo usb cài với bộ cài chính thống lấy từ store.
Bước 3) cài với DSDT/SSDT, config, kext vừa chuẩn bị.
3.1) fix các lỗi quan sát được khi boot bộ cài với "đồ"" đã chuẩn bị.
Bước 4) hoàn thiện Mac sau cài.

Kinh nghiệm cài rất nhiều máy qua nhiều năm của mình là như vậy.

Tại sao 1) lại là "patch DSDT/SSDT , chuẩn bị config và kext."
Vì: Tất cả các thành phần trên đã OK -> thì boot bộ cài chắc chắn sẽ OK -> chắc chắn boot Mac cũng OK luôn.
Cụ thể:

- DSDT/SSDT là hoa tiêu chỉ đường cho Mac.Tương tự DSDT/SSDT chuẩn hoặc ít ra chuẩn những thành phần tối thiểu sẽ giúp tránh được hầu hết các lỗi khi boot usb cài Mac. (Hoa tiêu tốt không chỉ giúp con thuyền đi đúng lộ trình, đi với con đường ngắn nhất mà còn giúp con thuyền đi trên con đường an toàn nhất, tránh các dải đá ngầm, các khu vực thời tiết xấu.)
- DSDT/SSDT có thể boot bộ cài không gặp lỗi có nghĩa là nó cũng có thể boot Mac mà không gặp lỗi (vì bộ cài Mac thực chất là hệ điều hành Mac thu nhỏ mà).
- Kext là thành phần không thể thiếu, nó chính là trình điều khiển của phần cứng của bạn - những phần cứng mà apple không support sẵn.
- Nên cho tất cả các kext tương ứng với phần cứng của bạn và loại bỏ kext không liên quan.
- Config kết nối tất cả, nó chỉ cho bootloader (clover) biết bạn có những trình điều khiển thêm nào, có hoa thiêu chỉ đường như nào, bạn là máy Mac gì, bạn cần boot với bootflag gì v.v.....

Trong quá trình boot bộ cài chính là quá trình test toàn bộ đống đồ trên, nếu suôn sẻ thì có nghĩa bạn đã thành công 70% rồi.

* Rồi bây giờ sẽ có bạn sẽ nói rằng : "...em thấy bước patch DSDT/SSDT khó quá, em chả biết làm, em thấy làm theo cách cũ thì bước nào dễ làm trước khó làm sau dễ hơn..."

Trả lời:
Việc Patch DSDT/SSDT theo phương pháp nào đi nữa cũng là điều bắt buộc nếu em muốn có hệ thống Hackintosh đạt mức hiệu suất tương đương real Mac cùng cấu hình, cũng như đảm bảo tính ổn định bền bỉ trong quá trình sử dụng Mac.

Vậy muốn hệ thống hoàn thiện, dù theo cách nào thì em cũng không trốn được việc patch DSDT/SSDT.

Tại sao 2) tạo usb cài lại phải dùng "bộ cài chính thống lấy từ store".

- Bộ cài trôi nổi (reup, leakling, getlink v.v.v.....) tiềm ẩn nguy cơ lỗi bộ cài, lỗi Mac được cài từ bộ cài trôi nổi. Không có bất kì nguồn nào có bộ cài sạch hơn Store. Bộ cài tải về chuẩn bạn sẽ loại bỏ được tất cả các nghi vấn lỗi do bộ cài khi cài và khi dùng Mac sau này.

Nghe có vẻ vô lý nhưng sự thực là vậy, mình support và quan sát thấy nếu mem tải bộ cài từ link reup (fshare, gdriver ...) mà còn chơi getlink nữa thì bộ cài tải về tiềm ẩn nguy cơ lỗi khi boot bộ cài, lỗi khi đang cài tự nhiên lỗi package, Mac cài được từ những bộ cài kiểu này cũng tiềm ẩn nguy cơ lỗi khi sử dụng. Mình từng gặp trường hợp tải từ bộ cài trôi nổi thì bị lỗi khi đang dùng thì bị panic sập nguồn khởi động lại, đang dùng bị mất âm thanh... nhưng cài lại bằng bộ cài chính thống từ store thì sạch bệnh.

Bạn tải theo bộ cài chuẩn chính thống, bạn không phải lăn tăn về lỗi có phải do bộ cài không, không lăn tăn khi nào sẽ phát sinh lỗi, lỗi đó có gián đoạn công việc đang làm. Đặc biệt khi máy cài để dùng làm việc thì càng cần độ ổn định cao.

Ngay cả khi đã cẩn thận ở 1) và 2), khi boot vẫn có thể bị kẹt, bị lỗi, lúc này sẽ quay lại bước 1) check và apply patch phù hợp, thay kext phù hợp, sửa config cho phù hợp. Mục tiêu đầu tiên là phải pass bộ cài với những gì đã làm ở 1) và 2).


Hoàn thiện sau cài làm như nào:

- copy clover vào EFI
- cài kext vào SLE
- tiếp tục update patch và kext để hoàn thiện nốt 30% còn lại.

Tiêu chí chơi Hackintosh là hạn chế patch kext, hạn chế cài kext vào SLE - giữ Mac càng nguyên bản càng tốt.
Hầu như Mac mình cài cho khách, hi hữu lắm thì sẽ cài thêm kext cho âm thanh,  còn lại tất cả các kext của hackintosh cái đều nằm ở CLover.

Các lỗi còn lại thường là lỗi không cho tải app từ store, lỗi về sleep, patch cổng USB, patch chỉnh độ sáng, patch tắt vga rời (nếu lap có optimus/switch Graphics), tìm kiếm kext bàn phím/touchpad phù hợp... thường là những lỗi có thể chấp nhận tạm rồi fix dần dần.

Bước 1), 2) 3) bạn đã làm việc hết sức mình, rất vất vả, giờ đây là lúc nhàn hơn cả, tới đây có thể túc tắc fix các lỗi nếu như bạn không vội.


Phần 2: Hackintosh hình dung trước rồi hãy bước.
Nếu bạn mong chờ bài viết tiếp theo hãy mạnh dạn comment ý kiến cuối bài.

What clients say

Start Work With Me

Contact Us

JOHN DOE
+123-456-789
Melbourne, Australia