Posix

Standar Posix

Standar Posix

POSIX: Gambaran Umum

Antarmuka Sistem Operasi Portabel (POSIX) adalah standar IEEE yang membantu kompatibilitas dan portabilitas antar sistem operasi. Secara teoritis, kode sumber yang sesuai dengan POSIX harus mudah dibawa-bawa. Di dunia nyata, transisi aplikasi sering kali mengalami masalah khusus sistem. Tetapi kepatuhan POSIX membuatnya lebih mudah untuk mem-porting aplikasi yang dapat menghemat waktu. Jadi pengembang harus membiasakan diri dengan dasar-dasar standar yang banyak digunakan ini.

Sejarah POSIX

Pemrogram awal harus menulis ulang aplikasi mereka dari awal untuk setiap model komputer baru. Tetapi IBM System/360 mengubahnya. Pada tahun 1964, ia memperkenalkan sistem operasi OS/360. IBM mulai menggunakan arsitektur perangkat keras yang sama untuk memungkinkan model baru menggunakan kembali sistem operasi yang sama same. Kehadiran OS umum di beberapa mesin menyiapkan tahap pertama untuk portabilitas aplikasi.

Pada akhir 1960-an, kedatangan UNIX membuka kemungkinan baru. Bell Labs AT&T bertanggung jawab atas pengembangan awal sistem operasi baru ini. Itu bisa berjalan melintasi mesin dari beberapa vendor. Tapi UNIX mulai bercabang menjadi berbagai rasa. Selain Sistem V AT&T, ada Berkeley Software Distribution (BSD), Xenix dan banyak lagi. Tidak mudah untuk melewati rasa ini. Janji portabilitas aplikasi menabrak gundukan jalan. Dalam beberapa dekade mendatang, pengenalan sistem operasi baru hanya akan membuatnya lebih kompleks untuk aplikasi port di seluruh perangkat keras, sistem operasi, dan vendor.

Standar POSIX dikembangkan pada 1980-an untuk menyelesaikan masalah portabilitas. Standar ditentukan berdasarkan Sistem V dan BSD Unix. POSIX tidak mendefinisikan sistem operasi, itu hanya mendefinisikan antarmuka antara aplikasi dan sistem operasi. Pemrogram memiliki kebebasan untuk menulis OS dan aplikasi mereka sesuka mereka selama antarmuka antara keduanya dihormati. Karena POSIX tidak bergantung pada perangkat keras, sistem operasi, atau vendor, lebih mudah untuk mencapai portabilitas aplikasi.

Standar POSIX pertama dirilis pada tahun 1988. Secara formal, itu disebut Standar IEEE 1003.1-1988 Antarmuka Sistem Operasi Portabel untuk Lingkungan Komputer”. Pada tahun 1990, versi internasional dari standar yang sama dengan sedikit variasi dirilis sebagai ISO/IEC 9945-1:1990 Teknologi informasi - Antarmuka Sistem Operasi Portabel (POSIX) - Bagian 1: Antarmuka Program Aplikasi Sistem (API).

Awalnya, POSIX dibagi menjadi beberapa standar:

POSIX.1: Layanan utama
POSIX.1b: Ekstensi waktu nyata
POSIX.1c: Ekstensi utas
POSIX.2: Shell dan Utilitas

Setelah 1997, Grup Austin membawa semua standar di bawah satu payung. Sejak itu, versi POSIX.1-2001 (juga dikenal sebagai IEEE Std 1003.1-2001), POSIX.1-2004 (juga dikenal sebagai IEEE Std 1003.1-2004) dan POSIX.1-2008 (juga dikenal sebagai IEEE Std 1003.1-2008) telah dirilis.

Contoh beberapa sistem yang sesuai dengan POSIX adalah AIX, HP-UX, Solaris, dan MacOS (sejak 10.5 Macan Tutul). Di sisi lain, Android, FreeBSD, Distribusi Linux, OpenBSD, VMWare, dll., ikuti sebagian besar standar POSIX, tetapi tidak bersertifikat.

