asari_tb90
Banned
- Tham gia
- 14/8/2013
- Bài viết
- 82
Smartphone Android là những thiết bị tuyệt vời, có thể thực hiện rất nhiều công việc nhờ mã nguồn mở. Tuy nhiên cũng chính vì vậy mà hầu hết các vấn đề liên quan đến hệ điều hành này đến từ sự hiểu biết chưa đầy đủ về Android. Bài viết này sẽ giúp các bạn loại bỏ các quan niệm sai lầm và tiến hành các bước để khiến nó hoạt động nhanh trở lại.
Do cách mà hệ điều hành
Android quản lý bộ nhớ và ứng dụng, bạn càng chạy nhiều ứng dụng thì càng ít bộ nhớ được cấp cho chúng. Cụ thể máy của bạn sẽ chậm đi bởi nó phải dành nhiều thời gian hơn cho việc chuyển tiếp các ứng dụng, vốn có quá ít bộ nhớ để hỗ trợ. Điều này sẽ ảnh hưởng đến cả hiệu năng lẫn thời lượng sử dụng pin.
Có một vài dấu hiệu nhận biết cho vấn đề này:
Dấu hiệu 1: một ứng dụng đang tải bỗng nhiên dừng lại
Chẩn đoán: dịch vụ hỗ trợ tải (download) bị hệ thống ngừng lại, không thể tiếp tục tải. Bạn hãy truy cập vào Cài đặt / Ứng dụng / Dịch vụ đang chạy. Nếu dịch vụ này đang “khởi động lại” thì chắc chắn hệ thống đã tắt nó để chuyển bộ nhớ sang cho các ứng dụng khác.
Dấu hiệu 2: các ứng dụng ở launcher (trình quản lý màn hình chủ và menu ứng dụng) mất nhiều giây để mở. Các hiệu ứng động trở nên chậm chạp. Kể cả nếu bạn cài một launcher khác, vấn đề vẫn không thuyên giảm.
Chẩn đoán: hệ thống đang bận chuyển bộ nhớ cho các dịch vụ và hoạt động. Ở mục dịch vụ đang chạy, bạn thấy rất nhiều trong số chúng “đang khởi động lại”, hoặc thời gian chạy “active” của chúng rất ngắn, chỉ một vài giây.Dấu hiệu 3: pin hết veo chỉ trong nửa ngày
Chẩn đoán: có quá nhiều dịch vụ ngầm đang chạy và chúng sử dụng hết dung lượng pin.
Nếu bạn truy cập vào mục theo dõi sử dụng pin (Cài đặt / Giới thiệu / Sử dụng pin) và bạn thấy một danh sách dài các ứng dụng cùng với lượng pin tính theo phần trăm mà chúng sử dụng, điều này có nghĩa là bạn đã kích hoạt quá nhiều ứng dụng. Chúng ăn pin từng chút một và dẫn đến hiện tượng hết pin rất nhanh.
Nguyên nhân: quá nhiều ứng dụng nhưng lại quá ít bộ nhớ. Tuy nhiên, bởi bộ nhớở điện thoại Android không thể mở rộng (trừ khi bạn mua máy khác), bạn chỉ có thể giải quyết tình trạng này bằng cách xóa một vài ứng dụng đi để giải phóng bộ nhớ. Trước tiên, hãy cùng nghiên cứu sâu hơn vào hệ điều hành Android và xem cách nó quản lý bộ nhớ, từ đó hiểu tại sao giải phóng bộ nhớ sẽ giúp máy bạn chạy nhanh hơn và ít lỗi hơn.Không bao giờ đủ bộ nhớ:
Hệ điều hành Android có 3 loại bộ nhớ chính: RAM (để chạy các chương trình), lưu trữ ứng dụng (để chứa các ứng dụng có sẵn hoặc được tải về) và thẻ nhớ SD (lưu trữ nhạc, ảnh và đóng vai trò lưu trữ phụ). Một vài thiết bị còn có thẻ SD trong (internal SD) và SD ngoài (external SD), chúng sẽ có tên thư mục lần lượt là “sdcard” và “sdcard-ext”.
Quản lý RAM là vấn đề rất phức tạp ở Android, bởi hệ điều hành này dựa trên nhân (kernel) Linux, và kể cả một lập trình viên Linux có kinh nghiệm cũng nói với bạn rằng nó khá khó hiểu. Trước khi Android khởi chạy, riêng phần cứng của máy đã chiếm khoảng 32MB bộ nhớ. Rồi sau đó là các ứng dụng khác (acore, điện thoại, Google, hệ thống…) sẽ lấy khoảng 65-80MB. Như vậy đã có 100-128MB “ra đi”, dù bạn chưa thực sự sử dụng một ứng dụng nào.
Thứ đầu tiên mà bạn sử dụng, dù bạn có thể không biết, đó là launcher. Tùy vào các launcher khác nhau, chúng thường lấy mất đi khoảng 8-30MB.
Giờ đến lượt các ứng dụng riêng lẻ. Thực ra nó không đơn giản như tên gọi. Rất nhiều ứng dụng được cấu thành từ nhiều bộ phận khác nhau, phần ngoài được gọi là quy trình (process), và phần trong được gọi là dịch vụ (service). Bởi cách nó hoạt động trong hệ sinh thái Android, một ứng dụng nặng vài trăm KB cũng có thể chiếm ít nhất 3MB bộ nhớ, thậm chí nhiều hơn nhiều.
Hãy truy cập vào mục quản lý dịch vụ. Bạn sẽ thấy mỗi dịch vụ chiếm từ 2-5MB, một số từ 15MB trở lên. Như vậy các ứng dụng không còn nhiều bộ nhớ để sử dụng, đặc biệt nếu các dịch vụ trên được mở thường xuyên. Bạn càng chạy nhiều ứng dụng (hoặc chúng tự động chạy), càng ít bộ nhớ có sẵn trong hệ thống.
Mỗi tiện ích (widget) mà bạn đặt ra ngoài màn hình được hỗ trợ bởi một dịch vụ. Nếu bạn dùng khoảng 5 widget, hãy chào tạm biệt 20MB bộ nhớ hoặc hơn. Đó là chưa kể đến hình nền động (live wallpaper), chúng thường chiếm khoảng 10-20MB. Như vậy trước khi chạm vào màn hình sau khi máy khởi động, đã có 160MB RAM tuột khỏi tay bạn.
Những smartphone Android đời đầu quản lý RAM cực kém. Chiếc điện thoại Google đầu tiên, T-Mobile G1 có bộ nhớ trong 192MB, và Motorola Droid có 256MB. Với 160MB đã biến mất, hầu như chẳng còn gì để chạy các ứng dụng khác. Các thiết bị về sau đó như Samsung Galaxy S được trang bị 512MB RAM, rồi 768MB, 1GB,… Hiện giờ, người dùng Android có thể tận hưởng nhiều nhất là 2GB RAM với các thiết bị cao cấp như HTC One, Galaxy S III, Galaxy Note II…
Có thể bạn sẽ băn khoăn, nếu chỉ có 80-90MB khả dụng, tại sao bạn có thể chạy 100-200 ứng dụng? Thực tế này có thể diễn ra là bởi thiết bị sẽ cố gắng nhồi nhét nhiều ứng dụng hơn bộ nhớ cho phép, nên nó sẽ tắt những ứng dụng và dịch vụ không quan trọng để nhường chỗ cho ứng dụng khác. Tuy vậy, những ứng dụng không may bị tắt đó có thể sẽ lại yêu cầu hệ thống đưa vào bộ nhớ. Nói một cách đơn giản hơn, CPU sẽ cố gắng nhét ứng dụng X và Y vào bộ nhớ, vốn chỉ đủ cho X, bằng cách chia sẻ thời gian giữa chúng. Nó sẽ load các ứng dụng, rồi lại đẩy chúng ra khỏi bộ nhớ để đưa các ứng dụng khác vào. Quá trình này diễn ra hoàn toàn âm thầm.
Bài học rút ra khá đơn giản: đừng để RAM chạy quá nhiều ứng dụng, bằng cách tự bạn hãy dùng ít ứng dụng đi.
Dù bộ nhớ lưu trữ ứng dụng của bạn có ít, nó cũng không quan trọng bằng RAM. Mỗi ứng dụng bạn chạy sẽ cần một chút khoảng trống để lưu trữ dữ liệu hỗ trợ. Vì vậy kể cả một ứng dụng nặng vài trăm KB cũng có thể chiếm vài MB dữ liệu. Đặc biệt là trình duyệt, cache của chúng có thể lên đến hàng chục MB.
Để xem bạn còn bao nhiêu chỗ để lưu ứng dụng, hãy vào Cài đặt / Thẻ nhớ SD / Bộ nhớ điện thoại. Ở phía dưới cùng nó sẽ cung cấp thông tin bạn cần.Vậy chúng ta có thể làm gì? Dưới đây là 6 cách phổ thông và 4 cách nâng cao.
Cách 1: Xóa ứng dụng bạn ít khi dùng
Do cách mà hệ điều hành
Android quản lý bộ nhớ và ứng dụng, bạn càng chạy nhiều ứng dụng thì càng ít bộ nhớ được cấp cho chúng. Cụ thể máy của bạn sẽ chậm đi bởi nó phải dành nhiều thời gian hơn cho việc chuyển tiếp các ứng dụng, vốn có quá ít bộ nhớ để hỗ trợ. Điều này sẽ ảnh hưởng đến cả hiệu năng lẫn thời lượng sử dụng pin.
Có một vài dấu hiệu nhận biết cho vấn đề này:
Dấu hiệu 1: một ứng dụng đang tải bỗng nhiên dừng lại
Chẩn đoán: dịch vụ hỗ trợ tải (download) bị hệ thống ngừng lại, không thể tiếp tục tải. Bạn hãy truy cập vào Cài đặt / Ứng dụng / Dịch vụ đang chạy. Nếu dịch vụ này đang “khởi động lại” thì chắc chắn hệ thống đã tắt nó để chuyển bộ nhớ sang cho các ứng dụng khác.

