Anda di halaman 1dari 25

TUGAS UJIAN MID

SISTEM WAKTU NYATA TERTANAM ( SISTEM EMBEDED )

Disusun oleh :
TRI OKTAVIANDRA
III DIV EC
1811012012

Dosen Pembimbing :
Roza Susanti, SST.,M.Kom

PROGRAM STUDI DIV TEKNIK ELEKTRONIKA INDUSTRI


JURUSAN TEKNIK ELEKTRO
POLITEKNIK NEGERI PADANG
2021
TUGAS UJIAN MID

Nomor 13, absen Nomor 20

- Kriteria Umum Bahasa Pemograman


https://sultanluckq.wordpress.com/2013/06/25/kriteria-bahasa-pemrograman-1-
2/#:~:text=Bahasa%20pemrograman%20harus%20mempunyai%20struktur,C%2B%2B
%20untuk%20pemrograman%20berorientasi%20obyek
https://slideplayer.info/slide/12773903/

- Kriteria Khusus untuk Kompiler Waktu Nyata


https://tugaseco.wordpress.com/sistem-waktu-nyata/

- Optimasi Kompilator C untuk Waktu – Nyata


https://en.wikipedia.org/wiki/Optimizing_compiler
 Komputer
▪ Sebuah mesin yang melaksanakan berbagai macam tugas berdasarkan
perintah khusus

 Dua komponen utama:


▪ Hardware
▪ Bagian komputer yang dapat diukur
▪ Terdiri atas bagian elektronik dan mekanik
▪ Software
▪ Bagian komputer yang tidak dapat diukur
▪ Terdiri dari data dan program komputer
CPU
▪ Central Processing Unit
▪ Processor merupakan “otak” pada komputer
▪ Yang melakukan komputasi dasar dalam sistem
▪ Contoh: Pentium, Athlon and SPARC.
Memori
▪ Tempat dimana dapat ditemukannya data dan
perintah yang dibutuhkan oleh CPU untuk
melakukan tugas-tugas yang ditetapkan
▪ 2 Tipe:
▪ Memori utama (Main Memory)
▪ Memori Sekunder (Secondary Memory)
Memori Utama

▪ Digunakan untuk mengendalikan program dan data, dimana prosesor secara


aktif bekerja

▪ Tidak digunakan untuk penyimpanan jangka panjang

▪ Biasanya disebut dengan RAM (Random Access Memory)

▪ Diperlukan sebagai volatile storage – yang artinya ketika komputer


dimatikan, semua informasi yang berada pada memory utama akan
terhapus
Memory sekunder

▪ Digunakan untuk mengendalikan program dan data


untuk penggunaan jangka panjang.

▪ Contoh dari memory sekunder adalah hard disk dan


cd-rom.

▪ Diperlukan sebagai non-volatile storage


Perbandingan antara memory utama dan memory
sekunder :
I/O Device
▪ Digunakan supaya sistem komputer dapat berinteraksi dengan
dunia luar dengan cara memindahkan data ke dalam dan
keluar sistem
▪ Contoh:
▪ Input device: keyboard, mouse dan mikrofon
▪ Output device: monitor, printer dan speaker
 Software
▪ Suatu program yang digunakan oleh komputer untuk
melakukan suatu fungsi
▪ Disimpan pada beberapa piranti keras (hardware) seperti hard
disk, tetapi software sendiri bersifat tidak dapat diukur
(intangible)
▪ data yang komputer gunakan dapat berupa apapun yang
program perlukan
 Program
▪ Tindakan seperti instruksi untuk processor.
Beberapa Tipe Program Komputer
▪ Program Sistem
▪ Program Aplikasi
▪ Compiler
Program Sistem

▪ Program yang diperlukan untuk menyimpan


semua sistem hardware dan software yang
berjalan secara bersamaan

▪ Contoh : Sistem Operasi seperti Linux, Windows,


Unix, Solaris, MacOS
Program Aplikasi

▪ Program yang digunakan user untuk


menyelesaikan tugas mereka

▪ Contoh : Word Processor, Game programs,


Spreadsheets
Compiler

▪ Menerjemahkan program komputer ke dalam


bahasa mesin

▪ Bahasa mesin
▪ Bahasa yang dimengerti oleh komputer.
Bahasa Pemrograman
▪ Suatu teknik komunikasi yang distandarisasi untuk menyatakan instruksi
pada komputer

▪ Seperti bahasa manusia, masing-masing bahasa memiliki sintaks dan tata-


bahasa sendiri

▪ Terdapat perbedaan tipe dari bahasa pemrograman yang dapat digunakan


untuk membuat suatu program, tetapi hal itu tergantung pada bahasa yang
Anda gunakan, instruksi-instruksi ini diterjemahkan ke dalam bahasa mesin
yang dapat dimengerti oleh komputer.
 Adalah alat untuk membuat program
 Contoh: Java, C, C++, C#, Pascal, Basic, Perl,
