Iklan

Sebagian besar komputer saat ini dikirimkan dengan Windows versi 64-bit, dan sering kali RAM dalam jumlah minimal. Ini mempertanyakan seberapa baik kinerja sistem ini. Ini terutama benar ketika pengguna ingin menjalankan perangkat lunak 32-bit lama pada komputer baru ini.

Yang menimbulkan pertanyaan menarik. Apakah kamu membutuhkan lebih banyak atau lebih sedikit RAM Berapa Banyak RAM yang Anda Butuhkan?RAM seperti memori jangka pendek. Semakin banyak Anda melakukan banyak tugas, semakin banyak yang Anda butuhkan. Cari tahu berapa banyak yang dimiliki komputer Anda, cara memaksimalkannya, atau cara mendapatkan lebih banyak. Baca lebih banyak untuk menjalankan aplikasi 32-bit pada a Windows versi 64-bit Apa itu Komputasi 64-bit?Pengemasan komputer atau perangkat keras komputer penuh dengan istilah teknis dan lencana. Salah satu yang lebih menonjol adalah 64-bit. Baca lebih banyak ? Minggu ini, Bruce Epper mengetahuinya.

Pembaca Bertanya:

Apakah benar menjalankan aplikasi 32-bit pada sistem windows 64-bit mengkonsumsi?

instagram viewer
1.5 kali lebih banyak memori dibandingkan dengan menjalankan aplikasi 32-bit di bawah sistem operasi Windows 32-bit?

Balasan Bruce:

Kami sebelumnya telah membahas manfaat dan kelemahan menjaga semuanya 64-bit di seluruh papan dan beberapa efek "pencampuran dan pencocokan" Bagaimana Kinerja Windows Terpengaruhi oleh Perangkat Keras & Perangkat LunakSecara teori, perangkat lunak 32-bit dapat mengungguli mitra 64-bitnya, tergantung pada pengaturan perangkat keras. Kedengarannya rumit? Kami di sini masuk akal dan membantu Anda mendapatkan kinerja terbaik dari sistem Anda. Baca lebih banyak . Hari ini kita akan memeriksa bagaimana aplikasi 32-bit dijalankan pada Windows versi 64-bit.

Sistem operasi Windows 64-bit tidak dapat menjalankan program Windows 32-bit tanpa bantuan tambahan. Mereka terlalu berbeda: dari pointer dan tipe data, hingga bagaimana sistem memanggil (bagaimana program menggunakan sumber daya dari sistem operasi yang mendasarinya). Anda perlu beberapa cara untuk membuatnya kompatibel.

Memahami WoW64

Windows menggunakan subsistem WoW64 (Windows32 pada Windows64) untuk mengkompensasi perbedaan. Ini secara efektif bekerja sebagai emulator mini Windows 32-bit pada sistem x64 dan emulator penuh pada sistem Itanium (IA64).

Sistem IA64 memerlukan emulator penuh karena perbedaan dalam instruksi prosesor dan ukuran halaman memori (4K di x86 dan x64, 8K di IA64). Karena prosesor x64 memiliki semua instruksi prosesor x86 dan menggunakan ukuran halaman memori yang sama, prosesor x64 tidak memerlukan emulator penuh.

Dalam kedua kasus tersebut, WoW64 menyediakan antarmuka antara kernel Windows 64-bit dan ntdll.dll versi 32-bit (ini berisi daftar inti Fungsi kernel Windows), memotong panggilan kernel dan mengubahnya sehingga dapat diproses oleh fungsi 64-bit asli yang disediakan oleh Windows inti.

Ada 3 file DLL yang digunakan pada sistem x64 / IA64 untuk mencapai ini: wow64cpu.dll, wow64win.dll, dan wow64.dll. Fungsinya untuk mengabstraksi karakteristik prosesor dan memberikan pukulan (kita akan sampai di sana nanti) ke win32k.sys yang menyediakan fungsionalitas "jendela" dan ntoskrnl.exe yang berisi eksekutif, kernel, manajer memori, penjadwal proses (jangan dikelirukan dengan Penjadwal Tugas yang dapat diakses dari Control Panel), dan elemen inti operasi lainnya sistem.

dimuat-dll

Thunk adalah subroutine (anggap ini sebagai serangkaian instruksi yang melakukan satu tugas) yang memungkinkan program untuk mengeksekusi subrutin atau fungsi umum dalam sistem.

Dalam hal ini, ia mengekstrak argumen dari tumpukan panggilan program 32-bit, mengubahnya menjadi rekan-rekan 64-bit mereka, dan membuat panggilan sistem 64-bit. Setelah kembali dari panggilan, itu akan mengkonversi hasil 64-bit kembali ke 32-bit dan mendorong mereka kembali ke tumpukan panggilan program untuk digunakan pemanggil.

Semua pemukulan dilakukan dalam mode pengguna (yang memiliki izin terbatas) karena dua alasan. Pertama, ini meminimalkan efek bug dalam kode yang dapat mengakibatkan lubang keamanan, korupsi data, atau sistem crash jika berjalan dalam mode kernel.

Kedua, ini mengurangi dampak kinerja jika berjalan dalam mode kernel (mode yang digunakan oleh bagian-bagian penting dari sistem operasi) karena overhead yang terlibat ketika beralih di antara mode pengguna dan mode kernel dan kembali.

Kembali ke sistem Itanium, ada beberapa perbedaan penting yang perlu diperhatikan. Sistem IA64 menggunakan dua file tambahan. IA32exec.bin adalah emulator perangkat lunak x86 dan Wowia32x.dll menyediakan antarmuka antara WoW64 dan emulator perangkat lunak.

