2013-07-04 22 views
13

Hiện tại, bất kỳ Android nào có hỗ trợ khu vực hoán đổi được cho là để tăng hiệu suất không?Tại sao hầu hết các thiết bị Android đều không có vùng trao đổi như hệ điều hành điển hình?

Những cân nhắc nào khiến hầu hết các thiết bị Android bỏ tính năng đó?

+0

Câu hỏi của bạn quá mơ hồ và quá rộng để có được câu trả lời đơn giản. Nếu bạn có một cái gì đó cụ thể để hỏi, xin vui lòng viết lại câu hỏi. –

Trả lời

24

Hiện tại Android có hỗ trợ khu vực trao đổi không?

Trích dẫn Dianne Hackborn:

Để có một chút cụ thể hơn, nó sử dụng phân trang nhưng không trao đổi không gian. Nghĩa là, nó phụ thuộc rất nhiều vào việc có thể tệp mmap() và có trang hạt nhân trong dữ liệu từ tệp khi cần (và thả các trang đó khi không cần). Tuy nhiên nó không sử dụng không gian hoán đổi để phân trang các trang bẩn.


Với một số hơi adaptions, khu vực trao đổi có thể làm việc với killer bộ nhớ thấp mặc định Android với nhau tốt, phải không?

Tôi chắc chắn sẽ không giả định điều đó.

Hiện tại bất kỳ Android nào có hỗ trợ vùng trao đổi giả sử để tăng hiệu suất không?

Nó không phải là "tăng hiệu suất".

những cân nhắc nào khiến Android thả ý tưởng này?

Đầu tiên, đèn flash trên bo mạch chậm, chậm hơn nhiều so với ổ đĩa cứng và SSD mà bạn đã sử dụng trên máy tính để bàn và máy tính xách tay. Và mặc dù chất lượng của bộ nhớ flash được sử dụng trên các thiết bị Android hiện nay vẫn tốt hơn so với trước đây nhưng nó vẫn không la hét nhanh. Đó là lý do tại sao, ví dụ, chúng ta phải đặc biệt quan tâm khi thực hiện cơ sở dữ liệu I/O, để sử dụng các giao dịch, để hạn chế số nếu các hoạt động ghi đĩa.

Thứ hai, lịch sử, đèn flash trên bo mạch bị giới hạn trong không gian. Chúng tôi không có đủ bộ nhớ trong cho các ứng dụng của chúng tôi, hãy để một mình dành một số để trao đổi.


Nếu bạn muốn thảo luận thêm, hãy sử dụng một diễn đàn thích hợp hơn, chẳng hạn như http://android.stackexchange.com, như câu hỏi của bạn chỉ là tiếp tuyến liên quan đến phát triển phần mềm.

+0

Câu trả lời hay! Cảm ơn! – JackWM

+1

Câu trả lời hay, nhưng tôi sẽ không đồng ý rằng trao đổi sẽ không tăng hiệu suất. Ngay cả khi bộ nhớ trao đổi sẽ chậm, thì nó vẫn sẽ không chậm hơn sau đó khởi động lại ứng dụng. Và khi bộ nhớ thấp, ứng dụng sẽ bị giết. Với ứng dụng bị giết, bạn cần phải khởi động lại ứng dụng khi bạn chuyển sang ứng dụng đó. Điều đó sẽ nhanh hơn nếu Android sử dụng swap. – Nux

+0

Hầu hết điều này vẫn đúng trong năm 2017? Chúng tôi có điện thoại với bộ nhớ 128 GB và bộ nhớ cũng nhanh hơn. Là lưu trữ vẫn còn quá chậm để thực hiện điều này thực tế? Cần cải thiện thêm bao nhiêu về tốc độ để trao đổi phần nào khả thi? – vanshg

5

Android hỗ trợ hoán đổi ... Đừng quên nó chỉ đơn giản là Linux với một số giao diện người dùng trên đó. :)

Tuy nhiên sự hỗ trợ phụ thuộc vào kernel bạn đang sử dụng .. Khi sử dụng một hạt nhân bạn nên biết nếu nó hỗ trợ không gian hoán đổi hay không ..

Nếu bạn là tốt trong hạt nhân, sau đó lấy nguồn , bật hỗ trợ hoán đổi và biên dịch nó. Tôi đảm bảo điều đó sẽ vui vẻ: p

Cá nhân hạt nhân của tôi hỗ trợ không gian hoán đổi và tôi sử dụng tệp 20 MB để hoạt động như một tệp hoán đổi.

+0

tốt đẹp, bạn có quan sát một số cải tiến không? – JackWM

+0

Hmm. Không nhiều .. –

+2

Một tệp hoán đổi 20MB dường như nghi ngờ rằng các thiết bị tầm trung hiện đại dễ dàng có hoặc vượt quá 512MB bộ nhớ chính .. vì điểm trao đổi là * bộ nhớ chính * off-load *, do đó bộ nhớ là * có sẵn * , đối với dữ liệu không thường xuyên sử dụng, tỷ lệ thấp dường như không thực tế. – user2864740

Các vấn đề liên quan