:quality(75)/2021_7_23_637626500152551381_637625267765195035_ios-15.jpeg)
Cách tăng tốc load ứng dụng trong iOS 15 và macOS Monterey
Noah Martin - một người từng là nhà phát triển ứng dụng iOS đã nhận ra rằng sau khi cập nhật lên iOS 15 beta cũng như macOS Monterey ứng dụng có tốc độ khởi chạy nhanh hơn đáng kể. Ban đầu Martin nghĩ rằng đó chỉ là cảm giác, nhưng sau khi tìm hiểu thì anh đã xác nhận đúng là ứng dụng trong bản cập nhật mới cần ít thời gian load hơn.

Martin cũng đã tìm hiểu lý do và giải thích cho chúng ta chính xác những gì Apple đã thực hiện bên dưới hệ điều hành. Đây là mấu chốt của vấn đề:
Hiện tại, tất cả các ứng dụng trong iOS và macOS đều được tạo dưới dạng “gói”. Nhưng thay vì đóng tất cả thành một gói lớn, nó được đóng thành nhiều gói nhỏ. Bên cạnh các gói còn có các thư viện được chia sẻ thông qua liên kết động - dynamic linker process (dyld).
Khi khởi chạy, tất cả những thứ trên đều được load vào RAM. Tuy nhiên RAM trên tất cả các thiết bị lại được chia thành nhiều pages nhỏ 16Kb. Các pages có kích thước nhỏ và không liên kết này làm tốn thời gian, việc khởi chạy ứng dụng bị trì hoãn.
Apple đã giải quyết vấn đề này trong iOS 15 và macOS Monterey bằng chains (chuỗi), fixups, và pointers. Tức là thay vì tải các thành phần riêng lẻ lên RAM, giờ đây một pointers có thể chains (chuỗi) các ứng dụng lên đến 64GB và kết nối chúng với nhau thông qua fixups.
Nói cách khác, các pages của RAM hiện được kết nối với nhau thành một chuỗi. Điều này giúp tiết kiệm rất nhiều thời gian quản lý siêu dữ liệu, do đó dẫn đến thời gian tải ứng dụng nhanh hơn. Trong các thử nghiệm của mình, Martin đã có thể tiết kiệm tới 50% dung lượng trong siêu dữ liệu, do đó cho phép ứng dụng khởi chạy nhanh hơn.
Nguồn: iphonehacks
:quality(75)/estore-v2/img/fptshop-logo.png)
:quality(75)/2021_7_15_637619787002458668_tinh-nang-moi-ios-15-beta-3-cover.jpg)
:quality(75)/2021_7_15_637619228624135845_ios-15-beta-3-cover.jpg)
:quality(75)/2021_7_17_637621092447983933_ios-15-public-beta-cover.png)