Proses 32-bit akan memuat file-file ini dan juga versi ntdll.dll 64-bit. Ini adalah satu-satunya biner 64-bit yang dapat dimuat ke dalam proses 32-bit sebelum Windows 7. Windows 7 dan yang lebih baru juga memiliki DLL lain, apisetschema.dll, yang akan dimuat ke semua proses.

penjelajah proses

Ketika proses 32-bit dimulai, itu akan memuat Wow64.dll yang pada gilirannya memuat versi 32-bit ntdll.dll dan setiap DLL 32-bit yang diperlukan dari % systemroot% \ SysWOW64. Sebagian besar file ini identik dengan binari pada sistem 32-bit meskipun beberapa telah ditulis ulang untuk berperilaku berbeda di bawah WOW64.

Melihat daftar DLL yang dimuat, kita dapat melihat ada 9 DLL yang dimuat dalam proses di bawah Win64 yang tidak ada untuk sistem Win32.

Sekarang, Anda mungkin tergoda untuk melihat ukuran file, menambahkannya dan menggunakannya sebagai dasar Anda untuk berapa banyak memori tambahan yang digunakan, tetapi Anda akan berakhir dengan hasil yang tidak akurat. File-file ini, pada dasarnya, dirancang untuk menjadi komponen bersama dan sebagai hasilnya, file pertama yang memerlukan DLL memuatnya ke dalam memori.

Program selanjutnya yang membutuhkan DLL yang sama tidak memuat seluruh komponen ke dalam memori. Mereka mendapatkan pointer ke komponen yang sudah dimuat, dan mengalokasikan RAM untuk elemen tambahan yang dimuat ke dalam proses.

Pengaturan Pengujian Kami

Untuk melihat apa yang terjadi, saya telah menyiapkan dua mesin virtual yang menjalankan Windows 7 Ultimate dengan 2 GB RAM yang dialokasikan untuk masing-masing. Salah satunya adalah versi 32-bit dan yang lain adalah 64-bit. Keduanya melalui proses instalasi dan patch yang sama persis.

Setelah kedua sistem ditambal, saya menonaktifkan file swap pada keduanya untuk mendapatkan gambaran yang lebih baik dari penggunaan memori dengan memastikan RAM tidak dapat dipindahkan ke disk. Setelah selesai, LibreOffice 5.0.3.2 diinstal.

lo-calc

Salinan Penjelajah Proses Sysinternals Process Explorer - Penggantian Task Manager Paling Kuat [Windows]Jujur saja, Windows Task Manager tidak begitu bagus untuk memahami dan mengelola proses yang berjalan di komputer Anda. Bahkan pada Windows 8, yang jauh lebih baik, pengelola tugas tidak dapat mendekati ... Baca lebih banyak juga ditempatkan di kedua mesin. Ini adalah alat yang saya gunakan untuk mengumpulkan informasi penggunaan memori. Pengaturan kolom default diubah sehingga saya bisa melihat Working Set dan WS Private use.

Nomor-nomor yang berfungsi ini mencerminkan jumlah RAM yang digunakan oleh program. Ini rumit sedikit lebih jauh dengan merefleksikan jumlah memori yang digunakan oleh perpustakaan bersama bahkan jika mereka sudah dimuat oleh proses lain. Karena itu, jika Anda menambahkan seluruh kolom, adalah mungkin untuk mendapatkan total lebih besar dari RAM yang dipasang. Perangkat kerja masih merupakan pengukur terbaik dari seberapa banyak memori yang dibutuhkan untuk suatu proses.

Proses yang kami periksa juga tidak berdiri sendiri. Berbagai program LibreOffice meluncurkan proses lain, soffice.exe, yang akan menjalankan proses lain lagi, soffice.bin. Kita perlu melihat total dari ketiga proses untuk melihat penggunaan memori yang efektif dari setiap program.

Untuk pengujian awal, saya cukup membuka Writer, Calc, dan Impress secara individual untuk melihat berapa banyak memori yang mereka konsumsi tanpa ada data yang dimuat dan mengekspor data dari Process Explorer. Dengan Calc dan Impress, saya telah membuka masing-masing file 3,7 MB .xls dan 3,9 MB .pptx dan mencatat penggunaan memori baru. Hasilnya bisa dilihat pada tabel di bawah ini. Semua data dalam KB.

penggunaan memori

Kejutan besar terjadi pada Impress. Tanpa dokumen itu menggunakan 4,1% lebih banyak RAM pada sistem 64-bit dan 9,9% kurang dengan dokumen dimuat. Saya menggali beberapa presentasi lain dan mendapatkan hasil yang serupa dengan semuanya. Sistem 64-bit pada akhirnya menggunakan lebih sedikit RAM daripada sistem 32-bit.

Jadi, apakah Windows versi 64-bit membutuhkan lebih banyak RAM daripada rekan-rekan 32-bit mereka ketika menjalankan aplikasi 32-bit? Secara umum, ya.

Tetapi apakah Anda perlu meningkatkan RAM Anda? Mungkin tidak. Perbedaan Betulkah tidak sebesar itu. Ini tentu tidak 1,5 kali berbeda.

Bruce telah bermain dengan elektronik sejak tahun 70-an, komputer sejak awal tahun 80-an, dan secara akurat menjawab pertanyaan tentang teknologi yang belum pernah digunakan atau dilihatnya sepanjang waktu. Dia juga mengganggu dirinya dengan mencoba bermain gitar.