PHP, ASP, JHP, dll.

 Perbedaan: cara memberikan instruksi


(sintaks)
 Persamaan: bertujuan menghasilkan output
yang sama
 CONTOH BAHASA PEMROGRAMAN

➢ Bahasa Mesin ; Assembler


➢ Bahasa Tingkat Tinggi
- Menggunakan Compiler sebagai penterjemah ;
Fortran, LISP, Cobol, RPG, dsb
- Menggunakan Interpreter sebagai
Penterjemah ; Basic, Pascal, Bahasa C, dsb
➢ Bahasa Generasi Ke-4 ; Informix, Oracle, dsb

16
 Pemrograman Prosedural / Terstruktur
▪ Berdasarkan urutan-urutan, sekuensial
▪ Program adalah suatu rangkaian prosedur untuk memanipulasi data.
Prosedur merupakan kumpulan instruksi yang dikerjakan secara
berurutan.
▪ Harus mengingat prosedur mana yang sudah dipanggil dan apa yang
sudah diubah.
▪ Program dapat dibagai-bagi menjadi prosedur dan fungsi.
▪ Contoh: PASCAL dan Cliper dll
 Pemrograman Fungsional
▪ Berdasarkan teori fungsi matematika
▪ Fungsi merupakan dasar utama program.
▪ Contoh LISP, ML (Meta Language) , Lambda Calculus
 Pemrograman Modular
▪ Pemrograman ini membentuk banyak modul.
▪ Modul merupakan kumpulan dari prosedur dan fungsi yang berdiri
sendiri
▪ Sebuah program dapat merupakan kumpulan modul-modul.
▪ Contoh: MODULA-2 atau ADA
 Pemrograman Berorientasi Obyek
▪ Pemrograman berdasarkan prinsip obyek, dimana obyek
memiliki data/variabel/property dan method/event/prosedur
yang dapat dimanipulasi
▪ Contoh: Java, C++ dan Object Pascal
 Pemrograman Berorientasi Fungsi
▪ Pemrograman ini berfokus pada suatu fungsi tertentu saja.
Sangat tergantung pada tujuan pembuatan bahasa
pemrograman ini.
▪ Contoh: SQL (Structured Query Language), HTML, XML dan
lain-lain.
 Pemrograman Deklaratif
▪ Pemrograman ini mendeskripsikan suatu masalah dengan
pernyataan daripada memecahkan masalah dengan
implementasi algoritma.
▪ Contoh: PROLOG
 Dilihat dari Struktur Sistem Komputer dan Siklus diatas,
Algoritma Pemrograman menempati posisi dibagian
implementasi karena bagian implementasi merupakan
bagian dimana pemrogram melakukan proses coding
(pembuatan program).
- Kriteria Khusus untuk Kompiler Waktu Nyata

Definisi Sistem waktu-nyata

Sistem waktu-nyata adalah sistem yang harus menghasilkan respon yang tepat dalam

batas waktu yang telah ditentukan. Jika respon komputer melewati batas waktu tersebut, maka

terjadi degradasi performansi atau kegagalan sistem. Sebuah sistem waktu-nyata adalah sistem

yang kebenarannya secara logis didasarkan pada kebenaran hasil-hasil keluaran sistem dan

ketepatan waktu hasil hasil tersebut dikeluarkan. Aplikasi penggunaan sistem seperti ini

adalah untuk memantau dan mengontrol peralatan seperti motor, assembly line, teleskop, atau

instrumen lainnya. Peralatan telekomunikasi dan jaringan komputer biasanya juga

membutuhkan pengendalian secara waktu-nyata.

Pada awal perkembangan sistem waktu-nyata pada tahun 1950-an sampai dengan akhir

1970-an, konsumen utama dari sistem waktu-nyata adalah industri militer di Amerika

Serikat. Sekarang, sistem waktu-nyata semakin banyak digunakan dalam otomasi industri dan

instrumentasi. Salah satu contoh umum sistem waktu-nyata adalah sistem komputer yang

digunakan oleh NASA pada pesawat ruang angkasanya. Sistem komputer pesawat ruang

angkasa berjalan tanpa campur tangan manusia, dan jika sistem ini gagal memenuhi tenggat

waktu eksekusi yang ditetapkan, maka pesawat ruang angkasa ini bisa jadi akan mengalami

bencana yang fatal. Untuk memperkecil kemungkinan kegagalan sistem komputernya, NASA

biasanya menggunakan beberapa komputer sekaligus untuk mengerjakan perhitungan yang

sama.Klasifikasi Sistem Waktu-Nyata :


Berdasarkan batasan waktu yang dimilikinya, sistem waktu-nyata dapat dibagi menjadi tiga

kelas, yaitu :

1. Hard Real-Time

Adalah sistem yang harus memenuhi tenggat waktu pada setiap kesempatan. Contoh

sistem dari kelas ini adalah sebuah sistem yang melakukan shutdown dari sebuah roket.

Sebuah delay yang

