Transfer Data Menggunakan DMA CONTOLLER


Transfer Data Menggunakan DMA CONTOLLER





Selama transfer blok byte masukan, urutan berikut terjadi sebagai byte data dikirim dari antarmuka ke memori :
1. Antarmuka mengirimkan pengontrol DMA permintaan DMA layanan.
2. Permintaan Bus dibuat untuk pin terus (Tinggi aktif) pada mikroprosesor 8086 dan controller kontrol keuntungan dari bus.
3. Dana bantuan Bus dikembalikan ke DMA controller dari Hold Acknowledge (HLDA) pin (aktif tinggi) pada mikroprosesor 8086.
4. Para DMA controller tempat isi alamat register ke bus alamat.
5. Controller mengirimkan antarmuka pengakuan DMA, yang mengisahkan antarmuka untuk menempatkan data pada bus data. (Untuk output itu sinyal antarmuka untuk latch data berikutnya ditempatkan di bus.
6. Byte data ditransfer ke lokasi memori yang ditunjukkan oleh bus alamat.
7. Antarmuka kait data.
8. Permintaan Bus terjatuh, pin HOLD pergi rendah, dan controller relinquishes bus.
9. Hibah Bus dari mikroprosesor 8086 dijatuhkan dan pin HLDA pergi Rendah.
10. Register alamat bertambah oleh 1.
11. Jumlah byte decremented oleh 1.
12. Jika jumlah byte adalah bukan nol, kembali ke langkah 1, jika tidak berhenti.






Sumber : 

1. http://bambangsusanto04.blogspot.com/

2.https://www.slideshare.net/ashwiniawatare/dma-and-dma-controller-8237




Pengertian Thread

Thread adalah prinsip yang memperbolehkan sebagian dari program untuk berjalan secara independen dengan sebagian program lainnya. Dalam threading anda dapat menjalankan beberapa pointer (alamat dalam komputer) sekaligus. Artinya dua atau lebih bagian dari kode dapat dijalankan secara simultan.


Thread
Capture
  • Thread adalah unit terkecil dalam suatu proses yang bisa dijadwalkan oleh sistem operasi.
  • Merupakan sebuah status eksekusi (ready, running, suspend, block, queue, dll)
  • Kadang disebut sebagai proses ringan (lightweight).
  • Unit dasar dari dari sistem utilisasi pada processor (CPU).
  • Dalam thread terdapat: ID Thread, Program Counter, Register dan Stack.
  • Sebuah thread berbagi code section, data section dan resource sistem operasi dengan thread yang lain yang memiliki proses yang sama.
Thread Dan Proses

Thread berbeda dari proses sistem operasi multitasking tradisional dalam hal itu:

  • proses biasanya independen, sedangkan untaian ada sebagai subhimpunan suatu proses
  • proses membawa lebih banyak informasi status daripada untaian, sedangkan banyak utas dalam proses proses menyatakan juga memori dan sumber daya lainnya
  • proses memiliki ruang alamat yang terpisah, sedangkan utas berbagi ruang alamat
  • proses hanya berinteraksi melalui mekanisme komunikasi antar-proses yang disediakan sistem
  • Perpindahan konteks antara utas dalam proses yang sama biasanya lebih cepat daripada peralihan konteks antar proses.

Sistem seperti Windows NT dan OS / 2 dikatakan memiliki benang murah dan proses mahal; dalam sistem operasi lain tidak ada perbedaan yang begitu besar kecuali biaya switch ruang alamat yang pada beberapa arsitektur (terutama x86) menghasilkan penyangga terjemahan lookaside (TLB) flush.

Sumber :

1. http://www.infomugi.com/2013/05/pengertian-thread.html
2https://vivimargaretha494.wordpress.com/2015/10/01/thread-pada-sistem-operasi-2/

Hndheld computer

Handheld computer 
Hasil gambar untuk pengertian komputer genggam
adalah komputer yang cukup kecil sehingga dapat digenggam. Komputer genggam ini dapat bekerja dengan fungsi yang hampir sama dengan komputer biasa. Meskipun sangat mudah untuk dibawa, komputer genggam tidak dapat menggantikan komputer biasa (PC) karena hanya memiliki keyboard dan layar yang kecil. Beberapa produsen mencoba untuk memecahkan masalah keyboard yang terlalu kecil. Keyboard tersebut diganti dengan electronic pen. Bagaimanapun, electronic pen ini masih bergantung pada teknologi pengenalan tulisan tangan yang masih dalam tahap pengembangan.

Kelebihan dari komputer genggam ini adalah pengguna dapat menyimpan serta mengatur data dengan lebih efisien dan akurat. Biasanya komputer genggam dilengkapi dengan teknologi Bluetooth. Bluetooth memang tepat untuk mencetak secara nirkabel, menghubungkan antara komputer genggam dengan mobile printer. Tidak hanya dengan printer tetapi komputer genggam juga dapat dihubungkan dengan alat-alat lain melalui koneksi Bluetooth.

Komputer genggam dapat meningkatkan produktivitas pengguna dan memudahkan mereka untuk bekerja lebih efisien. Komputer genggam yang paling banyak digunakan adalah komputer yang khusus dirancang untuk menyediakan fungsi PIM (Personal Information Manager), seperti kalender, agenda, dan buku alamat.

Sumber :

1. https://id.wikipedia.org/wiki/Handheld_computer

Distributed Processing

Distributed Processing adalah kemampuan menjalankan semua proses pengolahan data secara bersama antara komputer yang berfungsi sebagai pusat dengan beberapa komputer yang lebih kecil dan saling dihubungkan melalui jalur komunikasi. Setiap komputer tersebut memiliki prosesor mandiri sehingga mampu mengolah sebagian data secara terpisah, kemudian hasil pengolahan tadi digabungkan menjadi satu penyelesaian total. Jika salah satu prosesor mengalami kegagalan atau masalah maka prosesor yang lain akan mengambil alih tugasnya. Dalam proses distribusi sudah mutlak diperlukan perpaduan yang mendalam antara teknologi komputer dan telekomunikasi, karena selain proses yang harus didistribusikan, semua host komputer wajib melayani terminal-terminalnya dalam satu perintah dari komputer pusat.


Hasil gambar untuk pengertian distributed processing




Sumber :

1. http://arifbudimanhsb.blogspot.com/2016/06/distributed-processing-adalah.html


Process Control Block (PCB)

PCB (process control block) dalam Sistem Operasi



Setiap proses dalam sebuah sistem operasi mendapatkan sebuah PCB (Process Control Block) yang memuat informasi tentang proses tersebut, yaitu: sebuah tanda pengenal proses (Process ID) yang unik dan menjadi nomor identitas, status proses, prioritas eksekusi proses dan informasi lokasi proses dalam memori.
Definisi Proses

Proses adalah program yang sedang dieksekusi. Menurut SilberSchatz, suatu proses adalah lebih dari sebuah kode program, yang terkadang disebut text section . Proses juga mencakup program counter , yaitu sebuah stack untuk menyimpan alamat dari instruksi yang akan dieksekusi selanjutnya dan register. Sebuah proses pada umumnya juga memiliki sebuah stack yang berisikan data-data yang dibutuhkan selama proses dieksekusi (seperti parameter method, alamat return dan variabel lokal), dan sebuah data section yang menyimpan variabel global.
Kami tekankan bahwa program itu sendiri bukanlah sebuah proses; suatu program adalah satu entitas pasif; seperti isi dari sebuah berkas yang disimpan didalam disket. Sedangkan sebuah proses dalam suatu entitas aktif, dengan sebuah program counter yang menyimpan alamat instruksi selanjut yang akan dieksekusi dan seperangkat sumber daya ( resource yang dibutuhkan agar sebuah proses dapat dieksekusi.
Setiap proses dalam sebuah sistem operasi mendapatkan sebuah PCB (Process Control Block) yang memuat informasi tentang proses tersebut, yaitu: sebuah tanda pengenal proses (Process ID) yang unik dan menjadi nomor identitas, status proses, prioritas eksekusi proses dan informasi lokasi proses dalam memori. Prioritas proses merupakan suatu nilai atau besaran yang menunjukkan seberapa sering proses harus dijalankan oleh prosesor. Proses yang memiliki prioritas lebih tinggi, akan dijalankan lebih sering atau dieksekusi lebih dulu dibandingkan dengan proses yang berprioritas lebih rendah. Suatu sistem operasi dapat saja menentukan semua proses dengan prioritas yang sama, sehingga setiap proses memiliki kesempatan yang sama. Suatu sistem operasi dapat juga mengubah nilai prioritas proses tertentu, agar proses tersebut akan dapat memiliki kesempatan lebih besar pada eksekusi berikutnya (misalnya: pada proses yang sudah sangat terlalu lama menunggu eksekusi, sistem operasi menaikkan nilai prioritasnya)

Process Control Block adalah informasi-informasi lain yang diperlukan SO untuk mengendalikan dan koordinasi beragam proses aktif. Tiap proses digambarkan dalam sistem operasi oleh sebuah process control block PCB - juga disebut sebuah control block. PCB berisikan banyak bagian dari informasi yang berhubungan dengan sebuah proses yang spesifik,trermasuk ini.

1.Status proses: status mungkin, new, ready, running, waiting, halted, dan juga banyak lagi.

2.Program counter: suatu stack yang berisi alamat dari instruksi selanjutnya untuk    dieksekusi untuk proses ini.

3.CPU register: Register bervariasi dalam jumlah dan jenis, tergantung pada rancangan komputer. Register  tersebut termasuk accumulator , indeks register, stack pointer , general-purposes register , ditambah code information pada kondisi apa pun. Besertaan dengan program counter, keadaaan/status informasi harus disimpan ketika gangguan terjadi, untuk memungkinkan proses tersebut berjalan/bekerja dengan benar setelahnya (lihat Gambar 2-3).

4.Informasi managemen memori: Informasi ini dapat termasuk suatu informasi sebagai nilai dari dasar dan batas register, tabel page/halaman, atau tabel segmen tergantung pada sistem memori yang digunakan oleh sistem operasi (lihat Bab Managemen memori).

5.Informasi pencatatan: Informasi ini termasuk jumlah dari CPU dan waktu riil yang digunakan, batas waktu, jumlah akun jumlah job atau proses, dan banyak lagi.

6.Informasi status I/O: Informasi termasuk daftar dari perangkat I/O yang di gunakan pada proses ini, suatu daftar berkas-berkas yang sedang diakses dan banyak lagi.

7.PCB hanya berfungsi sebagai tempat penyimpanan informasi yang dapat bervariasi dari proses yang satu dengan yang lain.

Gambar Proses Control Blok

Elemen-elemen dari Process Control Block (PCB) :
1.Identifier : menjelaskan proses yang sedang terjadi
2.State : kondisi yang terjadi pada proses
3.Priority : urutan perintah yang jelas pad suatu proses
4.Program counter : instruksi pada proses
5.Memory pointers : media penyimpanan (penunjuk alamat) pada proses
5.Context data : data yang berkaitan dengan proses
6.I/O status information : terdapat masukan dan keluaran yang diinginkan
7Accounting information : memberikan informasi yang dibutuhkan

Macam-Macam Jenis Status Proses
Jenis status yang mungkin dapat disematkan pada suatu proses pada setiap sistem operasi dapat berbeda-beda. Tetapi paling tidak ada 3 macam status yang umum, yaitu:
1.Ready adalah status dimana proses siap untuk dieksekusi pada giliran berikutnya
2.Running adalah status dimana saat ini proses sedang dieksekusi oleh prosesor
3.Blocked adalah status dimana proses tidak dapat dijalankan pada saat prosesor siap/bebas

Sumber :

1. https://uniquesciences.wordpress.com/2012/10/04/process-control-block-pcb/
2. http://femmifirdausahdiat.blogspot.com/2012/09/pcb-process-control-block.html


Pengertian Critical Section

Critical Section 
Hasil gambar untuk gambar critical section


Bagaimana menghindari race conditions? Kunci untuk mencegah masalah ini dan di situasi yang lain yang melibatkan shared memori, shared berkas, and shared sumber daya yang lain adalah menemukan beberapa jalan untuk mencegah lebih dari satu proses untuk melakukan proses writing dan reading kepada shared data pada saat yang sama. Dengan kata lain kita memutuhkan mutual exclusion, sebuah jalan yang menjamin jika sebuah proses sedang menggunakan shared berkas, proses lain dikeluarkan dari pekerjaan yang sama. Kesulitan yang terjadi karena proses 2 mulai menggunakan variabel bersama sebelum proses 1 menyelesaikan tugasnya.

Masalah menghindari race conditions dapat juga diformulasikan secara abstrak. Bagian dari waktu, sebuah proses sedang sibuk melakukan perhitungan internal dan hal lain yang tidak enggiring ke kondisi race conditions. Bagaimana pun setiap kali sebuah proses mengakses shared memory atau shared berkas atau melakukan sesuatu yang kitis akan menggiring kepada race conditions. Bagian dari program dimana shaed memory diakses disebut Critical Section atau Critical Region.

Walau pun dapat mencegah race conditions, tapi tidak cukup untuk melakukan kerjasama antar proses secara pararel dengan baik dan efisien dalam menggunakan shared data. Kita butuh 4 kondisi agar menghasilkan solusi yang baik:

I. Tidak ada dua proses secara bersamaan masuk ke dalam citical section.
II. Tidak ada asumsi mengenai kecepatan atau jumlah cpu.
III. Tidak ada proses yang berjalan di luar critical secion yang dapat mengeblok proses lain.
IV. Tidak ada proses yang menunggu selamamya untuk masuk critical section.


Pengertian Critical Section


Critical Section adalah sebuah segmen kode di mana sebuah proses yang mana sumber daya bersama diakses. Terdiri dari: Entry Section: kode yang digunakan untuk masuk ke dalam critical section

Critical Section: Kode di mana hanya ada satu proses yang dapat dieksekusi pada satu waktu

Exit Section: akhir dari critical section, mengizinkan proses lain

Remainder Section: kode istirahat setelah masuk ke critical section
Solusi dari masalah critical section harus memenuhi tiga syarat berikut:



  • Mutual Exclusion. 
Jika suatu proses sedang menjalankan critical section-nya, maka proses-proses lain tidak dapat menjalankan critical section mereka. Dengan kata lain, tidak ada dua proses yang berada dicritical section pada saat yang bersamaan.


  • Terjadi kemajuan (progress). 
Jika tidak ada proses yang sedang menjalankan critical section-nya dan ada proses-proses lain yang ingin masuk ke critical section, maka hanya proses-proses yang yang sedang berada dalamentry section saja yang dapat berkompetisi untuk mengerjakan critical section.
  • Ada batas waktu tunggu (bounded waiting). 
Jika seandainya ada proses yang sedang menjalankan critical section, maka proses lain memiliki waktu tunggu yang ada batasnya untuk menjalankan critical section -nya, sehingga dapat dipastikan bahwa proses tersebut dapat mengakses critical section-nya (tidak mengalamistarvation: proses seolah-olah berhenti, menunggu request akses ke critical sectiondiperbolehkan). 

Sumber :


1. http://pengertian-istilah.blogspot.com/2014/12/pengertian-critical-section.html

2. http://galihsayono.blogspot.com/2015/05/the-critical-section-problem.html

PENGERTIAN BATCH SYSTEM

Batch System
Picture

Batch system adalah dimana job-job yang mirip dikumpulkan dan dijalankan secara kelompok kemudian setelah kelompok yang dijalankan tadi selesai maka secara otomatis kelompok lain dijalankan. jadi dengan kata lain adalah teknologi proses komputer dari generasi ke-2. yang jika suatu tugas sedang dikerjakan pada 1 rangkaian, akan di eksekusi secara berurutan. Pada komputer generasi ke-2 sistem komputer nya maasih blum dilengkapi oleh sebuah sistem operasi. But, dalan beberapa fungsi sistem operasi, seperti os yang tengah berkembang pada jaman sekarang ini. Contohnya adlah FMS ( Fortarn Monitoring System ) dan IBSYS.

Contoh sebuah Batch System adalah sebuah e-mail dan transaksi batch processing. Dalam suatu sistem batch processing, transaksi secara individual dientri melalui peralatan terminal, dilakukan validasi tertentu, dan ditambahkan ke transaction file yang berisi transaksi lain, dan kemudian dientri ke dalam sistem secara periodik. Di waktu kemudian, selama siklus pengolahan berikutnya, transaction file dapat divalidasi lebih lanjut dan kemudian digunakan untuk meng-up date master file yang berkaitan.

BENTUK DARI BATCH SYSTEM

ada 2 cara dalam Batch System yaitu :

  1. Multi-programming adalah salah satu teknik penjadwalan dimana tugas (task) yang sedang  berjalan tetap berjalan sampai ia melakukan operasi yang membutuhkan waktu untuk menunggu respon dari luar (external event), misalnya membaca data dari disket/CD/dsb, atau sampai komputer memaksa untuk menukar tugas yang sedang berjalan dengan tugas lainnya. Sistem operasi yang yang menggunakan multi-program sebagai scheduler-nya bertujuan untuk memaksimalkan penggunaan CPU. 
  2. Multiprocessing adalah istilah teknologi informasi dalam bahasa Inggris yang merujuk kepada kemampuan pemrosesan komputer yang dilakukan secara serentak. Hal ini dimungkinkan dengan menggunakan dua CPU atau lebih dalam sebuah sistem komputer. Istilah ini juga dapat merujuk kepada dukungan sebuah sistem untuk mendukung lebih dari satu prosesor dan mengalokasikan tugas kepada prosesor-prosesor tersebut.

1. Resident Monitor


a. Operator bertugas mengatur urutan job


b. Job-job yg sama cukup dicetak sekali saja, cara inilah yg disebut “Batch system”


Teknik pengurutan job secara manual begini akan menyebabkan tingginya waktu


menganggur CPU. Muncul teknik pengurutan job otomatis yg mampu mentransfer secara otomatis dari suatu proses ke proses lainnya.Program kecil dan bersifat residen dimemori serta berisi urutan2 job yg akan berpindah secara otomatis, inilah “Resident Monitor”





2. Overlap Operasi antara I/O dg CPU


  •   .  Off line Processing, data yg dibaca dari card reader disimpan dulu dalam tape driver sebelum dibawa ke CPU, demikian pula informasi yg mau dicetak, disimpan dulu di tape 
  •   Spooling  adalah suatu program dapat dikerjakan walaupun I/O masih mengerjakan  proses lainnya dan disk secara bersamaan menggunakan data untuk banyak proses. Pengertian multi programming adalah kegiatan menjalankan beberapa program pada memori pada satu waktu.

Multiprogramming System

Multi programming system adalah dimana job-job disimpan di main memory di waktu yang sama dan CPU dipergunakan bergantian. Hal ini membutuhkan beberapa kemampuan tambahan yaitu : Penyediaan I/O routine oleh sistem, Pengaturan memori untuk mengalokasikan memory pada beberapa Job, penjadwalan CPU untuk memilih job mana yang akan dijalankan, serta pengalokasian hardware lain.


Multiprogramming berarti meletakkan lebih dari sebuah program di main memory. Cara ini dilakukan dengan membagi main memory menjadi beberapa partisi. Tiap partisi akan menyimpan sebuah program. Foreground partitions akan berisi program dengan prioritas yang lebih tinggi sedang background partitions akan berisi program dengan prioritas yang lebih rendah.


Meskipun setiap proses merupakan Entitiy yang berdiri sendiri, dan masing-masing memiliki program Counter dan status internal, beberapa proses sering kali harus berinteraksi dengan proses yang lain. Keluaran dari suatu proses dapat menjadi masukan bagi proses yang lain. Jika proses yang sedang menunggu masukan tidak menemukan masukan yang dikehendaki, proses tersebut diblok sampai masukan tersedia.


Pada saat proses diblok, secara logika proses tersebut tidak dapat dilanjutkan karena menuggu masukan yang belum tersedia. Dapat terjadi bahwa proses yang Ready dan dapat di-run terpaksa harus dihentikan karena sistem operasi arus mengalokasikan CPU ke proses lain untuk sementara waktu.


Proses dapat berada pada status berikut:


1. Submitt: Proses baru saja dikirimkan oleh user dan masih menunggu untuk dilayani.
2. Running: Proses benar-benar menggunakan CPU pada saat itu.
3. Ready: Proses berhenti sementara untuk memberikan kesempatan pada proses lain untuk menggunakan CPU.
4. Blocked: Proses tidak dapat di-Run sampai terjadi kejadian eksternal yang sesuai (misalkan selesainya operasi input/output atau telah tersedianya data input).
5. Finished: Proses telah dilaksanakan secara sempurna.


Di antara status Running, Ready dan Blocked, hanya terdapat 4 kemungkinan perubahan status, yaitu:


1. Running ke Blocked: Terjadi jika proses diblok, karena menunggu masukan atau menunggu selesainya aktivitas I/O.
2. Running ke Ready: Terjadi jika Process Scheduler menghentikan proses yang sedang running untuk memberikan kesempatan pada proses lain menggunakan CPU.
3. Blocked ke Ready: Terjadi jika ada kejadian eksternal yang menyebabkan proses dapat dijalankan kembali. Misalnya datangnya input atau selesainya suatu aktifitas I/O.
4. Ready ke Running: Terjadi jika proses siap untuk menggunakan CPU dan masukan yang sesuai untuk proses tersebut telah tiba.
Multitasking
Multitasking adalah adalah pemrosesan beberapa tugas pada waktu yang bersamaan.

Cara Kerja Multitasking


Dewasa ini, penggunaan time-sharing jarang digunakan, dan digantikan dengan multitasking.
Contoh sistem operasi jenis ini antara lain adalah linux. Linux adalah sistem operasi yang multitasking dan multiuser seperti kebanyakan SO yang ada pada saat ini. Multitasking pada linux artinya linux bisa atau mampu menjalankan beberapa proses dalam waktu yang bersamaan.


Seperti contoh pada saat kita menjalan kan aplikasi web browser kita juga bisa menjalankan aplikasi kompresi file. Sedangkan multiuser pada linux adalah user bisa login ke dalam sistem secara bersamaan, dengan artinya user bisa menggunakan satu sistem secara bersamaan dalam satu waktu. Multitasking dan multiuser pada sistem operasi merupakan satu keharusan dalam masa ini.


Keuntungan sistem ini adalah :
1. Suatu perintah dapat dilaksanakan secara tuntas sampai berakhir dengan prioritas tertinggi.

2. Mampu memproses lebih dari satu perintah dalam waktu yang bersamaan.hal ini dapat terjadi karena kemampuan membagi sumber daya yang tersedia. Jika suati perintah datang membutuhkan sumber daya media simpan menyelesaikan perintah/pekerjaan yang telah ditentukan, apabila datang perintah lain yang membutuhkan sumber daya memori misalnnya, perintah tersebut dapat langsung dikerjakan tanpa menunggu perintah sebelumnya selesai dierjakan.

Kelemahan dari sistem ini adalah jika terdapat banyak perintah, maka akan terjadi antian perintah yang cukup panjang. Pengguna harus menunggu perintah selesai dilaksanakan untuk memasukkan perintah selanjutnya.


Manfaat metode ini akan terasa ketika banyak terdapat perintah
yang menggunakan sumber daya yang berbeda, sehingga rangkaian perintah dapat diselesaikan dengan lebih cepat.

Time Sharing System
Time-sharing adalah metode dimana banyak pengguna dapat melakukan processing dalam satu komputer.

Christopher Strachy pada tahun 1959 telah memberikan ide mengenai pembagian waktu yang dilakukan oleh CPU. Baru pada tahun 1961, pertama kali sistem yang benar-benar berbentuk time sharing system dilakukan di MIT (Massachusetts Institute of Technology) dan diberi nama CTSS (Compatible Time Sharing System) yang bisa melayani sebanyak 8 pemakai dengan menggunakan omputer IBM 7090. Pada TSS tiap-tiap User dilayani oleh komputer dengan bergiliran dalam waktu yang sangat cepat. Sehingga tiap pemakai komputer tidak merasa bahwa komputer melayani beberapa pemakai sekaligus secara bergiliran.


Contoh penggunaan Time Sharing System


Salah satu penggunaan time sharing system ini dapat dilihat dalam pemakaian suatu teller terminal pada suatu bank. Bilamana seorang nasabah datang ke bank tersebut untuk menyimpan uang atau mengambil uang, maka buku tabungannya ditempatkan pada terminal. Dan oleh operator pada terminal tersebut dicatat melalui papan ketik (keyboard), kemudian data tersebut dikirim secara langsung ke pusat komputer, memprosesnya, menghitung jumlah uang seperti yang dikehendaki, dan mencetaknya pada buku tabungan tersebut untuk transaksi yang baru saja dilakukan. 

Real Time System
Real time system adalah suatu sistem yang mengharuskan suatu komputasi selesai dalam jangka waktu tertentu. Jika komputasi ternyata belum selesai maka sistem dianggap gagal dalam melakukan tugasnya.

Arsitektur Real-time System

Arsitektur sistem real-time merupakan suatu blog diagram yang mengambarkan interkoneksi antar sistem yang ada pada real-time. Secara garis besar dibedakan menjadi dua, yaitu bagian statistik dan algoritma. Pada bagian algoritma terdapat sejumlan n algoritma. Semakin kompleks suatu program, maka akan semakin banyak punya algoritma yang bisa digunakan untuk menyelesaikan program tersebut.


Pada bagian masukan terdapat saklar selector yang digunakan untuk memilih input mana yang akan dieksekusi menggunakan algoritma 1 – n, tergantung dari keinginan kita atau tingkat komplektifitas program. Agar bisa diperoleh konsep real-time, maka ditambahkan suatu kontrol /pencatat kapan program mulai start dan kapan program tersebut harus berhenti dengan menghasilkan nilai dan waktu sesuai dengan kesepakatan batas waktu (deadline).
Suatu hasil dikatakan tepat waktu :


- Yang meminta hasil memberitahu, hasilnya harus diserahkan sesuai dengan waktu yang telah disepakati / ditentukan. Misalnya seorang dosen memberikian ulangan kepada sejumlah mahasiswa dan memberikan waktu pengerjaan selama 1 jam. Apabila waktu pengerjaan telah mencapai 1 jam, maka seluruh pekerjaan yang diberikan tadi harus segera dukumpulkan.
- Bisa memberikan jawaban setiap kali diminta.
- Harus bisa memberikan jawaban yang dapat memuaskan penanya dan jawabannya harus akurat.
- Selalu siap sedia kapanpun peminta memerintahkan dan kapan harus diberikan oleh sistem serta dapat menjawab pada setiap saat 

Pengertian dan Tujuan Pembuatan System Call
System call adalah jembatan yang menghubungkan antara user dengan sistem operasi.
Fungsi dari system call adalah menyediakan interface antara program (program pengguna yang berjalan) dan bagian OS

Fungsi dari System Call
  1. mengakhiri (end) dan membatalkan (abort)
  2. mengambil (load) dan mengeksekusi (execute)
  3. menentukan dan mengeset atribut proses
  4. membuat dan menghapus file
  5. membuka dan menutup file
  6. membaca, dan menulis reposisi file    

SUMBER : 

1. http://onepersen4ever.blogspot.com/2014/04/pengertian-batch-system-bentuk-batch.html
2. http://onepersen4ever.blogspot.com/2014/04/pengertian-batch-system-bentuk-batch.html

Sejarah Perkembangan Sistem Operasi Android

Sejarah Perkembangan Sistem Operasi Android dari Masa ke Masa

Penemu Android

Sebelum resmi bergabung dengan Google, Android merupakan perusahaan sendiri. Pada tahun 2003 Andy Rubin yang berkolaborasi dengan Rich Miner, Nick Sears dan Chris White mendirikan perusahaan dengan nama Android, Inc. Tujuan awal dari perusahaan ini adalah untuk menciptakan sistem operasi canggih untuk kamera digital.
Namun karena pasar kamera digital tidaklah terlalu besar akhirnya pengembangan Android di alihkan untuk sistem operasi mobile untuk menyaingi sistem operasi Symbian dan Microsoft Windows Mobile.
Pada tahun 2005 Android secara resmi di akuisisi oleh raksasa teknologi Google. Sejak di akuisisi oleh Google, pengembangan sistem operasi mulai menggunakan kernel Linux. Sistem operasi ini di lisensikan di bawah lisensi Open Source yang membuatnya dapat di gunakan oleh siapapun.
Android merilis sistem operasi ke publik pada tahun 2008 dengan versi Android 1.0 tanpa kode nama. Sejak itu pula Android telah melakukan perombakan terhadap inti sistem operasi, perbaikan terhadap bug dan celah keamanan serta penambahan fitur-fitur baru pada sistem operasi Android. Sejak itu pula Android mulai menggunakan nama makanan sebagai alias pada sistem operasi besutanya seperti donut, jelly bean, marshmellow dll.
Hasil gambar untuk sistem operasi android
Android adalah salah satu sistem operasi pada smartphone yang sangat familiar. Sistem operasi ini banyak difungsikan oleh pengguna smartphone untuk membantu aktifitas mereka di ponsel pintar tersebut. Tetapi sejarah perkembangan sistem operasi Android dari masa ke masa masih banyak yang belum mengetahui.
Sebelum terkenal seperti sekarang ini, operasi sistem Android adalah sebuah sistem operasi berbasis Linux untuk smartphone  dan juga tablet. Android dikembangkan pada tahun 2003 oleh perusahaan Android Inc. yang berdomisili di Palo Alto, California, Amerika Serikat.
Pada awalnya sistem operasi Android dibuat untuk disematkan pada kamera digital. Akan tetapi, melihat perkembangan kamera digital yang tidak begitu baik, maka diputuskan untuk mengalihkan penyematan sistem operasi Android dari kamera digital ke smartphone.  Pada saat itu, sistem operasi Symbian dan Windows Mobile telah terlebih dahulu menguasai pangsa pasar smartphone.
Keterbatasan keuangan membuat Android Inc. diakuisisi oleh perusahaan raksasa, Google, pada tahun 2005. Android Inc. secara resmi menjadi anak perusahaan Google pada tahun tersebut.
Pada akhirnya, di tahun 2008, Google mengenalkan smartphone pertama yang menggunakan sistem operasi Android, yaitu HTC Dream. Sistem operasi Android versi 1.0 yang digunakan oleh HTC Dream telah berhasil mendongkrak penjualan ponsel pintar
Di tahun-tahun berikutnya, Google terus berusaha menjalin kemitraan dengan beberapa produsen smartphone terkenal, seperti HTC, Samsung, dan juga LG. Google menerapkan sistem terbuka kepada pembuat perangkat maupun pengembang aplikasi dalam memodifikasi atau melakukan pembaharuan pada setiap perangkat lunak yang ada di sistem operasi Android.
Strategi tersebut ternyata telah berhasil menjadikan sistem operasi Android sebagai sebuah sistem operasi yang paling banyak digunakan pada smartphone sampai sekarang.
Pengembangan yang dilakukan pada fitur-fitur Android terus dilakukan secara bertahap, seiring dengan kebutuhan penggunaan smartphone untuk membantu aktivitas penggunanya. Beberapa fitur-fitur baru selalu dimunculkan oleh Android pad setiap peningkatan versinya.
Hasil gambar untuk sistem operasi android



Ratusan bahkan ribuan aplikasi dapat diunduh secara gratis melalui toko aplikasi utama Android, yaitu Google Play Strore. Kemajuan pesat dari penggunaan Android saat ini telah berhasil mengalahkan sistem operasi yang lainnya, yaitu Symbian dan Windows.
perkembangan versi Android
1.  Android 1.o (Astro)
Android 1.0 merupakan versi komersil pertama dari Android. Sistem operasi ini diresmikan pada tanggal 23 September 2008. Astro adalah nama versi pertama dari Android, tetapi karena terdapat permasalahan dengan hak cipta pada nama Astro, maka pemberian nama pada versi tersebut tidak jadi dilakukan.
Di dalam Android 1.0 telah diperkenalkan tempat untuk mendownload berbagai aplikasi dari Android, yang diberi nama Android Market.
2. Android 1.1 (Bender)
Hasil gambar untuk sistem operasi android bender gambar





Android versi 1.1 lebih memberikan sentuhan pada beberapa aplikasi untuk meningkatkan performanya, misalnya system user interface yang lebih baik. Seperti halnya versi sebelumnya, terjadi permasalahan terhadap hak cipta nama, sehingga pemberian nama Bender pada versi Android 1.1 tidak dilakukan.


3. Android 1.5 (Cupcake)
Android versi 1.5 diluncurkan pada bulan Mei tahun 2009. Perlu diketahui, bahwa Android 1.5 adalah versi Android pertama yang menggunakan nama kue kecil mungil yang bernama Cupcake. Dikarenakan versi ketiga dari Android, maka pemberian nama versinya diawali dengan huruf C, yaitu Cupcake.
Gambar terkait





Aplikasi dan fitur yang ditambahkan pada sistem Android ini, antara lain aplikasi kamus dan keyboard, aplikasi merekam dan memutar video dalam format MPEG-4, aplikasi widget yang lebih lengkap, dan aplikasi mengunggah video ke dalam Youtube secara lebih mudah.

4. Android 1.6 (Donut)
Gambar terkait













Masih di tahun yang sama (September 2009), Android kembali mengenalkan versi sistem operasinya yang terbaru dengan nama Android 1.6 Donut. Pada versi ini, terdapat penambahan dukungan jaringan CDMA/EDVO yang pada versi Android 1.5 tidak ditemukan. Terdapat pula penambahan fitur pada sistem kamera dan mesin pencari (search engine).
5. Android 2.3-2.1 (Eclair)
Gambar terkait













Di dalam perkembangan selanjutnya, bersamaan dengan peluncuran smartpone Motorola Droid, Android mengenalkan kembali versi terbarunya yang diberi nama Android 2.3-2.1 dengan kode Eclair. Penambahan yang dilakukan pada versi ini adalah adanya fitur GPS (Global Positioning System).
6. Android 2.2-2.2.3 (Froyo)
Gambar terkait














Pada tanggal 20 Mei 2010, Android resmi meluncurkan sistem operasi Android 2.2-2.2.3 dengan kode Froyo (Frozen Yogurt). Tambahan fitur pada versi Android ini adalah Adobe Flash Player, yang pada versi sebelumnya belum ada. Selain itu, adanya dukungan dari kartu Mirco SD (Secure Digital) untuk penyimpanan data dalam kapasitas lebih besar.
7. Android 2.3-2.3.7 (Gingerbread)
Gambar terkait















Sekitar 7 bulan setelah peluncuran Android Froyo, tepatnya pada bulan Desember 2010, Android kembali merilis sistem operasi vesi terbarunya, yang diberi nama Android Gingerbread. Android 2.3-2.3.7 Gingerbread memiliki keunggulan dibanding versi sebelumnya, yaitu dapat digunakan untuk melakukan panggilan video (video call).
Banyak perubahan yang dilakukan pada versi Gingerbread ini, karena memang versi ini dikhususkan untuk mengoptimalkan berbagai aplikasi dan game yang terdapat di Google Play Store.
8. Android 3.0-3.2.6 (Honeycomb)
Hasil gambar untuk sistem operasi android honeycomb











Android versi Honeycomb resmi diluncurkan pada bulan Februari 2011. Sebenarnya versi Android ini dikhususkan untuk pengguna tablet berbasis Android. Pada versi ini, ditawarkan tampilan status bar yang semakin memudahkan penggunanya dalam berselancar.
9. Android 4.0-4.0.4 (Ice Cream Sandwich)
Hasil gambar untuk sistem operasi android Ice Cream Sandwich




Android versi Ice Cream Sandwich diluncurkan pada bulan Oktober 2011. Sistem operasi Android Ice Cream Sandwich hadir dengan tampilan yang lebih elegan dibandingkan versi terdahulu. Peningkatan kualitas fotografi dan video dilakukan pada versi Android ini.

10. Android 4.1-4.3 (Jelly Bean)
Gambar terkait














Pada bulan Juli tahun 2012, Android kembali meluncurkan sistem operasi terbarunya yang diberi nama Android Jelly Bean. Nexus 7 merupakan perangkat seluler yang menggunakan Android versi Jelly Bean ini.
Pembaharuan yang dilakukan pada versi Android ini adalah peningkatan kualitas input keyboard dan adanya pencarian Google Now yang memberikan informasi mengenai cuaca dan traffic.
11. Android 4.4+ (KitKat)
Hasil gambar untuk sistem operasi android kitkat



Android versi KitKat diresmikan penggunaanya oleh Google pada tanggal 4 September 2013. Operasi sistem ini diklaim mampu memberikan tampilan status bar transparan dan pembaharuan User Interface pada program Goole Maps Navigation dan Alarm.

12. Android 5.0+ (Lolipop)
Hasil gambar untuk sistem operasi android lollipop


Android versi Lolipop telah menerapkan processor 64 bitt dan mampu melakukan pengotimalan penggunaan baterai, sehingga smartphone yang support dengan versi Android ini akan memiliki daya tahan baterai lebih tinggi dibanding sebelumnya.
Perubahan internal pada platform juga dilakukan, yaitu menggantikan Dalvik dengan Android Runtime (ART) untuk meningkatkan performa aplikasi.
13. Android 6.0+ (Marshmallow)
Hasil gambar untuk sistem operasi android marshmallow











Android 6.0+ dengan kode M (Marshmallow) telah diperkenalkan oleh Google pada bulan Oktober 2015. Sistem operasi Android marshmallow merupakan lanjutan dari pengembangan Android Lolipop. Pada versi ini, diperkenalkan aplikasi API untuk menyempurnakan asisten kontekstual dalam Google Now On Tap, sebagai kemampuan baru dari aplikasi Google Search.
Diperkenalkan juga sistem Doze untuk manajemen daya baru yang dapat mengurangi aktivtas pada background saat perangkat tidak difungsikan. Selain itu terdapat perangkat migrasi data ke kartu mikro SD secara mudah dan cepat.
14. Android 7.0 (Nougat) 
Hasil gambar untuk sistem operasi android nougat






Android 7.0 dengan kode N (Nougat) diresmikan pada bulan Maret 2016. Nama “Nougat” diambil dari nama permen kacang yang populer di Perancis.
Android Nougat memungkinkan para pengunanya untuk dapat membuka dua aplikasi sekaligus dalam mode split screen. Pengguna juga dapat memiliki sampai sembilan toggles dalam satu layar dengan fitur Pengaturan Cepat.
Pada Android 7.0 Nougat juga diperbarui versi Doze mode menjadi Doze mode 2.0, yang bertujuan untuk meningkatkan daya tahan baterai, pada saat smartphone digunakan atau ketika layar dimatikan.
15. Android 8.0 (Oreo)
Hasil gambar untuk sistem operasi android oreo












Android 8.0 Oreo resmi diluncurkan pada tanggal 21 Agustus 2017 bertepatan dengan terjadinya gerhana matahari total di Amerika Serikat. Beberapa fitur baru dimunculkan pada sistem operasi Android Oreo ini.
Aplikasi  picture in picture memungkinkan pengguna untuk melihat dua aplikasi dalam satu tampilan layar sekaligus. Fitur notifications dots membuat pengguna lebih mudah mengetahui adanya notifikasi  baru dengan cukup dengan mengetukkan pada aplikasi.
Fitur  Google Play Protect pada Android Oreo memberikan perlindungan keamanan dan mengendalikan pemasangan aplikasi dengan lebih ketat. Lihat.
Sumber :
1. https://www.amongguru.com/sejarah-perkembangan-sistem-operasi-android-dari-masa-ke-masa/
2.    https://www.capuraca.com/2015/01/sejarah-perkembangan-sistem-operasi-android.html
3    https://www.dedyprastyo.com/2018/04/sejarah-sistem-operasi-android/