Setiap pembangun pernah mendengarnya, biasanya diucapkan dengan geram pada pukul dua pagi: "Ia berfungsi di mesin saya." Apabila sesuatu binaan (build) berjaya secara lokal tetapi gagal di peringkat staging, kita secara naluri akan menyalahkan versi rangka kerja (framework), pemboleh ubah persekitaran yang hilang, atau Docker itu sendiri. Lebih kerap daripada yang kita mahu akui, sistem operasi sebenarnya adalah punca utamanya. Laluan fail, panggilan sistem (system calls), pengurus pakej, dan tingkah laku kernel semuanya membentuk cara kod dijalankan. Memilih OS yang betul bukan tentang menyertai sesuatu kumpulan. Ia adalah tentang menghapuskan geseran antara komputer riba anda dan persekitaran produksi.

Windows: Si Serba Boleh

Windows kekal sebagai pilihan utama atas sebab yang mudah: perkakasan terus berfungsi. Sambungkan sebarang peranti, dan pemacu (driver) berkemungkinan besar sudah tersedia. Bagi pembangun yang bekerja dalam ekosistem .NET, Visual Studio masih merupakan piawaian emas. IntelliSense, alat penyahpepijatan (debugging), dan rangka projek (project scaffolding) terasa sangat asli kerana ia dibina khusus untuk platform ini.

Dengan Windows Subsystem for Linux 2, Microsoft telah merapatkan jurang antara aliran kerja Windows dan berasaskan Unix. WSL2 menjalankan kernel Linux sebenar di dalam VM utiliti yang ringan, yang bermaksud anda boleh memanggil bash, menggunakan apt, dan menjalankan Ubuntu tanpa perlu melakukan dual-booting. Integrasinya cukup lancar sehingga ramai pembangun terlupa bahawa mereka tidak menggunakan Linux asli.

Namun, abstraksi ini mempunyai hadnya. Docker Desktop pada Windows bergantung pada VM Linux untuk enjinnya, dan terjemahan sistem fail antara kernel Windows NT dan kontena Linux memperkenalkan kependaman (latency). Operasi berat I/O, seperti memasang (mounting) direktori node_modules yang besar atau melakukan kompilasi dalam satu volume, berjalan jauh lebih lambat berbanding pada Linux bare-metal. Kemas kini Windows juga mempunyai tabiat melakukan but semula (reboot) mesin anda di tengah-tengah tugasan, yang mana ia tidak ideal apabila anda sedang tekun melakukan sesi penyahpepijatan.

Windows sangat sesuai untuk pelajar, pemain permainan video, dan jurutera yang membina aplikasi .NET. Jika anda memerlukan satu mesin yang boleh menjalankan Steam selepas waktu kerja dan Visual Studio pada waktu siang, inilah pilihan yang praktikal.

Linux: Standard Pelayan

Jika persekitaran produksi berjalan di atas Linux, membangunkan kod di atas Linux akan menghapuskan sebarang kejutan. Sistem operasi ini dibina untuk pelayan, dan andaian reka bentuknya sepadan dengan apa yang dijangkakan oleh persekitaran awan (cloud). Falsafah Unix yang menganggap segala-galanya sebagai fail bermakna konfigurasi, peranti perkakasan, dan proses yang sedang berjalan semuanya berada di suatu tempat dalam pokok sistem fail. Ketekalan tersebut menjadikan automasi sangat mudah. Anda boleh menulis skrip penggunaan (deployment) dengan bash, mengurus perkhidmatan dengan systemd, dan menyelaraskan kontena tanpa perlu menterjemah antara dua seni bina kernel yang berbeza.

Docker dibina berasaskan primitif Linux. Namespaces dan cgroups adalah asli di sini, jadi kontena bermula lebih cepat dan berjalan hampir pada kelajuan bare-metal berbanding platform lain. Beban kerja (overhead) adalah minimum, pengurus pakej adalah matang, dan anda boleh meringkaskan sistem kepada apa yang anda perlukan sahaja. Pelayan Linux tanpa paparan (headless) boleh berjalan selama bertahun-tahun tanpa perlu but semula.

