Sistem Operasi Waktu Nyata (RTOS-Real time Operating System) Pengertian Sistem Operasi • SO adalah perangkat lunak(kumpulan program) yang bertugas mengendalikan perangkat keras secara langsung, sebagai jembatan antara program aplikasi dan perangkat sistem komputer. • SO menyediakan lingkungan perangkat lunak yang efektif dan nyaman untuk program aplikasi dan pengguna(user) • Tujuan utama SO adalah mempermudah penggunaan sistem komputer terutama pemrogram(programmer), memberikan layanan-layanan(services) bagi program aplikasi untuk memanfaatkan sumber daya (resources) komputer dan mengusahakan agar sumber daya sistem komputer dapat digunakan secara efisien. Beberapa tipe SO, antara lain: • SO sendirian (Stand alone) : yaitu SO yang digunakan pada komputer dekstop atau notebook contoh DOS, Windows 2000 dll • SO jaringan (network) : yaitu SO yang mmemberikan dukungan ekstensif untuk jaringan komputer, umumnya berfungsi sebagai SO server. Contoh; windows 2000 server, Unix, Linux dll • SO tertanam (embedded) : yaitu SO untuk piranti tertanam dan komputer kecil, tersimpan dalam chip ROM. Contoh: Windows CE, Ppocket PC 2002, Palm OS • Subsistem dari SO terdiri dari Manajemen Proses, Manajemen Memory, Sistem File, Sistem Komunikasi Jaringan dan Sistem Pengamanan. Diagram Transisi Keadaan suatu Proses Sistem Waktu Nyata 1. 2. 3. 4. 5. Running (active, current), adalah keadaan task yang mmana sedang dieksekusi menggunakan processor (CPU). Secara normal merupakan task dengan priotas paling tinggi dari task—task yang siap dieksekusi Ready (runnable, on), adalah atribut dari task dan sumber daya yang diperlukan untuk meneksekusi task harus tersedia untuk tsk agar dapat ditempatkan dalam keadaan ready Waiting (suspended, blocked, locked on, delayed), adalah eksekusi task yang ditempatkan dalam keadaan ini telah ditangguhkan/ditunda sebab task sedang memerlukan sumberdayayang belum tersedia atau sebab task sedang menunggu beberapa sinyal dari piranti luar misalnya masukan dari ADC Analog to Digital Converter) atau task sedang menunggu untuk menghabiskan waktu. New (existent, dormant, off) adalah Sistem operasi mengetahui tentang keberadaan task ini, tetapitask ini belum diaokasikan suatu pioitas an belum bisa dibuat runnable Terminated (non-existend), adalah sistem operasi tidak mengetahui tentang keberadaan task ini, meskipun task ini dapat tinggal dalam memori komputer. Operasi-operasi pada proses • Penciptaan proses ( create a process ) • Penghancuran / terminasi proses ( destroy a process ) • Penundaan proses ( suspend a process) • Pelanjutan kembali proses (resume a process) • Pengubahan prioritas proses • Memblock proses • Membangun proses • Manjadwalkan proses • Memungkinkan proses berkomunikasi dengan proses lain Alasan Penghentian Proses Proses selesai mengerjakan tugasnya (selesai normal) Proses berjalan melebihi batas waktu Memory tidak tersedia Proses mengakses kawasan memory yang tidak boleh di akses Terjadi kesalahan karena pelanggaran proteksi Terjadi kesalahan perhitungan Proses menunggu terlalu lama Terjadi kegagalan I/O Proses mengeksekusi instruksi yang tidak ada Proses menggunakan instruksi yang disimpan untuk SO Terjadi kesalahan penggunaan data Terjadi intervensi dari operator atau SO (mis : DeadLock) Proses induk berakhir Atas permintaan proses induk 9 • Sistem Operasi Waktu Nyata(RTOS-Real time Operating System) adalah SO dengan ciri-ciri (features) khusus yang disesuaikan untuk pengembangan aplikasi sistem waktu nyata. • Sistem Waktu Nyata (RTS-Real Time System) adalah sistem (komputasi) dimana kebenaran komputasi tergantung tidak hanya pada kkebenaran hasil logika komputasi, tetapi juga tergantung pada waktu kapan hasil tersebut diserahkan. • Sistem Waktu Nyata dapat dikategorikan sebagai Sistem Waktu Nyata keras (hard-RTS) dan Sistem Waktu Nyata lunak (soft RTS). • Pada sistem waktu nyata keras, sistem dikatakan gagal jika waktu komputasi tidak memenuhi batas waktu(deadline). • Pada sistem waktu nyata lunak, hasil komputasi yang terlambat dari batas waktu (deadline) hanya akan mengurangi kinerja dari sistem tetapi tidak menjadikan gagal. Beberapa kebutuhan untuk Sistem Operasi Waktu Nyata: • SO harus multithreaded dan dihalangi (preemtive) • Sistem operasi harus mendukung prioritas dari suatu task dan thread. • Pada SO, inheritance prioritas harus ada. Inheritance prioritas adalah suatu mekanisme untuk menjamin bahwa task dengan prioritas lebih rendah tidak dapat menghalangi eksekusi task dengan prioritas lebih tinggi. • Sistem Operasi harus mendukung berbagai jenis mekanisme sinkronisasi task/thread Sebuah sistem operasi yang mendukung SWN harus menyediakan salah satu atau gabungan dari tiga ciri yang ada, antara lain: • Penjadwalan berdasarkan prioritas • Kernel dihalangi (preemptive) • Pengurangan latency