Katakanlah kita memiliki mesin OS X yang berjalan dengan 4 GB RAM. Apakah mungkin untuk mengaturnya sehingga tidak ada proses tunggal yang dapat mengambil lebih dari katakanlah, 3 GB, jadi tidak masalah bagaimana memori menghambat proses, selalu ada beberapa memori yang tersisa untuk menjaga sistem responsif?
12
Jawaban:
Pertanyaan serupa untuk ini dicatat di sini Bagaimana Saya Dapat Membatasi Jumlah RAM yang Dapat Digunakan Aplikasi Mac OS?
Mereka merekomendasikan penggunaan perintah ulimit , tetapi mereka tidak berhasil membatasi jumlah yang mereka inginkan. Saya pikir masalah yang mereka hadapi adalah kenyataan bahwa opsi yang diset -u atau -v tidak memperhitungkan sistem paging memori, misalnya Anda hanya dapat mengalokasikan jumlah ruang X untuk Anda memproses dalam RAM nyata, tetapi kita dapat halaman Anda kehabisan memori virtual sepanjang hari.
Perhatikan bahwa ini mungkin Berbahaya menonaktifkan Memori Virtual, itu bisa mengakibatkan Mac Anda hanya terkunci, dll ketika menjalankan RAM.
Coba jalankan ulimit dengan argumen -l, -m, atau -v namun seperti yang tercantum di halaman manual ulimit hingga ke OS jika ia akan memperhatikan pengaturan ini atau tidak seperti yang disebutkan.
Tidak dapat menemukan sumber pasti yang mengonfirmasi apakah OS X mengabaikan ulimit atau tidak, tetapi setelah ulimit yang dirujuk gagal
Jika Anda dapat membuat ulimit bekerja untuk kebutuhan Anda dengan sendirinya, cobalah, jika bukan kombinasi ulimit dan atau menonaktifkan memori virtual mungkin dapat memungkinkan Anda menetapkan batas 3 GB pada proses tertentu. FYI di sini adalah tautan yang bagus untuk informasi lebih lanjut tentang Memori Virtual Nonaktifkan Sepenuhnya dalam Sistem Snow Leopard 10.6
sumber
Jika Anda menjalankan Server Lion (atau OSX yang lebih baru) di Mac Anda, Anda mungkin dapat menjalankan OSX di dalam VM (VirtualBox, Parallels, atau VMWare, et.al.) pada Mac itu. Batasi VM hingga 3GB RAM fisik, dan aplikasi atau proses apa pun di dalam VM juga akan sangat terbatas. Sistem hosting VM harus tetap responsif bahkan jika OS di VM mendukung-swap-disk-terbatas atau crash.
Jika Anda sedang men-debug proses yang berpotensi melarikan diri, Anda mungkin dapat ssh ke VM untuk menjalankan debugger atau debug nub dari baris perintah, dan mencatat hal-hal sampai semuanya terkunci.
sumber