Kekurangannya adalah pada kekemasan desktop. Sokongan perisian komersial agak ketinggalan. Anda tidak akan menemui aplikasi Adobe Creative Cloud yang asli, dan beberapa IDE proprietari atau alat kolaborasi memerlukan jalan penyelesaian alternatif (workarounds). Persediaan perkakasan juga memerlukan kesabaran. Kad Wi-Fi, penyesuai Bluetooth, dan grafik hibrid kadangkala memerlukan pemasangan pemacu secara manual atau pelarasan modul kernel. Pemacu NVIDIA telah bertambah baik secara ketara, tetapi untuk mengkonfigurasi CUDA dengan betul masih memerlukan pembacaan dokumentasi yang mengandaikan anda sudah mahir menggunakan terminal.

Jurutera backend, pengamal DevOps, dan sesiapa sahaja yang membina infrastruktur AI harus menjadikan Linux sebagai pilihan utama. Apabila persekitaran produksi anda menjalankan Ubuntu atau RHEL, menyamai persekitaran tersebut secara lokal dapat menjimatkan berjam-jam masa penyahpepijatan penggunaan.

macOS: Unix yang Kemas

macOS berada di jalan tengah yang menarik minat pembangun yang mahukan terminal yang berfungsi seperti Linux dan GUI yang berfungsi seperti produk pengguna. Di bawah lapisan sistemnya, ia adalah sistem operasi Unix yang diperakui, yang bermaksud bash, zsh, make, ssh, dan git semuanya berfungsi tepat seperti yang anda jangkakan pada sesebuah pelayan. Apple Silicon telah mengubah segalanya secara drastik. Cip siri-M memberikan prestasi kelas desktop sambil mengekalkan jangka hayat bateri komputer riba dalam julat 10 hingga 20 jam. Anda boleh mengkompilasi projek, menjalankan stack lokal, dan melakukan panggilan video tanpa kipas berpusing kencang.

Bagi pembangun mudah alih, macOS adalah satu kemestian. Xcode dan simulator iOS hanya boleh dijalankan pada perkakasan Apple. Ekosistem ini juga cenderung menyokong aliran kerja kreatif dan full-stack. Trackpad dan paparan skrinnya sangat cemerlang, dan kebolehpercayaan fungsi sleep/wake bermakna anda hanya perlu membuka penutup dan menyambung kerja dengan serta-merta.

Kekurangannya adalah kos dan fleksibiliti. Anda membayar harga premium untuk naik taraf memori dan storan yang sepatutnya mudah dilakukan pada PC tersuai atau ThinkPad. Barisan perkakasan adalah terhad. Jika anda memerlukan GPU khusus untuk latihan model tempatan atau port yang tidak biasa untuk peralatan makmal, Mac mungkin tidak dapat memenuhi keperluan anda tanpa enclosure luaran dan dongle.

Pembangun full-stack, jurutera iOS, dan pengasas syarikat pemula yang mementingkan kemudahalihan sering memilih platform ini. Ia adalah pilihan yang mahal, tetapi ia meminimumkan kesulitan harian.

Adakah OS Penting untuk AI?

Model itu sendiri tidak membezakan OS. Model bahasa besar yang dijalankan melalui Ollama, LM Studio, atau vLLM menghasilkan token yang sama tidak kira sama ada kernel anda dikompilasi oleh Microsoft, Linus Torvalds, atau Apple. Alatan anda jauh lebih penting daripada sistem operasi anda. Apabila anda membina ejen AI, fokuslah untuk menguasai pengurusan kebergantungan Python, runtime Node.js, Docker untuk persekitaran yang boleh dihasilkan semula, integrasi API, dan pengurusan memori untuk tetingkap konteks.

Walau bagaimanapun, sistem AI pengeluaran sebahagian besarnya dijalankan pada Linux. Pemacu GPU pusat data NVIDIA dan toolkit CUDA dibangunkan dan dioptimumkan untuk Linux terlebih dahulu. Beban (overhead) desktop grafik disingkirkan, meninggalkan lebih banyak VRAM dan kitaran CPU untuk latihan dan inferens. Jika anda menyewa pengkomputeran awan, anda hampir pasti akan menggunakan SSH ke dalam instans Linux. Untuk eksperimen tempatan, MacBook dengan Apple Silicon adalah senyap dan cekap tenaga, tetapi apabila tiba masanya untuk melatih pada