tak terduga selama setengah detik mungkin dapat menyebabkan roket meledak. Penent

uan apakah sebuah sistem termasuk dalam kategori hard real-time tidak berdasarkan waktu

respon rata-rata yang dimilikinya, melainkan berdasarkan waktu respon terburuk.

2. Soft Real-Time

Adalah sistem yang jika suatu saat gagal dalam memenuhi tenggat waktu, tidak akan

menyebabkan kegagalan sistem. Semua sistem komputer dapat dikategorikan dalam kelas ini

karena semua sistem harus memenuhi definisi di atas, dalam dimensi yang berbeda-

beda. Contoh sistem dari kelas ini adalah sebuah video player yang seharusnya selalu

menampilkan setiap frame sesuai dengan rate yang diinginkan. Delay selama setengah detik

tidak akan menyebabkan kegagalan yang fatal, tetapi akan mengganggu kenyamanan user.

3. Firm Real-Time

Adalah sistem yang memiliki karakteristik pewaktuan seperti sistem hard real-time tapi

mampu menjalankan aplikasi waktu-nyata level user seperti aplikasi grafis atau TCP/IP yang

biasanya tidak dapat dijalankan oleh sistem hard real-time.


Komponen Sistem Waktu-Nyata :

Komponen dari sistem komputer waktu-nyata, yaitu :

1. Perangkat keras

2. Sistem operasi waktu-nyata

3. Bahasa pemrograman waktu-nyata

4. Sistem komunikasi

Perangkat keras komputer sebenarnya tidak ada spesifikasi khusus untuk sebuah

perangkat keras komputer dengan kapabilitas waktu-nyata. Secara umum, semua komputer

modern termasuk PC x86 dapat digunakan untuk sistem waktu-nyata. Untuk keperluan

tertentu, digunakan komputer dengan arsitektur dan prosesor khusus, seperti transputer.

Sistem operasi waktu-nyata merupakan perangkat lunak sistem yang berseluler

mengatur resource yang disediakan oleh perangkat keras dan menyediakan fasilitas

pemrograman untuk digunakan oleh aplikasi. Sistem operasi waktu nyata memiliki

karakteristik yang berbeda dengan sistem operasi biasa, sehingga tidak semua sistem operasi

bisa disebut sebagai sebuah sistem operasi waktu-nyata.

Bahasa pemrograman waktu-nyata memiliki peranan yang penting dalam pembangunan

sistem waktu-nyata. Bahasa pemrograman waktu-nyata yang baik sebaiknya memiliki

beberapa karakteristik sebagai berikut :

1. Efisien dalam penggunaan CPU

2. Mampu menangani pemrograman I/O yang intensif

3. Memiliki sintaks sederhana, untuk mengurangi kompleksitas program sehingga

kemungkinan kesalahan dapat diperkecil

4. Didukung oleh sistem operasi

5. Memiliki tool pendukung seperti debugger dan profiler


Implementasi sistem waktu-nyata pada tahun 1950-an kebanyakan menggunakan bahasa

pemrograman assembler agar sistem menjadi lebih efisien dalam penggunaan CPU. Tetapi,

setelah sistem berkembang semakin besar, penggunaan bahasa assembler membuat

program menjadi semakin kompleks dan rentan terhadap kesalahan pemrograman.

Beberapa bahasa pemrograman kemudian muncul dan menggantikan peranan bahasa

assembler. Sebagian diantaranya dirancang khusus untuk aplikasi waktu-nyata, dan sisanya

adalah bahasa pemrograman multifungsi (general-purpose). Bahasa pemrograman waktu-nyata

yang paling populer adalah Ada. Bahasa Ada memiliki konstruksi yang memudahkan

programmer untuk menspesifikasikan tugas-tugas waktu nyata.

Sistem operasi Unix ditulis dengan bahasa C, dan memiliki dukungan yang intensif

terhadap penggunaan bahasa C. Kompilator dan debugger bahasa C pasti tersedia di semua

varian Unix. Meskipun bahasa C bukan merupakan bahasa yang khusus digunakan untuk

sistem waktu-nyata, tetapi bahasa C adalah bahasa yang cukup memadai karena memenuhi

kriteria-kriteria di atas. Real- Time Linux hanya mendukung bahasa C, terutama karena

pemrograman untuk Real-Time Linux dilakukan di level kernel.

Sistem Komunikasi melalui jaringan dibutuhkan jika lebih dari

satu komputer menjadicontroller. Komunikasi jaringan (misalnya melalui Ethernet) memiliki

kasus waktu terburuk yang tidak dapat dipastikan, sehingga jika sebuah sistem hard real-

time menggunakan mekanisme komunikasi jaringan maka sistem ini tidak lagi dapat

diverifikasi karena verifikasi sebuah sistem hard real-time memerlukan data kasus terburuk

dari eksekusi tugas.

Sumber: http://aldebian.wordpress.com/2012/08/10/definisi-sistem-waktu-

nyata/ [16/04/2013]

Anda mungkin juga menyukai