mencoba
Selasa, 31 Maret 2020
Rabu, 03 Juli 2019
ARTIKEL SISTEM OPERASI MULTIMEDIA
SISTEM OPERASI Sistem operasi atau
dalam bahasa Inggris: operating system atau OS adalah perangkat lunak sistem
yang bertugas untuk melakukan kontrol dan manajemen perangkat keras serta
operasi-operasi dasar sistem, termasuk menjalankan software aplikasi seperti
program-program pengolah kata dan browser web.
Secara umum, Sistem Operasi
adalah software pada lapisan pertama yang ditaruh pada memori komputer pada
saat komputer dinyalakan. Sedangkan software-software lainnya dijalankan
setelah Sistem Operasi berjalan, dan Sistem Operasi akan melakukan layanan inti
umum untuk software-software itu. Layanan inti umum tersebut seperti akses ke
disk, manajemen memori, skeduling task, dan antar-muka user. Sehingga
masing-masing software tidak perlu lagi melakukan tugas-tugas inti umum
tersebut, karena dapat dilayani dan dilakukan oleh Sistem Operasi. Bagian kode
yang melakukan tugas-tugas inti dan umum tersebut dinamakan dengan “kernel”
suatu Sistem Operasi.
Sistem Operasi secara umum
terdiri dari beberapa bagian :Mekanisme Boot, yaitu meletakan kernel ke dalam
memory kernel, kernel dapat dikatakan sebagai inti dari Sistem Operasi.
Command Interpreter atau
Shell, bertugas untuk membaca input berupa perintah dan menyediakan beberapa
fungsi standar dan fungsi dasar yang dapat dipanggil oleh aplikasi/program
maupub piranti lunak lain. Contoh dari Shell adalah : Command Prompt pada
Windows XP (DOS pada Windows 98), XTerm dan Konsole di Mesin Linux (Unix).
Driver untuk berinteraksi
dengan hardware sekaligus mengontrol kinerja hardware.
Resource Allocator. Sistem Operasi bertugas mengatur dan mengalokasikan sumber
daya dari perangkat.
Handler. Handler berperan
dalam mengendalikan sistem perangkat agar terhindar dari kekeliruan (error) dan
penggunaan sumber daya yang tidak perlu.
Sekarang kita akan menilik
sejarah dan perkembangan Sistem Operasi.
1. Generasi Awal
Perkembangan awal Sistem Operasi masih dilakukan secara manual dalam artian
belum muncul adanya Sistem Operasi yang secara otomatis artinya belum mendukung
layanan pekerjaan yang dapat dilakukan dalam 1 rangkaian.
2. Generasi Kedua
Di generasi ini sudah diperkenalkannya perkejaan yang dapat dilakukan dalam 1
rangkaian atau biasa disebut dengan Batch Proccessing System.
3. Generasi Ketiga
Pada generasi ketiga, Sistem Operasi sudah mendukung layanan Multi-User,
Multi-Programming dan Batch Proccessing System (Multi-Task).
4. Generasi Keempat
Di masa ini, sudah diperkenankannya GUI (Graphical User Interface) yang artinya
Sistem Operasi memiliki tampilan dan dengan bermodalkan mouse, End-User dapat
menjalankan aplikasi/porgram atau piranti lunak.
5. Generasi Selanjutnya
Pada generasi selanjutnya diperkenalkan Sistem Operasi yang berada dalam sebuah
Sistem Operasi, ini adalah contoh sebuah Sistem Operasi berbasikan Website yang
berkerja di dalam sebuah Sistem Operasi. Dan generasi selanjutnya
diperkenalkanlah Sistem Operasi bergerak (Mobile) pada perangkat bergerak
seperti : PDA, Poket PC, dan lain sebagainya. Di generasi selanjutnya
diperkenalkan juga teknologi Sistem Operasi jaringan yang sifatnya virtual, sehingga
dalam 1 jaringan hanya diinstal 1 buah Sistem Operasi pada Perangkat yang
bertugas menjadi Server. Selain itu, diperkenalkan pula Cross Platform
Operating System yang artinya dapat menggabungkan 2 Sistem Operasi berbeda
seperti : Linux dan Windows.
Struktur sistem
operasi
Suatu sistem operasi modern merupakan suatu sistem yang besar dan kompleks
sehingga strukturnya harus dirancang dengan hati-hati dan saksama supaya dapat
berfungsi seperti yang diinginkan serta dapat dimodifikasi dengan mudah. Struktur
sistem operasi merupakan komponen-komponen sistem operasi yang dihubungkan dan
dibentuk di dalam kernel.
Ada beberapa struktur sistem operasi
dan pernah dicoba, diantaranya sebagai berikut
Sistem monolithic
Model struktur sederhana dari sistem
monolithic
Struktur sistem operasi di sistem ini
tidak terstruktur. Sistem operasi sebagai kumpulan prosedur yang
masing-masing dapat saling dipanggil jika dibutuhkan. Setiap prosedur yang
ada di dalam sistem ini mempunyai interface yang sudah didefinisikan dengan
baik. Dalam hal ini berupa parameter dan hasilnya, serta masing-masing
prosedur bebas untuk saling memanggil jika dibutuhkan. Walaupun disebut
tidak berstruktur, sebenarnya sistem monilisthic tetap mempunyai struktur
walaupun kecil dan mendasar. Struktur tersebut adalah:
· Program
utama yang meminta layanan prosedur.
· Kumpulan
layanan prosedur yang membawa sistem
call.
· Kumpulan utilitas
prosedur yang membantu layanan prosedur.
Dalam model ini setiap sistem call
mempunyai suatu prosedur yang akan mengelolanya. Utilitas prosedur
mengerjakan suatu hal yang diinginkan oleh beberapa layanan prosedur.
Sistem lapisan
Struktur THE
Sistem pertama yang dibangun dengan
sistem lapisan adalah THE yang
dibuat di Technische Hogeschool Eindhoven, Belanda pada tahun 1968 oleh E.W.
Dijkstra dan para mahasiswanya. Sistem ini mempunyai enam
lapis.]
Struktur Venus
Contoh lain adalah sistem Venus yang mempunyai tujuh lapisan.Lapisan bawah
(0sampai 4) digunakan oleh penjadwalan CPU dan manajemen memori yang kemudian
diletakkan dalam suatu microcode. Pengaturan
ini memberikan keuntungan, seperti eksekusi yang lebih cepat dan interface yang
didefinisikan menjadi lebih jelas antara lapisan microcode dengan lapisan yang
lebih tinggi.
Mesin virtual
Secara konsep, sistem computer dibuat
berdasarkan lapisan. Hardware atau perangkat lunak merupakan tingkatan
terbawah dari keseluruhan sistem. Kernel yang berjalan ditingkatan
berikutnya menggunakan instruksi-intruksi perangkat keras untuk membuat
kumpulan sistem call yang digunakan oleh lapisan luarnya. Program di atas
kernel dapat menggunakan sistem call atau instruksi-instruksi perangkat
keras. Dalam beberapa hal, program sistem tidak membedakan kedua lapisan
tersebut. Program sistem memperlakukan sistem call dan perangkat keras di
lapisan yang sama, meskipun program beberapa sistem pada tingkat yang lebih
tinggi dari rutin-rutin program aplikasi yang lain, program-program aplikasi
akan melihat semua yang berada di bawahnya. Pendekatan sistem lapisan ini
menjadi konsep dari mesin virtual. Dengan menggunakan penjadwalan CPU dan
teknik virtual memori, sebuah sistem operasi dapat membuat bayangan proses
dalam jumlah banyak, yang masing-masing dieksekusi oleh prosesornya sendiri
dengan memori (virtual) sendiri. Pada mesin virtual tidak tersedia
fungsi-fungsi tambahan tetapi interface yang identik dengan perangkat keras
yang mendasarinya Setiap proses dilengkapi dengan salinan dari computer
yang mendasarinya.
Model client server
Dalam model ini, semua kernel bekerja menangani komunikasi
antara server dan client.Dengan membagi sistemoperasi menjadi banyak bagian
yang masing-masing hanya menangani bagian tertentu dari sistem. Seperti
layanan file, layanan proses, layanan terminal atau layanan memori, maka setiap
bagian menjadi lebih kecil dan lebih mudah diatur.Kemudian semua server
berjalan daam proses user mode dan tidak dalam kernel mode, maka bagian-bagian
tidak mempunyai akses langsung ke perangkat keras.Keuntungannya, bila ada
kesalahan di file server, maka layanan file mungkin akan crash, tetapi tidak
akan mempengaruhi keseluruhan sistem, yang akhirnya dapat mengakibatkan
keseluruhan sistem tidak berfungsi. Keuntungan lain dari sebuah model
client-server adalah dapat diadaptasi untuk digunakan dalam sistem
terdistribusi.Jika client berkomunikasi dengan server dengan mengirimkan pesan,
klien tidak perlu tahu pesan tersebut ditangani secara local daam mesinnya
sendiri atau pesan tersebut dikirimkan malalui jaringan ke servel di mesin yang
lain.
Tujuan dari sistem operasi adalah -
· Untuk
membuat sistem komputer nyaman digunakan secara efisien.
· Untuk
menyembunyikan detail sumber daya perangkat keras dari pengguna.
· Untuk
memberikan pengguna antarmuka yang nyaman untuk menggunakan sistem komputer.
· Untuk
bertindak sebagai perantara antara perangkat keras dan penggunanya, memudahkan
pengguna untuk mengakses dan menggunakan sumber daya lainnya.
· Untuk
mengelola sumber daya sistem komputer.
· Untuk
melacak siapa yang menggunakan sumber daya mana, memberikan permintaan sumber
daya, dan menengahi permintaan yang bertentangan dari berbagai program dan
pengguna.
· Untuk
memberikan pembagian sumber daya yang efisien dan adil di antara pengguna dan
program.
Karakteristik Sistem Operasi
Berikut adalah daftar beberapa fitur karakteristik yang
paling menonjol dari Sistem Operasi -
· Manajemen
Memori - Melacak memori utama, yaitu bagian mana yang digunakan oleh
siapa, bagian mana yang tidak digunakan, dll. Dan mengalokasikan memori ketika
suatu proses atau program memintanya.
· Manajemen
Prosesor - Mengalokasikan prosesor (CPU) ke suatu proses dan membatalkan
alokasi prosesor saat tidak lagi diperlukan.
· Manajemen
Perangkat - Melacak semua perangkat. Ini juga disebut pengontrol I /
O yang memutuskan proses mana yang mendapatkan perangkat, kapan, dan berapa
lama waktu.
· Manajemen
File - Mengalokasikan dan tidak mengalokasikan sumber daya dan memutuskan
siapa yang mendapatkan sumber daya.
· Keamanan -
Mencegah akses tidak sah ke program dan data melalui kata sandi dan teknik
serupa lainnya.
· Job
Accounting - Melacak waktu dan sumber daya yang digunakan oleh berbagai
pekerjaan dan / atau pengguna.
· Kontrol
Atas Kinerja Sistem - Merekam keterlambatan antara permintaan untuk
layanan dan dari sistem.
· Interaksi
dengan Operator - Interaksi dapat terjadi melalui konsol komputer dalam
bentuk instruksi. Sistem Operasi mengakui hal yang sama, melakukan
tindakan yang sesuai, dan menginformasikan operasi dengan tampilan layar.
· Alat
pendeteksi kesalahan - Produksi dump, jejak, pesan kesalahan, dan metode
debugging dan deteksi kesalahan lainnya.
· Koordinasi
Antara Perangkat Lunak Lainnya dan Pengguna - Koordinasi dan penugasan
kompiler, juru bahasa, assembler, dan perangkat lunak lain ke berbagai pengguna
sistem komputer.
Fungsi Pokok Sistem Operasi
Sistem
operasi memiliki 4 (empat) fungsi pokok, yaitu:
Mengontrol akses perangkat
keras
Sistem operasi memanajemen interakasi antara aplikasi dan perangkat keras.
Untuk mengakses dan berkomunikasi dengan perangkat keras, sistem operasi perlu
menginstal sebuah perangkat lunak (driver) untuk tiap komponen perangkat keras.
Manajemen file dan folder
Sistem operasi mengatur dan membuat susunan file yang tersimpan di dalam hard
disk dan media penyimpanan lain.
Menyediakan user
interface
Sistem operasi akan menyediakan tampilan antarmuka pengguna, baik dalam bentuk
baris perintah perintah (Command Line Interface - CLI)
maupun dalam bentuk grafis (Graphical User Interface - GUI).
Manajemen aplikasi
Sistem operasi meletakan
suatu aplikasi dan memuatnya ke dalam memori (RAM) komputer. Sistem operasi
menjamin setiap aplikasi mendapatkan sumber daya yang cukup.
MACAM MACAM SISTEM OPERASI –
Sistem operasi telah membawa perubahan dalam kehidupan kita seiringnya waktu
berjalan. Bayangkan, dulunya yang hanya perintah menggunakan teks sekarang
tinggal diklik ataupun di tombol. Dari awal diciptakannya komputer hingga
perangkat mobile yang kita pegang saat ini terdapat sistem operasi yang
mengalami upgrade tiap tahunnya.
Tanpa berlama-lama berikut
macam macam sistem operasi beserta penjelasannya
Macam macam Sistem Operasi Berdasarkan Bentuknya
Tugasnya
sistem operasi pada komputer adalah untuk mengatur dan mengelola baik Software
maupun Hardware pada komputer.
Untuk
pembagiannya macam macam sistem operasi komputer di bedakan menjadi 4 yaitu:
1.
Sistem Operasi Stand Alone
Maksudnya
Stand Alone disini adalah sistem operasi tersebut sudah lengkap, bisa berdiri
sendiri dan mampu digunakan untuk single user maupun multi user. Memiliki fitur
tertentu. Sistem Operasi yang kita kenal sekarang seperti Windows, OS Mac, dan
linux adalah contoh dari sistem operasi stand alone.
2.
Sistem Operasi Jaringan
Sistem
operasi jaringan merupakan jenis sistem operasi yang dkhususkan untuk menangani
jaringan. Fungsi dari sistem operasi jaringan sangat banyak diantaranya yaitu
memungkinkan pengguna untuk berbagi berkas, penggunaan alat pencetak (printer)
bersama-sama , DNS Service, HTTP Service, dan lainnya.
3.
Sistem Operasi Embedded
Embedded
kalau diartikan adalah ditanamkan, berarti sistem operasi embedded adalah
sistem operasi yang tertanam dalam komputer dan hanya diprogram untuk
melaksanakan fungsi tertentu yang spesifik.
Bedanya
dengan sistem operasi lainnya khususnya stand alone adalah sistem operasi
embedded ini tidak bisa berdiri sendiri
4.
Sistem Operasi Live CD
Sistem
operasi yang tersimpan di bootable CD atau VCD dan dapat langsung dijalankan
tanpa harus menginstalnya secara permanen.
Sistem
operasi ini memiliki kapasitas yang ringan, kira-kira dibawah ukuran CDnya dan
hanya memiliki fitur yang terbatas.
Dalam
perkembangannya, Sistem operasi ini memungkinkan pengguna untuk tidak
repot-repot menginstalnya di komputer.
Macam
macam Sistem Operasi Komputer
Setelah
kita mengetahui tentang pengertian sistem operasi beserta tugas dan macam
macam
sistem operasi pada umumnya, saatnya kita membahas satu persatu macam macam
sistem operasi yang pernah dibuat di dunia, berikut penjelasannya.
1.
Sistem Operasi DOS
Inilah
nenek moyang dan awal sistem operasi yang ada di perusahaan Microsoft. DOS atau
kepanjangan dari Disk Operating System merupakan
awal sistem operasi yang digunakan komputer IBM.
Sistem operasi ini masih belum berbasis antar muka sehingga perintahnya harus
menggunakan tulisan atau biasa kita kenal dengan Command
Prompt.
Sama
seperti komputer versi terdahulu, tampilan dari MS-DOS ini masih hitam putih,
tidak ada gambar dan hanya berupa tulisan saja.
Microsoft
terus mengembangkan MS-DOS hingga 8 kali versi. Kemudian pada tahun 2000,
pengembangan pada sistem operasi ini dihentikan.
Kelebihan:
Ukurannya kecil
Ringan
dalam penggunaan memori
Kompatibel
dengan berbagai perangkat
Kekurangan:
Karena
masih generasi awal, maka perintah hanya berupa tulisan dan tidak ada grafik
2.
Sistem Operasi Windows
Inilah
sistem operasi generasi kedua setelah berhentinya pengembangan sistem operasi
DOS. Windows pada awal munculnya sudah menggunakan antarmuka pada tampilannya
dan dipasang hampir di seluruh komputer IBM dan komputer lainnya, akhirnya
menjadikan Windows menjadi sistem operasi yang paling banyak digunakan di
dunia.
Dalam
perkembangannya Windows dibuat menjadi sistem operasi Stand Alone dan Jaringan.
Perkembangan
Windows dari waktu ke waktu:
Windows
1.0 (1983)
Windows
2.0 (1987)
Windows
3.0 (1990)
Windows
3.1 (1992)
Windows
95
Windows
98
Windows
Milenium Edition (2000)
Windows
NT 3.1 (1993)
Windows
NT 3.5 (1994)
Windows
2000 /Windows NT 5.0
Windows
XP (2001)
Windows
Vista (2006)
Windows
7 (2009)
Windows
8 (2012)
Windows
8.1 (2013)
Windows
10 (2015)
Kelebihan:
User
Friendly karena sudah tampilan antar muka
Proses
Instalasi lebih mudah
Support
Driver
Karena
hampir semua orang menggunakan Windows, banyak perusahaan membuat software atau
aplikasi yang kompatibel dengan Windows.
Perkembangan
sangat cepat, kita lihat hampit setiap tahun selalu ada pembaruan dari Windows
Kekurangan:
Tidak
Open Source
Harus
membeli karena memang Close Source
Mudah
diretas karena sistem keamanannya masih lemah
Jika
tidak memiliki software bawaan, harus membeli terlebih dahulu untuk
mendapatkannya
Rentan
terkena Virus
3.
Sistem Operasi Mac OS
Sistem
operasi Mac OS atau singkatan Macintosh operating System merupakan sistem
operasi ekslusif dan hanya terdapat di komputer Apple saja.
Mac
OS diluncurkan pada tahun 1984 dan pertama kali digunakan untuk komputer LISA.
Sistem operasi ini merupakan pengembangan dari dasar sistem operasi Linux.
Hebatnya dibandingkan dengan OS yang lainnya, Mac OS adalah sistem operasi
pertama kali yang menggunakan GUI/ tampilan antar muka dan beberapa tahun
kemudian ditiru oleh Microsoft.
Dalam
perkembangannya Mac OS akhirnya diganti dengan versi terbarunya yaitu Mac OS X,
yang mana X adalah angka romawi yang berarti 10. Mac OS X adalah versi terbaru
dari Mac OS 9 dan diperkenalkan pada tahun 2001.
Karena
ekslusif dan kekhasan yang dimilikinya dibanding dengan sistem operasi lainnya,
menjadikan sistem operasi ini memliki tempat tersendiri bagi penggunanya.
Perkembangan
Windows dari waktu ke waktu:
Mac
OS System 1 (1984)
Mac
OS System 2 (1985 )
Mac
OS System 3 (1986)
Mac
OS System 4 (1987)
Mac
OS System 5 (1987)
Mac
– OS System 6 (1988)
Mac
OS System 7 (1991)
Mac
OS 8(1997)
Mac
OS 9 (1999)
Mac
OS X (2001)
Mac
OS X /Cheetah (2001)
Mac
OS X /Puma (2001)
Mac
OS X /Jaguar (2002)
Mac
OS X /Panther (2003)
Mac
OS X /Tiger (2005)
Mac
OS X /Leopard (2007)
Mac
OS X /Snow Leopard (2009)
Mac
OS X /Lion (2011)
Mac
OS X /Mountain Lion (2012)
Mac
OS X /Maverick (2013)
Mac
OS X /Yosemite (2014)
Kelebihan:
Karena
menggunakan UNIX maka sistem lebih stabil
Bisa
untuk Multitasking
Dokumen
di Mac bisa dibaca di sistem operasi lainnya
Tampilan
antar muka cocok untuk graphic design/multimedia
Tingkat
keamanannya tinggi, sehingga sulit terkena virus atau diretas
Kekurangan:
Harganya
bisa dibilang mahal
Mac
OS tidak bisa dirakit karena Apple sudah tidak memberi license buat perusahaan
lain untuk membuat hardware yang bisa menggunakan Mac OS
Software
di Mac OS tidak terlalu lengkap
Kurang
cocok buat main game
4.
Sistem Operasi Linux
Sistem
operasi Linux merupakan sistem operasi open source yang populer di kalangan
masyarakat dunia dengan tingkat kepopuleran di bawah Windows dan Mac OS. Karena
bersifat open source pengguna bebas mengembangkan sistem operasinya sendiri.
Meskipun
begitu Linux tetap sukses berjaya bersanding dengan sistem lainnya karena OS
ini tidak bergantung pada vendor serta biaya operasional yang dikeluarkan
rendah. pada awal perilisannya sudah berbasis grafis antar muka serta bisa
berbasis teks.
Beberapa
distro linux dari waktu ke waktu:
Red
Hat
Debian
Slackware
SuSE
Mandrake
WinLinx
Ubuntu
dan turunannya : Sabily (Ubuntu Muslim Edition), Kubuntu, Xubuntu, Edubuntu,
GoBuntu, Gnewsense, ubuntuCE
OpenSUSE
Fedora
BackTrack
Mandriva
Slackware
Debian
PCLinuxOS
Knoppix
Xandros
Sabayon
CentOS
Red
Hat
ClearOS
Chrome
OS
Gentoo
Linux
Kelebihan
pada Linux:
Karena
Open Source, tidak ada biaya lisensi untuk membeli dan menggunakannya
Dulunya
penggunaan Linux sangat susah, namun setelah dikembangkan sekarang menjadi
lebih mudah
Sebagian
aplikasi di Windows ada di Linux
Perkembangannya
sangat cepat, karena dikembangkan oleh banyak orang
Kekurangan
pada Linux:
Perlu
diadakannya pelatihan kepada pengguna awal supaya terbiasa dengan Linux
Support
Hardware tidak semuanya cocok di Linux
Proses
instalasinya terbilang susah termasuk juga dengan softwarenya
5.
Sistem Operasi Unix
Unix
merupakan sistem operasi pertama yang pernah dibuat. Unix adalah sistem operasi
yang dibuat oleh perusahaan AT&T, General Electric, dan MIT di tahun 1965
untuk DARPA. Unix juga merupakan sistem operasi baku yang bisa digunakan di
segala komputer termasuk juga komputer mini. Unix sendiri merupakan jenis dari
sistem operasi jaringan karena bisa digunakan sebagai server ataupun workstation.
Sekarang
sudah jarang orang memakai Unix karena kalah pamor dengan 3 Sistem Operasi
terkenal seperti Windows, Mac OS dan Linux.
Jenis-jenis
Unix:
A/UX
Domain/X
Darwin
CTIX
Distrix
UniCOs
DG/UX
Ultrix
CLIX
Digital
UNIX
DVIX
SINIX
Dyix
SCO
XENIX
SCO
OpenServer
SCO
UNIX
Coherent
Tru64
XENIX
AIX
UinxWare
Uniplus+
IRIX
FreeBSD
Mach
Minix
SunOS
NetBSD
Nexstep
QnX
OSF/1
BSD/1
Solaris
Unix
System V
Eunice
OpenBSD
GNU/Hurd
GNU/Linux
BSD
UNIX.
Kelebihan:
Adanya
portabilitas
Multiuser,
karena merupakan sistem operasi jaringan
Multitasking.
Kita bisa mengerjakan dan menjalankan tugas sekaligus.
Tidak
mudah terkena Virus
UNIX
ini termasuk sistem operasi yang gratis
Kekurangan:
Dari
segi tampilan kurang menarik
Memerlukan
penyimpanan memori yang lumayan besar
Tidak
banyak Driver yang tersedia untuk Unix
Untuk
beberapa hardware jua sulit untuk menyediakan driver untuk Unix
Lumayan
susah dan membingungkan dibandingkan dengan sistem operasi lainnya
Sistem Operasi Amiga
Amiga
merupakan salah satu sistem operasi terdahulu dan sampai sekarang masih ada
yang khusus digunakan untuk laptop Amiga. Diperkenalkan pertama kali versi
pertamanya yaitu Amiga 1000 pada tahun 1985 oleh perusahaan Commodore
International. Sistem operasi Amiga berjalan pada seri Motorola 68 K dengan
menggunakan processor 1 dan 32 bit.
Sistem
operasi ini juga sudah menggunakan tampilan antar muka bagi penggunanya. Memang
sih kita jarang mendengarnya, karena kurang populer.
Sistem Operasi Google Chrome
OS
ini adalah sistem operasi open source buatan ekslusif perusahaan Google dengan
tujuan bisa bekerja dengan aplikasi web. Google Chrome diluncurkan pada tahun
2009 versi beta kemudian setahun setelahnya diluncurkan versi lengkapnya.
Google
Chrome sendiri menggunakan Linux sebagai basis pengembangannya dan hanya bisa
berjalan pada hardware yang dirancang khusus. Chrome OS hanya memiliki aplikasi
bawaan seperti browser, manajer file dan pemutar media.
Beberapa
kelebihan Google Chrome:
Pada
segi tampilan khusus didesain untuk pengguna Web. Hal ini memungkinkan pengguna
menjadi nyaman ketika browsing.
Adanya
fitur modus penyamaran. Dengan adanya fitur tersebut, pengguna bisa akses
Website tanpa meninggalkan jejak.
Dalam
pengelolaan tab misalnya. Setiap kita buka TAB di Chrome maka prosesnya
terpisah, sehingga ketika eror/crash pada salah satu ta tidak akan meyebabkan
seluruh browser eror. (ini kekurangan yang terdapat pada FireFox dan browser
lainnya)
PENCARIAN
: Chrome memiliki fungsi pencarian yang sangat baik. Contohnya, chrome daat
mendeteksi ketika pengguna pernah melakukan pencarian di suatu website dan
memasukkan website tersebut dalam daftar penyedia pencarian.
ANTI
PENIPUAN : Chrome menyediakan kemampuan menebalkan nama domain sebuah website.
Contohnya ada sebuah website penipuan beralamatkan ibank.klikbca.d60pc.com,
maka d60pc.com akan ditebalkan sehingga akan diharapkan para pengguna sadar
bawah itu bukan situs/website resmi KlikBCA.
Kekurangan
Chrome OS:
PRIVASI
: Google menyimpan 2% interpretation pencarian pengguna, lengkap dengan alamat
IP-a. Walaupun dalam beberapa waktu tertentu interpretation ini akan
dianonimkan. Ini artinya google bisa saja tahu “siapa mencari apa dan dimana”
LISENSI
: Google sempat mencantumkan pada Terms of Service mereka, bahwa semua muatan
dari pengguna yang hak ciptanya dimiliki oleh pengguna akan diserahkan haknya
pada Google. Tapi indicate ini telah dicabut oleh pihak Google.
CELAH KEAMANAN : Beberapa pakar confidence menemukan adanya lubang kecil/bugs
pada chrome. Sehingga ketika membuka suatu halaman website akan membuat browser
ini menjadi crash. Lalu Chrome juga memiliki underline Download Otomatis yang
dikhawatirkan akan disalah gunakan oleh Hacker.
EXTENSIONS
: Pada Chrome tidak terdapat extension/plugin/addons yang dapat ditambahkan.
Tidak seperti Firefox yang memiliki banyak aplikasi2 tambahan yang dapat
membuat dan meningkatkan kinerja browser.
BAHASA
: Pada chrome ketika kita memilih untuk menggunakan dalam bahasa Indonesia maka
akan terdapat beberapa kejanggalan dalam bahasanya.
Sistem Operasi Garuda OS
Garuda
OS sebenarnya adalah termasuk dari kernel yang mana dikembangkan di negara
Indonesia. Garuda OS dikembangkan untuk digunakan masyarakat supaya mereka bisa
mendapatkan sistem operasi yang open source, freeware dan tetap sesuai dengan
SNI atau standar nasional Indonesia.
Sayangnya
OS ini belum terlalu terkenal di kalangan masyarakat Indonesia karena kurangnya
pengoptimalkan penggalangan dana bagi OS opensource dan freeware ini.
Sistem Operasi BlankOn
Sistem
operasi lainnya karya anak bangsa Indonesia selain Garuda OS adalah BlankOn.
Sama seperti OS Garuda, sistem operasi Blank On ini juga termasuk dari kernel
Linux. Para pembuat OS ini adalah YPLI dengan tujuan supaya bisa memenuhi
kebutuhan sistem operasi dari para pengguna komputer masyarakat Indonesia pada
umumnya, khususnya bidang pendidikan, perkantoran dan juga pemerintahan.
Meskipun
begitu ada kekurangan dari OS ini yaitu diantaranya adalah masih kurang stabil
dan terbilang lambat, dan masih kalah kurang kalah terkenal dan pamor dengan
sistem operasi terkenal lainnya contohnya Windows, Mac OS dan Google OS.
Sistem
Operasi Be OS
Be
OS adalah sistem operasi yang diperuntukkan khusus bagi PC atau komputer
pribadi yang dibuat dan dikembangkan Perusahaan B Inc. Sebenarnya OS ini untuk
awalnya adalah diperuntukkan agar berjalan dan berfungsi pada hardware keluaran
Be yaitu Be Box yang pada tahun 1991 baru mulai dikembangkan.
Kelebihan
dari perangkat keras Be Box adalah adanya multiprocessing, bandwith modulae dan
kemampuannya dalam melakukan preemptive multitasking
Sun
Solaris OS
Perusahaan
teknologi terbesar di dunia yaitu Perusahaan Sun MicroSystem adalah perusahaan
yang mengembangkan sistem operasi Sun Solaris. Basisnya adalah UNIX, sistem
operasi yang pada tahun 1992 mulai pengembangannya ini memiliki keunggulan dari
sistem operasi lainnya, seperti terkenal Kestabilannya, Bisa mendapatkan
lisensi atau pilihan kepemilikan, Bersifat opensource.
Macam macam
Sistem Operasi Smartphone atau handphone Mobile
Setelah
kita membahas tentang sistem operasi komputer saatnya kita beralih membahas
tentang macam macam sistem operasi smartphone, yaitu :
1.
Sistem Operasi Windows Phone
OS
ini dibuat oleh perusahaan Microsoft yang mana diperuntukkan untuk sistem
operasi Smartphone supaya bisa bersaing dengan Android. Sebelumnya OS ini
dipasang pada merk smartphone Nokia Lumia dan sampai sekarang.
OS
ini diluncurkan pada tahun 2010 dan tidak seperti Windows Khusus Komputer yang
ditujukan untuk perusahaan, Smartphone ini ditujukan untuk mendapatkan pasar
komputer.
Berikut
beberapa kelebihan dari Windows Phone :
Lebih
mudah dalam penggunaannya bagi mereka yang terbiasa dengan sistem operasi
Windows PC
Di
smartphonenya hampir tersedia semua software yang ada di Desktop
Kekurangan
dari Windows Phone :
Tidak
terlalu menarik dibandingkan dengan Android dan IOS
Baterai
Smartphone yang menggunakan OS ini cepat boros
Aplikasi
tidak selengkap di Android dan IOS
Kemunculannya
tergolong terlambat dibandingkan dengan OS lainnya
2.
Sistem Operasi Apple IOS
Jika
di Desktop ada Mac OS X maka di smartphone atau versi mobile ada IOS. OS yang
diperkenalkan pada tahun 2008 ini membuat dunia tercengang karena menghadirkan
smartphone pertama di dunia yang berhasil. Selain di Smartphone Apple
iPhone, Os ini juga dipasang produk Apple lainnya seperti iPod, iPad .
Berikut
beberapa kelebihan dari IOS :
Sangat
mudah untuk integrasi dengan produk Apple lainnya
Widget
ada di mana mana, sehingga akan sangat mudah dalam melakukan aktifitas dan
meningkatkan produktifitas
Sangat
responsif layar sentuhnya karena multi touch
Lancar,
sehingga jarang ada lag
Penggunaan
memori tidak terlalu besar
Adapun
kekurangan dari IOS adalah
Karena
ekslusif, maka hanya terbatas pada produk Apple saja
Harganya
tergolong mahal
Tidak
adanya media eksternal
3.
Sistem operasi Google Android
Macam
macam sistem operasi smartphone yang terakhir adalah Android. Inilah sistem
operasi terkenal di dunia milik perusahaan Alphabet. Semua perusahaan vendor
smartphone pasti akan menggunakan Android sebagai OSnya. Sistem operasi ini
berbasis Linux dan open source.
Sistem
operasi ini juga awalnya di pasang di HTC dan seiring waktu diupdate terus
dengan masing-masing update diberi nama Makanan.
Kelebihan
Android :
Bersifat
open source
Support
dari Google
Adanya
memori eksternal, sehingga mudah bagi kita untuk menambah disk space
Kita
bisa mendapatkan harga yang murah untuk mendapatkannya
Kekurangan
:
Sayangnya
sistem memakan banyak ruang memori
Sering
hang pada smartphone tertentu karena memang pembuatan software dan hardwarenya
berbeda atau terpisah, sedangkan Apple memiliki IOS yang langsung terintegrasi
dengan perangkatnya
Karena
sifatnya yang open source maka virus sangat mudah untuk masuk
Itulah artikel sistem operasi multimedia yang dapat saya berikan kepada kalian
Jika ada salah dalam tulisan harap dimaafkan
Senin, 01 Juli 2019
OpenCV shape detection
This tutorial is the second post in our three part series on shape detection and analysis.
Last week we learned how to compute the center of a contour using OpenCV.
Today, we are going to leverage contour properties to actually label and identify shapes in an image, just like in the figure at the top of this post.
Looking for the source code to this post?
Jump right to the downloads section.
Jump right to the downloads section.
OpenCV shape detection
Before we get started with this tutorial, let’s quickly review our project structure:
OpenCV shape detection
Shell
1
2
3
4
5
|
|--- pyimagesearch
| |--- __init__.py
| |--- shapedetector.py
|--- detect_shapes.py
|--- shapes_and_colors.png
|
As you can see, we have defined a pyimagesearch module. Inside this module we haveshapedetector.py which will store our implementation of the ShapeDetector class.
Finally, we have the detect_shapes.py driver script that we’ll use to load an image from disk, analyze it for shapes, and then perform shape detection and identification via theShapeDetector class.
Before we get started, make sure you have the imutils package installed on your system, a series of OpenCV convenience functions that we’ll be using later in this tutorial:
OpenCV shape detection
Shell
1
|
$ pip install imutils
|
Defining our shape detector
The first step in building our shape detector is to write some code to encapsulate the shape identification logic.
Let’s go ahead and define our ShapeDetector . Open up the shapedetector.py file and insert the following code:
shapedetector.py
Python
1
2
3
4
5
6
7
8
9
10
11
12
|
# import the necessary packages
import cv2
class ShapeDetector:
def __init__(self):
pass
def detect(self, c):
# initialize the shape name and approximate the contour
shape = "unidentified"
peri = cv2.arcLength(c, True)
approx = cv2.approxPolyDP(c, 0.04 * peri, True)
|
Line 4 starts the definition of our ShapeDetector class. We’ll skip the __init__ constructor here since nothing needs to be initialized.
We then have our detect method on Line 8 which requires only a single argument, c , the contour (i.e., outline) of the shape we are trying to identify.
In order to perform shape detection, we’ll be using contour approximation.
As the name suggests, contour approximation is an algorithm for reducing the number of points in a curve with a reduced set of points — thus the term approximation.
This algorithm is commonly known as the Ramer-Douglas-Peucker algorithm, or simply the split-and-merge algorithm.
Contour approximation is predicated on the assumption that a curve can be approximated by a series of short line segments. This leads to a resulting approximated curve that consists of a subset of points that were defined by the original cruve.
Contour approximation is actually already implemented in OpenCV via thecv2.approxPolyDP method.
In order to perform contour approximation, we first compute the perimeter of the contour (Line 11), followed by constructing the actual contour approximation (Line 12).
Common values for the second parameter to cv2.approxPolyDP are normally in the range of 1-5% of the original contour perimeter.
Note: Interested in a more in-depth look at contour approximation? Be sure to check out the PyImageSearch Gurus course where I discuss computer vision and image processing fundamentals such as contours and connected-component analysis in detail.
Given our approximated contour, we can move on to performing shape detection:
OpenCV shape detection
Python
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
# if the shape is a triangle, it will have 3 vertices
if len(approx) == 3:
shape = "triangle"
# if the shape has 4 vertices, it is either a square or
# a rectangle
elif len(approx) == 4:
# compute the bounding box of the contour and use the
# bounding box to compute the aspect ratio
(x, y, w, h) = cv2.boundingRect(approx)
ar = w / float(h)
# a square will have an aspect ratio that is approximately
# equal to one, otherwise, the shape is a rectangle
shape = "square" if ar >= 0.95 and ar <= 1.05 else "rectangle"
# if the shape is a pentagon, it will have 5 vertices
elif len(approx) == 5:
shape = "pentagon"
# otherwise, we assume the shape is a circle
else:
shape = "circle"
# return the name of the shape
return shape
|
It’s important to understand that a contour consists of a list of vertices. We can check the number of entries in this list to determine the shape of an object.
For example, if the approximated contour has three vertices, then it must be a triangle (Lines 15 and 16).
If a contour has four vertices, then it must be either a square or a rectangle (Line 20). To determine which, we compute the aspect ratio of the shape, which is simply the width of the contour bounding box divided by the height (Lines 23 and 24). If the aspect ratio is ~1.0, then we are examining a square (since all sides have approximately equal length). Otherwise, the shape is a rectangle.
If a contour has five vertices, we can label it as a pentagon (Line 31 and 32).
Otherwise, by process of elimination (in context of this example, of course), we can make the assumption that the shape we are examining is a circle (Lines 35 and 36).
Finally, we return the identified shape to the calling method.
Shape detection with OpenCV
Now that our ShapeDetector class has been defined, let’s create the detect_shapes.py driver script:
OpenCV shape detection
Python
1
2
3
4
5
6
7
8
9
10
11
|
# import the necessary packages
from pyimagesearch.shapedetector import ShapeDetector
import argparse
import imutils
import cv2
# construct the argument parse and parse the arguments
ap = argparse.ArgumentParser()
ap.add_argument("-i", "--image", required=True,
help="path to the input image")
args = vars(ap.parse_args())
|
We start off on Lines 2-5 by importing our required packages. Notice how we’re importing our implementation of the ShapeDetector class from the shapedetector sub-module ofpyimagesearch .
Lines 8-11 handle parsing our command line arguments. We only need a single switch here,--image , which is the path to where the image we want to process resides on disk.
Next up, let’s pre-process our image:
OpenCV shape detection
Python
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
# load the image and resize it to a smaller factor so that
# the shapes can be approximated better
image = cv2.imread(args["image"])
resized = imutils.resize(image, width=300)
ratio = image.shape[0] / float(resized.shape[0])
# convert the resized image to grayscale, blur it slightly,
# and threshold it
gray = cv2.cvtColor(resized, cv2.COLOR_BGR2GRAY)
blurred = cv2.GaussianBlur(gray, (5, 5), 0)
thresh = cv2.threshold(blurred, 60, 255, cv2.THRESH_BINARY)[1]
# find contours in the thresholded image and initialize the
# shape detector
cnts = cv2.findContours(thresh.copy(), cv2.RETR_EXTERNAL,
cv2.CHAIN_APPROX_SIMPLE)
cnts = imutils.grab_contours(cnts)
sd = ShapeDetector()
|
First, we load our image from disk on Line 15 and resize it on Line 16. We then keep track of the ratio of the old height to the new resized height on Line 17 — we’ll find out exactly why we do this later in the tutorial.
From there, Lines 21-23 handle converting the resized image to grayscale, smoothing it to reduce high frequency noise, and finally thresholding it to reveal the shapes in the image.
After thresholding, our image should look like this:
Notice how our image has been binarized — the shapes appear as a white foregroundagainst a black background.
Lastly, we find contours in our binary image, handle grabbing the correct tuple value fromcv2.findContours based on our OpenCV version, and finally initialize our ShapeDetector (Lines 27-30).
The last step is to identify each of the contours:
OpenCV shape detection
Python
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
|
# loop over the contours
for c in cnts:
# compute the center of the contour, then detect the name of the
# shape using only the contour
M = cv2.moments(c)
cX = int((M["m10"] / M["m00"]) * ratio)
cY = int((M["m01"] / M["m00"]) * ratio)
shape = sd.detect(c)
# multiply the contour (x, y)-coordinates by the resize ratio,
# then draw the contours and the name of the shape on the image
c = c.astype("float")
c *= ratio
c = c.astype("int")
cv2.drawContours(image, [c], -1, (0, 255, 0), 2)
cv2.putText(image, shape, (cX, cY), cv2.FONT_HERSHEY_SIMPLEX,
0.5, (255, 255, 255), 2)
# show the output image
cv2.imshow("Image", image)
cv2.waitKey(0)
|
On Line 33 we start looping over each of the individual contours. For each of them, we compute the center of the contour, followed by performing shape detection and labeling.
Since we are processing the contours extracted from the resized image (rather than the original image), we need to multiply the contours and center (x, y)-coordinates by our resizeratio (Lines 43-45). This will give us the correct (x, y)-coordinates for both the contours and centroid of the original image.
Lastly, we draw the contours and the labeled shape on our image (Lines 44-48), followed by displaying our results (Lines 51 and 52).
To see our shape detector in action, just execute the following command:
OpenCV shape detection
Shell
1
|
$ python detect_shapes.py --image shapes_and_colors.png
|
As you can see from the animation above, our script loops over each of the shapes individually, performs shape detection on each one, and then draws the name of the shape on the object.
Summary
In today’s post blog, we learned how to perform shape detection with OpenCV and Python.
To accomplish this, we leveraged contour approximation, the process of reducing the number of points on a curve to a more simple approximated version.
Then, based on this contour approximation, we examined the number of vertices each shape has. Given the vertex count, we were able to accurately label each of the shapes.
This lesson is part of a three part series on shape detection and analysis. Last week we covered how to compute the center of a contour. Today we covered shape detection with OpenCV. And next week we’ll discuss how to label the actual color of a shape using color channel statistics.
Langganan:
Postingan (Atom)
-
Berkompetisi di Kaggle Perkenalan dengan Platform dan Dataset Kaggle merupakan platform kompetisi untuk data science. Kaggl...
-
Laptop Hard Disk Cuma 8gb,???? Cuman saya penasaran aja kok bisa ada Laptop Hard Disknya cuma 8gb….!!! Wow aku Heran…! Banyak yang m...