Apa itu POSIX (Portable Operating System Interface)?

POSIX (Portable Operating System Interface) adalah sekumpulan standar antarmuka sistem operasi yang berbasis pada sistem operasi Unix. Versi terbaru dari spesifikasi POSIX — IEEE Std 1003.1-2017 — mendefinisikan antarmuka dan lingkungan standar yang bisa digunakan oleh sistem operasi (OS) untuk menjalankan aplikasi yang sesuai dengan standar POSIX. Standar ini juga mencakup interpreter perintah (shell) dan program utility umum. Tujuan utama POSIX adalah untuk mendukung portabilitas aplikasi di tingkat source code, sehingga aplikasi bisa dibangun agar bisa dijalankan di OS mana pun yang sesuai dengan POSIX.

Sejarah singkat standar POSIX

Antarmuka POSIX awalnya dikembangkan di bawah naungan IEEE. Tapi sekarang, standar ini dikembangkan dan dikelola oleh Austin Common Standards Revision Group, atau yang biasa dikenal sebagai Austin Group.

Austin Group sendiri adalah gabungan dari tiga organisasi: IEEE, The Open Group, dan Joint Technical Committee 1 dari International Organization for Standardization (ISO) serta International Electrotechnical Commission (IEC). Hak merek dagang POSIX dimiliki oleh IEEE, sementara Unix adalah merek dagang milik The Open Group, sebuah konsorsium global yang mengembangkan standar teknologi.

POSIX hadir karena adanya kebutuhan agar aplikasi bisa berjalan di berbagai sistem tanpa harus diubah-ubah. Dulu, programmer harus menulis ulang aplikasinya untuk setiap jenis komputer atau OS yang berbeda. Hal ini mulai berubah sejak IBM merilis System/360, yang semuanya bisa menjalankan OS yang sama, yaitu OS/360. Ini jadi langkah awal menuju portabilitas aplikasi yang lebih luas.

Kemudian muncul Unix, yang memungkinkan aplikasi berjalan di mesin dari berbagai vendor. Tapi karena banyak versi Unix bermunculan, harapan akan portabilitas jadi agak buyar. Meskipun begitu, Unix tetap populer dan akhirnya mendorong perlunya standar agar aplikasi bisa kompatibel antar sistem. Dari sinilah POSIX lahir. Standar pertamanya dirilis tahun 1988 dan berdasarkan AT&T Unix System V serta BSD Unix, dua varian Unix paling populer saat itu.

Unix commands
Perintah dasar pada sistem operasi Unix

Apa itu standar POSIX?

Selama bertahun-tahun, spesifikasi POSIX terus mengalami revisi dan reorganisasi. Awalnya, tiap standar disebut dengan format POSIX diikuti angka, contohnya POSIX.1 untuk antarmuka pemrograman aplikasi dalam bahasa C, dan POSIX.2 untuk antarmuka shell dan utility. Nama resminya masing-masing adalah IEEE Std 1003.1 dan IEEE Std 1003.2.

Beberapa penambahan juga dilakukan, misalnya IEEE Std 1003.1b-1993 yang membahas ekstensi real-time. Tapi sekarang, semua spesifikasi itu digabung jadi satu: IEEE Std 1003.1, versi terbaru adalah edisi 2017 yang dirilis tahun 2018. Nama lainnya adalah POSIX.1-2017 atau cukup disebut POSIX.1.

POSIX ini juga dikenal dengan nama lain. The Open Group menyebutnya sebagai *The Open Group Base Specifications Issue 7*, edisi 2018. Sementara ISO/IEC menamainya ISO/IEC 9945:2009. ISO mengadopsi standar ini sejak 2009 dan memberikan dua *Technical Corrigendum* di tahun 2012 dan 2017 agar selaras dengan versi IEEE.

Spesifikasi POSIX.1-2017 mendefinisikan layanan fundamental yang dibutuhkan untuk membangun aplikasi yang kompatibel dengan POSIX. Tujuannya adalah menyatukan sintaks dan semantik standar, supaya developer bisa menulis aplikasi portable. POSIX.1 dibagi dalam empat volume utama:

  1. Base definitions. Berisi definisi umum yang dipakai dalam spesifikasi, termasuk istilah, konsep, sintaks, fungsi layanan, dan antarmuka command-line.
  2. System interfaces. Menjelaskan istilah dan konsep terkait antarmuka sistem, serta fungsi-fungsi yang tersedia bagi aplikasi yang berjalan di sistem yang sesuai dengan POSIX.
  3. Shell and utilities. Berisi penjelasan tentang perintah dan utility yang tersedia di sistem POSIX, termasuk bahasa perintah yang digunakan.
  4. Rationale. Menyediakan informasi historis seputar isi standar dan alasan di balik penambahan atau penghapusan fitur tertentu.

POSIX.1 mengusung pendekatan “tulis sekali, pakai di mana saja” (*write once, adopt everywhere*) dengan menyediakan layanan dasar untuk membangun aplikasi secara efisien. Standar ini lebih fokus ke hasil yang dibutuhkan untuk pengembangan aplikasi, bukan ke metode implementasinya. POSIX bisa digunakan oleh pengembang sistem maupun developer aplikasi.

Linux yang merupakan turunan dari Unix bisa jadi cukup menantang untuk dipelajari. Yuk pelajari komponen utama Linux supaya lebih paham sistem operasinya.

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *