Unix & Linux: Asal Usul dan Perbedaan

Aufa Billah
8 min readMay 25, 2020

--

Linux bukan Unix, tapi versi clone dari Unix.

Unix & BSD

Sebelum berbicara tentang Linux, pertama-tama kita harus kembali ke belakang untuk melihat sejarah, di mana terdapat sistem operasi yang sudah ada sejak lama, yaitu Unix.

Unix merupakan sistem operasi yang telah ada sejak lama, di AT&T Bell Labs. Proyek Unix dipimpin oleh Ken Thompson and Dennis Ritchie, dua ilmuan komputer terkenal.

Pengembangan resmi Unix dimulai pada musim panas 1969, dan versi pertama Unix dirilis pada Maret 1971, diikuti versi kedua yang dirilis pada 1972.

Satu hal yang mungkin belum kamu tahu, jika kamu menuliskan perintah date di Linux atau MacOs, kamu akan melihat angka yang disebut Unix Timestamp.

Unix Timestamp

Angka ini merupakan jumlah detik sejak pukul 00:00:00 pada 1 Januari 1970. Mengapa pada 1 Januari 1970 karena pada saat itu Unix sedang dalam proses pengembangan.

Ken Thompson and Dennis Ritchie menciptakan bahasa B, bahasa pemrograman yang didukung di Unix versi sebelumnya. Kemudian, tahun 1972, Dennis Ritchie menulis ulang bahasa B, memperbaiki menjadi lebih baik, dan menjadi bahasa pemrograman C, sebuah bahasa pemrograman yang masih sangat populer saat ini. Sebagian besar komponen Unix kemudian menggunakan bahasa C.

Pada akhir tahun 1979, AT&T berbagi Unix dengan institusi pendidikan dan organisasi komersial di luar, sehingga dengan demikian mengarah pada lahirya berbagai versi Unix. Paling menonjol di antaranya adalah versi pendidikan yang dibangun oleh Computer Systems Research Group dari University of California, Berkeley. Versi ini dikenal luas sebagai Berkeley Software Distribution atau BSD.

Awalnya, BSD dibangun berdasarkan kode dan design Unix, tapi kemudian, versi dari Unix dan BSD menjadi sangat berbeda, yang mengarah ke perang antara Unix versi BSD dan Unix versi AT&T yang diberinama System V. Hasilnya, kemenangan menjadi milik System V. Versi BSD kemudian membawa System V lebih dekat ke pembelajaraan dan menggabungkan standard yang diakui secara umum.

Cabang BSD sampai pada akhir perkembangan historisnya, dengan munculnya proyek open source seperti FreeBSD, NetBSD, dan OpenBSD. Versi final BSD diperkanalkan pada tahun 1995. Sementara itu, versi final Unix dikembangkan oleh Bell Labs, Unix versi 10, dirilis pada tahun 1989.

Meskipun versi resmi dari Unix, BSD telah menghentikan pengembangan sejak lama, tetapi warisan yang mereka tinggalkan sangat besar hingga hari ini. Banyak sistem operasi, dari close source menjadi open source, berdasarkan dua cabang ini.

Versi komersial, close source yang paling terkenal dan sukses, adalah MacOs punya Apple. MacOs serta sistem operasi Apple lainnya saat ini iOS, WatchOS, da tvOS semuanya berdasarkan platform BSD. Dan MacOS juga salah satu dari sedikit sistem operasi yang yang dianggap Unix-like, ketika memperoleh Single UNIX Specification. Kita akan membahas lebih banyak tentang konsep Unix-like di akhir artikel.

GNU

GNU

Dalam arus pengembangan Unix, pada tahun 1983 sebuah peristiwa penting terjadi, yang merupakan premis dalam pergolakan besar nanti.

Pada September 1983, Richard Stallman mengumumkan pengenalan proyek GNU (GNU singkatan dari GNU’s not Unix).

Tujuan proyek GNU adalah membuat sistem operasi Unix-Like yang bebas, di mana orang memiliki kebebasan untuk menyalin, mengembangkan, memodifikasi, mendistribusi sofware, dan meredistribusi tidak dibatasi.

Ingat, Unix dan versi cabang dari Unix awalnya adalah close source dan hak cipta.

Pada 1985, Richard Stallman mendirikan Free Software Foundation atau FSF, sebuah organisasi non-profit yang ingin mempromosikan kebebasan dalam pengembangan software.

Proyek GNU telah menciptakan banyak produk penting seperti GNU Compiler Collection (gcc), GNU Debugger, GNU Emacs text editor (Emacs), GNU build automator (make). Paling banyak yang digunakan hari ini adalah GNU General Public Licence (GPL).

Proyek GNU telah mencapai banyak prestasi besar, membuat banyak tools yang mirip dengan apa yang ada di Unix. Bagaimanapun, GNU masih kekurangan komponen penting, bagian terakhir yang menjadikannya sistem operasi yang lengkap, yaitu Kernel. Bagian yang mengontrol dan berkomunikasi dengan hardware (CPU, RAM, Devices).

Kemudian Linus Torvald muncul.

Linux

Linux

Pada 25 Agustus 1991, seorang mahasiswa di Finlandia bernama Linus Torvald memperkenalkan produk pribadi, yang kemudian menjadi Kernel Linux.

Proyek Linus Torvald mendapat perhatian dan kontribusi dari banyak individu maupun organisasi.

Kombinasi dari kernel Linux dan software GNU menciptakan sistem operasi pertama yang sepenuhnya free (bebas). Itu bernama GNU/Linux.

Faktanya, masih ada banyak kesalahpahaman terkait dengan Linux. Saya sendiri telah mengalami kesalahapahaman begitu lama.

Berikut beberapa poin yang bisa diambil dari membaca artikel dari awal sampai sekarang

  • Linux sendiri hanya sebuah kernel, bukan sistem operasi yang lengkap. Sistem operasi yang kamu gunakan di komputer kamu disebut GNU/Linux, tapi mungkin karena namanya panjang, orang menyebutnya secara singkat Linux. Penghapusan kata GNU pada nama sistem operasi dianggap tidak adil, dan meremehkan peran GNU. Bagaimanapun, banyak orang masih menggunakan nama Linux dibandingkan nama GNU/Linux. Dan ketika datang sistem operasi Linux, kita perlu memahami bahwa itu sistem operasi GNU/Linux. Pada artikel ini saya juga akan menggunakan istilah itu, sistem operasi Linux.
  • Sistem operasi Linux tidak menggunakan atau berbagi bagian apapun dari kode Unix atau BSD. Linux dibangun sepenuhnya secara baru oleh Linus dan Proyek GNU sehingga menjadi sebuah sistem operasi versi klon dari Unix. Itulah sebabnya Linux dan sistem operasi turunan Unix saat ini (seperti MacOS) memiliki banyak kesamaan

Saya melihat seorang bertanya tentang perintah grep di Linux, opsi -P tersedia di Linux, tapi di Mac, perintah grep tidak memiliki opsi -P, jadi bagaimana harus menyelesaikannya?

Saya memikirkan perintah seperti ls, cat, grep apakah berjalan di MacOS atau Linux. Tapi saya menyadari bahwa mereka berdua adalah tools yang berbeda. Menjalankan perintah grep --help atau man grep di Ubuntu saya mendapatkan pengantar untuk versi GNU, dan di MacOS, saya mendapatkan pengantar untuk versi BSD. Tentu saja, sebagian besar tools GNU dan BSD (Unix) akan sama untuk setiap opsi, tetapi ada pengecualiaan.

Terkadang jika kamu menemukan perintah di Mac yang berbeda dari perintah yang masih anda gunakan di Linux, jangan terlalu terkejut.

Dan untuk menggunakan perintah yang sama di Linux, solusinya sangat sederhana. Kamu hanya perlu menginstal versi GNU di MacOS kamu dari pada menggunakan versi default. Untungnya, mereka sangat stabil dan bisa diinstall dengan mudah menggunakan homebrew.

Distribusi Linux (Distro)

Distribusi Linux (Distro)

Linux hanya bagian Kernel, dan GNU menyediakan tools yang diperlukan untuk berjalan di Kernel. Bagaimanapun, kita bisa dengan bebas menentukan konfigurasi kernel, cara menginstall, dan menggunakan software.

Beberapa organisasi dan perusahaan membantu kita untuk melakukan itu dengan menggabungkan Kernel Linux dengan utilities, atau package manager untuk membuat distribusi sistem operasi yang lengkap. Ini disebut Distribusi Linux, atau Distro.

Saat ini, ada banyak distribusi Linux, banyak di antaranya sangat familiar dan populer. Ada banyak distro yang belum pernah kamu dengar. Beberapa distro yang paling banyak digunakan meliputi: Ubuntu, Debian, CentOS, Fedora, Redhat, Linux Mint.

Distro bisa dibangun di atas distro yang lain, sehingga suatu distro dapat dianggap cicit dari distro yang lain. Karena itu, pada kenyataannya, distro yang disebutkan di atas memiliki banyak hubungan dekat satu sama lain.

2 distro tertua (dan masih aktif sampai sekarang) adalah Slackware dan Debian. Mereka diciptakan pada tahun 1993, Saya tidak tahu banyak tentang turunan Slackware, tapi turunan Debian adalah ikan yang sangat besar di kolam kecil.

Cabang turunan dari Debian juga merupakan distro terbesar. Selain Debian sendiri, wajah-wajah menonjol dari cabang ini adalah Ubuntu (dibangun di atas Debian), Linux Mint (dibangun di atas Ubuntu), atau Kali Linux.