Dấu hiệu 2: các ứng dụng ở launcher (trình quản lý màn hình chủ và menu ứng dụng) mất nhiều giây để mở. Các hiệu ứng động trở nên chậm chạp. Kể cả nếu bạn cài một launcher khác, vấn đề vẫn không thuyên giảm.
Chẩn đoán: hệ thống đang bận chuyển bộ nhớ cho các dịch vụ và hoạt động. Ở mục dịch vụ đang chạy, bạn thấy rất nhiều trong số chúng “đang khởi động lại”, hoặc thời gian chạy “active” của chúng rất ngắn, chỉ một vài giây.Dấu hiệu 3: pin hết veo chỉ trong nửa ngày
Chẩn đoán: có quá nhiều dịch vụ ngầm đang chạy và chúng sử dụng hết dung lượng pin.
Nếu bạn truy cập vào mục theo dõi sử dụng pin (Cài đặt / Giới thiệu / Sử dụng pin) và bạn thấy một danh sách dài các ứng dụng cùng với lượng pin tính theo phần trăm mà chúng sử dụng, điều này có nghĩa là bạn đã kích hoạt quá nhiều ứng dụng. Chúng ăn pin từng chút một và dẫn đến hiện tượng hết pin rất nhanh.

Nguyên nhân: quá nhiều ứng dụng nhưng lại quá ít bộ nhớ. Tuy nhiên, bởi bộ nhớở điện thoại Android không thể mở rộng (trừ khi bạn mua máy khác), bạn chỉ có thể giải quyết tình trạng này bằng cách xóa một vài ứng dụng đi để giải phóng bộ nhớ. Trước tiên, hãy cùng nghiên cứu sâu hơn vào hệ điều hành Android và xem cách nó quản lý bộ nhớ, từ đó hiểu tại sao giải phóng bộ nhớ sẽ giúp máy bạn chạy nhanh hơn và ít lỗi hơn.Không bao giờ đủ bộ nhớ:
Hệ điều hành Android có 3 loại bộ nhớ chính: RAM (để chạy các chương trình), lưu trữ ứng dụng (để chứa các ứng dụng có sẵn hoặc được tải về) và thẻ nhớ SD (lưu trữ nhạc, ảnh và đóng vai trò lưu trữ phụ). Một vài thiết bị còn có thẻ SD trong (internal SD) và SD ngoài (external SD), chúng sẽ có tên thư mục lần lượt là “sdcard” và “sdcard-ext”.
Quản lý RAM là vấn đề rất phức tạp ở Android, bởi hệ điều hành này dựa trên nhân (kernel) Linux, và kể cả một lập trình viên Linux có kinh nghiệm cũng nói với bạn rằng nó khá khó hiểu. Trước khi Android khởi chạy, riêng phần cứng của máy đã chiếm khoảng 32MB bộ nhớ. Rồi sau đó là các ứng dụng khác (acore, điện thoại, Google, hệ thống…) sẽ lấy khoảng 65-80MB. Như vậy đã có 100-128MB “ra đi”, dù bạn chưa thực sự sử dụng một ứng dụng nào.
Thứ đầu tiên mà bạn sử dụng, dù bạn có thể không biết, đó là launcher. Tùy vào các launcher khác nhau, chúng thường lấy mất đi khoảng 8-30MB.
Giờ đến lượt các ứng dụng riêng lẻ. Thực ra nó không đơn giản như tên gọi. Rất nhiều ứng dụng được cấu thành từ nhiều bộ phận khác nhau, phần ngoài được gọi là quy trình (process), và phần trong được gọi là dịch vụ (service). Bởi cách nó hoạt động trong hệ sinh thái Android, một ứng dụng nặng vài trăm KB cũng có thể chiếm ít nhất 3MB bộ nhớ, thậm chí nhiều hơn nhiều.
Hãy truy cập vào mục quản lý dịch vụ. Bạn sẽ thấy mỗi dịch vụ chiếm từ 2-5MB, một số từ 15MB trở lên. Như vậy các ứng dụng không còn nhiều bộ nhớ để sử dụng, đặc biệt nếu các dịch vụ trên được mở thường xuyên. Bạn càng chạy nhiều ứng dụng (hoặc chúng tự động chạy), càng ít bộ nhớ có sẵn trong hệ thống.
Mỗi tiện ích (widget) mà bạn đặt ra ngoài màn hình được hỗ trợ bởi một dịch vụ. Nếu bạn dùng khoảng 5 widget, hãy chào tạm biệt 20MB bộ nhớ hoặc hơn. Đó là chưa kể đến hình nền động (live wallpaper), chúng thường chiếm khoảng 10-20MB. Như vậy trước khi chạm vào màn hình sau khi máy khởi động, đã có 160MB RAM tuột khỏi tay bạn.
Những smartphone Android đời đầu quản lý RAM cực kém. Chiếc điện thoại Google đầu tiên, T-Mobile G1 có bộ nhớ trong 192MB, và Motorola Droid có 256MB. Với 160MB đã biến mất, hầu như chẳng còn gì để chạy các ứng dụng khác. Các thiết bị về sau đó như Samsung Galaxy S được trang bị 512MB RAM, rồi 768MB, 1GB,… Hiện giờ, người dùng Android có thể tận hưởng nhiều nhất là 2GB RAM với các thiết bị cao cấp như HTC One, Galaxy S III, Galaxy Note II…
Có thể bạn sẽ băn khoăn, nếu chỉ có 80-90MB khả dụng, tại sao bạn có thể chạy 100-200 ứng dụng? Thực tế này có thể diễn ra là bởi thiết bị sẽ cố gắng nhồi nhét nhiều ứng dụng hơn bộ nhớ cho phép, nên nó sẽ tắt những ứng dụng và dịch vụ không quan trọng để nhường chỗ cho ứng dụng khác. Tuy vậy, những ứng dụng không may bị tắt đó có thể sẽ lại yêu cầu hệ thống đưa vào bộ nhớ. Nói một cách đơn giản hơn, CPU sẽ cố gắng nhét ứng dụng X và Y vào bộ nhớ, vốn chỉ đủ cho X, bằng cách chia sẻ thời gian giữa chúng. Nó sẽ load các ứng dụng, rồi lại đẩy chúng ra khỏi bộ nhớ để đưa các ứng dụng khác vào. Quá trình này diễn ra hoàn toàn âm thầm.
Bài học rút ra khá đơn giản: đừng để RAM chạy quá nhiều ứng dụng, bằng cách tự bạn hãy dùng ít ứng dụng đi.
Dù bộ nhớ lưu trữ ứng dụng của bạn có ít, nó cũng không quan trọng bằng RAM. Mỗi ứng dụng bạn chạy sẽ cần một chút khoảng trống để lưu trữ dữ liệu hỗ trợ. Vì vậy kể cả một ứng dụng nặng vài trăm KB cũng có thể chiếm vài MB dữ liệu. Đặc biệt là trình duyệt, cache của chúng có thể lên đến hàng chục MB.
Để xem bạn còn bao nhiêu chỗ để lưu ứng dụng, hãy vào Cài đặt / Thẻ nhớ SD / Bộ nhớ điện thoại. Ở phía dưới cùng nó sẽ cung cấp thông tin bạn cần.Vậy chúng ta có thể làm gì? Dưới đây là 6 cách phổ thông và 4 cách nâng cao.
Cách 1: Xóa ứng dụng bạn ít khi dùng