Dasar-dasar POSIX

POSIX.Standar 1-2008 menangani empat bidang utama:

  1. Volume Definisi Dasar: Istilah umum, konsep, dan antarmuka.
  2. Volume Antarmuka Sistem: Definisi fungsi dan subrutin layanan sistem. Juga, termasuk portabilitas, penanganan kesalahan, dan pemulihan kesalahan.
  3. Volume Shell dan Utilitas: Definisi antarmuka aplikasi apa pun untuk memerintahkan shell dan program utilitas umum.
  4. Volume Alasan: Berisi informasi dan sejarah tentang fitur yang ditambahkan atau dibuang dan alasan keputusan.

Standar ini tidak mencakup antarmuka grafis, antarmuka basis data, portabilitas objek/kode biner, konfigurasi sistem, pertimbangan I/O, atau ketersediaan sumber daya.

Beberapa prinsip panduan di balik desain POSIX adalah:

Pengembangan Aplikasi POSIX

Tujuan POSIX adalah untuk meningkatkan portabilitas. Ketika kode sumber Anda mengikuti standar, Anda dapat mengkompilasi dan menjalankan kode pada mesin yang berbeda dengan mudah. Namun, jika POSIX didefinisikan sebagai persyaratan umum untuk suatu aplikasi, hal itu dapat menyebabkan kebingungan. Standar POSIX lengkap adalah 4000-plus halaman dengan lebih dari 1350 antarmuka. Tidak masuk akal untuk mengimplementasikan semuanya. Jadi setiap proyek harus mendefinisikan aspek POSIX yang akan memenuhi persyaratan tertentu.

Ada kesalahpahaman dalam komunitas pengembangan bahwa standar POSIX sudah tua dan tidak relevan. Itu tidak benar. POSIX adalah dokumen hidup yang diperbarui secara berkala oleh Grup Austin. Siapa pun dapat bergabung dengan grup dan berpartisipasi dalam meningkatkan standar. Standar ini digunakan secara aktif di server, workstation, router, perangkat seluler, sistem tertanam, dan lainnya saat ini. Ini digunakan untuk mesin UNIX dan Linux.

Namun, pengembang harus menyadari bahwa standar POSIX memiliki masalah. Anda dapat melaporkan bug apa pun yang Anda temukan ke Grup Austin dan itu akan diperiksa untuk revisi berikutnya.

Kesimpulan
POSIX mungkin tampak menakutkan pada awalnya. Namun, pengembang aplikasi harus membiasakan diri dengan dasar-dasarnya karena akan muncul sebagai persyaratan dari waktu ke waktu. Karena cakupan standar yang besar, tidak mungkin untuk menjadi ahli dalam dokumen lengkap. Pengembang dapat menjangkau komunitas UNIX dan Linux untuk mempelajari lebih lanjut. Komunitas dapat menjawab pertanyaan Anda dan memberi Anda pemahaman yang lebih baik tentang bagian mana dari standar yang relevan dengan proyek Anda.

Pelajaran lanjutan:

Referensi:

Cara Menggunakan AutoKey untuk Mengotomatiskan Game Linux
AutoKey adalah utilitas otomatisasi desktop untuk Linux dan X11, diprogram dengan Python 3, GTK dan Qt. Dengan menggunakan skrip dan fungsionalitas MA...
Cara Menampilkan Penghitung FPS di Game Linux
Game Linux mendapat dorongan besar ketika Valve mengumumkan dukungan Linux untuk klien Steam dan game mereka pada tahun 2012. Sejak itu, banyak game A...
Cara mengunduh dan Memainkan Civilization VI Sid Meier di Linux
Pengenalan permainan Civilization 6 adalah konsep modern dari konsep klasik yang diperkenalkan dalam seri game Age of Empires. Idenya cukup sederhana;...