Selain itu, cabang distro lain yang terkenal adalah Redhat, dengan distro utama adalah Red Hat Enterpresi Linux (RHEL), salah satu distro yang ditujukan untuk pelanggan enterprise dari Redhat raksasa. Selain menyediakan RHEL sebagai distro yang berbayar, Redhat juga menawarkan distro gratis lain ke komunitas, yaitu Fedora.

Faktanya, versi Fedora sering diuji terlebih dahulu untuk mendapatkan feedback dan perbaikan bug, setelah itu RHEL akan dibangun di atas versi Fedora yang stabil. Selain itu, Redhat juga menyediakan source code gratis untuk hampir semua komponen RHEL, dan komunitas dapat membangun distro yang mirip dengan RHEL.

Paling menonjol di antaranya adalah CentOS (Community Enterprise Operating System). CentOS adalah produk komunitas (tidak didukung oleh Redhat), benar-benar gratis dengan keinginan untuk membawa distro dengan kualitas kelas enterprise yang sama dengn RHEL (tentu saja, barang gratis tidak sama dengan berbayar, tapi CentOS masih sangat dihargai).

Kamu bisa melacak daftar distro Linux tertentu dan ketergantungan mereka melalui chart ini.

Untuk belajar dan berkenalan dengan Linux, Ubuntu (atau Debian) atau CentOS akan menjadi duo yang harus kamu kenal. Ini akan membantu kamu mendapatkan gambaran umum, serta perbedaan antara Debian dan Redhat. Saya sendiri memiliki 2 VM Ubuntu dan CentOS untuk digunakan kapanpun dibutuhkan.

Selain distribusi Linux, sistem operasi yang menggunakan kernel Linux dan komponen GNU. Ada sistem operasi lain yang hanya didasarkan pada kernel Linux. Dan yang paling menonjol di antara mereka adalah Android. Android mungkin adalah sistem operasi yang paling populer yang menggunakan kernel Linux.

Versi Kernel Linux

Hingga saat ini, versi stabil Linux terbaru adalah 4.15. Kamu bisa mengecek daftar rilis kernel Linux di halaman https://www.kernel.org.

Atau, untuk mengecek versi kernel di distro yang kamu gunakan. Kamu bisa menjalankan perintah uname -r.

Mengecek versi kernel

Menjalankan perintah uname -a akan mencetak seluruh informasi sistem, atau uname -o akan mencetak nama sistem operasi. Kita mendapatkan hasil bahwa nama sistem operasi adalah GNU/Linux bukan Linux.

Mengecek nama sistem operasi: GNU/Linux

Unix-Like

Di awal, saya menyebutkan bahwa MacOS salah satu dari sedikit sistem operasi yang disertifikasi oleh Single UNIX Specification (SUS), dan dianggap sebagai sistem operasi Unix-like.

Saat ini merk dagang UNIX dilindungi hak cipta oleh Open Group (huruf-huruf di nama brand UNIX semuaya dikapitalisasi, sedangkan untuk sistem operasi, kita bisa menulis Unix atau UNIX).

Istilah Unix-like digunakan untuk merujuk kepada sistem operasi yang memiliki sertifikasi SUS, dan dapat menggunakan brand UNIX.

Pertanyaannya adalah: Jadi dengan definisi di atas, apakah sistem operasi Linux adalah Unix-like?

Sayangnya, jawabannya adalah tidak.

Ada proyek untuk membantu Linux mencapai SUS, tapi pada akhirnya tidak berhasil, dan sekarang distro Linux tidak diizinkan menggunakan merek dagang UNIX.

Selain interpretasi Unix-like sebagai bagian integral dari SUS, ada saran bahwa kata seperti Unix harus digunakan dalam arti yang lebih luas. Secara khusus, dapat dibagi menjadi 3 jenis Unix-like:

  • Genetic Unix: Hanya sistem operasi yang secara langsung berhubungan dengan codebase dari versi Unix Bell Labs.
  • Trademark Unix: Sistem operasi yang memenuhi persyaratan SUS dan bisa menggunakan brand UNIX.
  • Functional Unix: Sistem operasi yang berprilaku seperti Unix, dan Linux dapat diklasifikasikan dalam kategori ini.

Di bawah adalah diagram sederhana yang menggambarkan proses pembentukan dan pengembangan Unix serta sistem operasi yang terkait erat dengan Unix.

Diagram Unix dan Turunannya

Epilog

Kita telah membahas secara singkat beberapa poin penting di dunia Linux, serta hubungan historis antara Linux dan Unix. Semoga dapat membantu menjawab beberapa pertanyaan kamu (jika ada).

Sumber

Unix & Linux. The Origin and The Difference.

--

--

Responses (1)