Security

Security
Security requirements ada 4 yaitu :
1.       Confidentiality: data dapat diakses oleh orang yang memiliki hak akses
2.       Integrity : tidak dapat diubah oleh orang yang tidak mempunyai hak akses
3.       Availability: data yang akan digunakna tersedia atau tidak
4.       Authenticity : memastikan system komputernya sesuai dengan usernya ato enggk
Security Environment
1.       Data yang confidentiality maka data akan menjadi aman
2.    Data yang saling terintegrasi maka akan membuat data akan tetap menjadi bagus terintegrasi
3.    System yang tersedia maka denial of service
Tipe dari threats
1.       Interuption : threats dapat berupa pesan yang dapat menginterupsi system saat sedang berjalan






2.       Interception : Menyadap data tapi tidak mengubah data
3.       Modification : seperti interception tapi ditengah-tengah diubah
4.       Fabrication : Kasih objek buat nyusup
Yang melakukan penyerangan
1.       Tarrget adalah orang yang gak tau tentang computer
2.       Orang yang menyusup ke dalam perusahan untuk mempelajari lebih dalam
3.       Melakukan penyerangan karena mengincaar uang
4.       Untuk mata-mata
Kecelakaan yang mengakibatkan data hilang
1.       Karena Allah
2.       Kesalahan hardware or software
3.       Kesalahan manusia
Dasar dari cryptography adalah :
Plaintext Ã encryptàciphertextàdecryptàplaintext
Mekasisme perlindungan :
1.       Perlindungan domain




2.       Perlindungan matriks
3.       Perlindungan matriks dengan domain sebagai object
Aset dari system computer
1.       Hardware
2.       Software
3.       Data
4.       Communication line and network  - Passive Attacks -
5.       Communication line and network  - Active Attacks –
Malicious Program

Prinsip dasar autentikasi
1.       Sesuatu yang user tahu
2.       Sesuatu yang user miliki
3.       Sesuatu yang mengidentifikasi siapa usernya
Pencegahan supaya orang tidak bisa masuk sembarangan :
1.       Waktu yang terbatas ketika login
2.       Terdapat validasi captha untuk membuktikan user adalah manusia bukan mesin
3.       Login tidak boleh salah berkali-kali , ada batasannya
4.       Login berasal dari database
5.       Buat 1 login yang simple
Penyerangan dari dalam
1.       Trojan horses : sebagai pintu masuk dari malware
2.       Login spoofing : adanya 1 halaman yang persis dengan halaman login , yang digunakan unutk mengetahui hacker ingin hack system sedalam apa
3.       Logic bomb : Jika hacker melakukan kondisi A maka programmer sudah menyiapkan apa yang harus dilakukan untuk melawan hacker
4.       Trap door : terdapat username yang seolah-olah menjadi admin yang berfungsi untuk mengelabuhi hacker
5.       Buffer overflow: buat operasi overflow operasi matematika
Virus : virus akan hidup pada saat menginjeksi inangnya , dia akan menyerang .exe
Worms : tidak menginfeksi program lain tetapi memperbanyak diri sampai space dari disk habis , malware menyebar melalui email
Zombie : bisa menyebar lewat jaringan internet , karena ada computer yang dikendalikan dari jauh(zombie)

Virus stages
1.       Dormant phase : virus yang mengumpet
2.       Propagation phase : menyebar virusnya tapi gak melakukan apa-apa
3.       Trigerring phase : virus dijalanin di fungsi tertentu
4.       Execution phase : fungsi dijalankan
Pendekatan antivirus
1.       Deteksi
2.       Identifikasi
3.       Menghapus
Sistem yang terpercaya adalah system yang keamanan bertingkat dan bertahan dari Trojan horses

Embedded system(sessioni 23-24)

Embedded system adalah mengkombinasikan hardware dan software dan didesain untuk fungsi yang spesifik
Karakteristik embedded system :
1.     Real time operation : akan bergerak secara otomatis saat itu juga
2.     Reactive operation : ketika melewati garis pembatas maka system langsung memberi informasi
3.     Configurability : bisa dibuat variasi macam-macam dengan fungsi yang sama
4.     I/o device flexibility : untuk input output yang fleksibel
5.     Streamline rotection mechanism : digunakan untuk security
6.     Direct use of interrupts: bisa diinterupsi
Kelebihan embedded system development dibanding system development
1.     Membaca code tidak perlu dari atas ke bawah
2.     Banyak bagian dari system yang dapat berjalan bersamaan
3.     Dapat berhenti kapan saja
Pendekatan Embedded System
1.     Tentukan hardware apa yang akan digunakan
2.     Pastikan semua software compatible dengan hardware yang ada
3.     Untuk tugas yang spesifik membutuhkan waktu yang lama
4.     Decomposable hierarchy (object oriented)
5.     Buatlah hal yang baru atau ketika buat yang sudah ada maka kembangin
Spesialisasi dari Embedded System
1.     Tugas yang spesifik dapat dikerjakan dengan waktu yang cepat
2.     Schedullignnya realtime maka bisa diinterrupts
3.     Ukuran yang digunakan sangat sedikit karena jika tidak digunakan maka langsung dibuang
4.     Bisa membuat ukuran yang pasti
5.     Bisa lock secara realtime
Contoh dari implementasi embedded system tinyOS dan eCOS
eCOS Component
HAL (Hardware Abstraction Layer ): software yang menampilakan sebuah API yang konsisten untuk layer yang lebih atas yang menjadi hardware platform yang spesifik. Tujuan :
      Low interrupt latency
      Low task switching latency
      Small memory footprint
      Deterministic behavior
eCOS Scheduller
·        Bitmap Scheduller : mendukung level prioritas yang paling banyak tapi hanya satu thread bisa ada pada setiap level prioritas pada waktu yang telah ditentukan .
·        Multilevel Queus Scheduller : mendukung hingga level 32 . Mengijinkan multiple threadyang aktif dan dibatasi oleh system.


Link:


Multipcessor (session 21-22)



Multicore Computer
·        CPU yang memiliki core lebih dari 1
·        Dalam 1 chip terdapat banyak core
·        Performance sangat baik walaupun prosessor memiliki clock yang sangat tinggi
Multiprocessor
·        Lebih dari 1 CPU
·        Beberapa mesin dapat mengkombinasikan 2 teknologi yaitu multicore dan multiprosessor . Contoh : render 3D
Perbedaan multicore dan multiprocessor
1.     Hemat energy
a.     Multicore computer lebih baik dibanding multiprocessor
b.     Banyak CPU membuat banyak daya listrik yang dibutuhkan dibanding 1 cpu dengan banyak core
c.      Banyak CPU artinya banyak circuit yang ada jika dibuat papan circuitnya akan ribet karena 1 chip berhubungan dengan chip yang laen
2.     Hemat penampung
a.     Multicore menyimpan hanya dalam 1 lingkup penyimpanan saja .
b.     Jika smakin banyak prosesor yang digunakann maka space smakin banyak yang tidak digunakan , maka dari itu lebih baik 1 core yang berpusat ditengah-tengah
Multiprocessor system  mempunyai :
Performance
a.     Performance yang baik ketika banyak aplikasi yang berjalan bersamaan dalam waktu yang sama
b.     Masing-masing prosessor dapat menghandle request data

a)     Shared memory multiprocessor dimana terdapat banyak prosessor
b)    A message passing multicomputer dimana banyak computer
c)     A wide area distributed system dimana prosessor dan computer berhubungan dan tipe ini untuk akan digunakan untuk masa depan
Terdapat 3 bus-based architectures :

1.     Without caching : tanpa adanya tempat penampungan sementara
2.     With caching : menggunakan tempat penampungan sementara
3.     With caching and private memories: ada memory yang dibagikan dan ada memory yang di gunakan pribadi
Architecture dalam multiprosessor :
1.     Uniform memory access(UMA)
a.     Sering disebut tighly coupled multiprocessor
b.     Disebut juga symmetrical multiprocessor
c.      Contoh : balance system dan VAX 8800
2.     Nonuniform memory access(NUMA)
a.     Contoh : HP AlphaServer dan IBMNUMA Q
3.     No remote memory access(NORMA) architecture
a.     Contoh : hypercube system by intel
SMP architecture
-         Adanya sebuah jalur yang dapat digunakna untuk berkomunikasi biasanya disebut busway
-         Kelemahannya waktu delay yang tidak dapat diprediksi karena symmetrical sehingga tidak tahu kapan akan datang
-         Kelemahannya juga bottleneck
Dengan menggunakan crossbar switch maka waktu delay dapat terprediksi dengan baik .
Kernel struktur
Kernel dari multiprocessor os disebut SMP kernel .
Setiap CPU dapat diesekusi dalam kernel dan banyak cpu dapat melakukannya dengan parallel .
Numa Kernel
Menggunakan system yang terpisah karena waktu mengakses memory local dan non local.
Persamaan NUMA dan UMA
-         Single memory space
-         Pitfall : membandingkan antara shared memory dan distributed memory
Perbedaan NUMA dan UMA
-         Access time
-         # of processor
-         Bus vs network implementation
NUMA
Karakteristik :
1.     Single address space
2.     Akses untuk meremote memory lewat instruksi LOAD dan STORE
3.     Akses untuk meremote memory lebih lama dari mengakses local memory
Klasifikasi dari system parallel
-         SISD (Single Instruction Single Data) : uniprocessor
-         MISD(Multiple Instruction Single Data): Stream based processing
-         SIMD(Single Instruction Multiple Data)
-         MIMD(Multiple Instruction Multiple Data)
Time sharing : bagaimana caranya supaya data tidak saling tabrakan
Space Sharing : Pembagian space
Gang Schedulling
Terdapat 3 bagian dari gang scheduling :
1.     Untuk thread yang sejenis maka dijadikan satu
2.     Jalannya bareng-bareng
3.     Mulainya bareng dan selesainya juga bersama-sama





Link:




Perbedaan Single Buffer dan Double Buffer

a. Single buffering

Model single-buffered menulis pixels secara langsung ke dalam memori framebuffer yang aktif hasil parsial kemudian terlihat ini adalah terutama nyata ketika berusaha untuk membuat animasimerupakan teknik paling sederhana. Ketika proses memberi perintah untuk perangkat I/O, sistem operasi menyediakan buffer memori utama sistem untuk operasi.Untuk perangkat berorientasi blok.Transfer masukan dibuat ke buffer sistem. Ketika transfer selesai, proses memindahkan blok ke ruang pemakai dan segera meminta blok lain. Teknik ini disebut reading ahead atau anticipated input. Teknik ini dilakukan dengan harapan blok akan segera diperlukan. Untuk banyak tipe komputasi, asumsi ini berlaku. Hanya di akhir pemrosesan maka blok yang dibaca tidak diperlukan.

b. Double buffering

Teknik untuk menggambar grafik yang menunjukkan tidak ada (atau kurang) merobek ,meliuk dan artefak lainnya. Peningkatan dapat dibuat dengan dua buffer sistem.Proses dapat ditransfer ke/dari satu buffer sementara sistem operasi mengosongkan (atau mengisi) buffer lain. Teknik ini disebut double buffering atau buffer swapping. Double buffering menjamin proses tidak menunggu operasi I/O.Peningkatanini harus dibayar dengan peningkatan kompleksitas.


referensi : http://sayadalaminformatika.blogspot.com/2012/05/buffering-bufferadalah-area-memori-yang.html


Memory management(chapter 11-12)



Kebutuhan memanage memory :
1.       Relocation
2.       Protection
3.       Sharing
4.        Logical organization
5.       Physical organization

Addressing
·         Logical: merupakan lokasi memori yang tidak bergantung dari tugas dari data ke memori. Penerjemahan harus dibuat pada physical address.
·         Relative: alamat yang ditampilkan sebagai lokasi relatif dari lokasi yang ditunjuk.
·         Physical: alamat mutlak atau lokasi sebenarnya dalam memori utama.

Memory allocation algorithm
1.       First fit : mencari memori paling pertama yang ukuran pas dari paling depan
2.       Next fit : cari dari tempat itu lalu cari setelahnya kosong atau tidak?
3.       Best fit : cari memori paling deket , kemudian masukin
4.       Worst fit: selalu mencari ruang besar yang tersedia sehingga ruang dapat dipecah menjadi cukup besar, agar berguna untuk proses-proses berikutnya.
5.       Quick fit : nyari yang tercepat
6.       Buddy system:  semua blok memori yang tersedia diperlakukan menjadi satu blok yang dilambangkan dengan 2U. Jika suatu  proses meminta ukuran blok sebesar s ( 2U-1 < s <=2U), maka blok 2U akan dibagi menjadi 2 dan dibandingkan apakah ukurannya sudah sesuai dengan s atau belum jika belum maka blok akan dibagi lagi samapi ukuran sesaui dengan porsi s.

Fungsi Manajemen Memori
 ·            Mengelola informasi yang dipakai dan tidak dipakai
      ·             Mengalokasikan memori ke proses yang memerlukan.
      ·            Mendealokasikan memori dari proses telah selesai.
      ·            Mengelola swapping atau paging antara memori utama dan disk.
 Memory Partitioning

·         Fixed Partitioning
Memori dibagi menjadi blok-blok yang  berukuran tetap. Ada 2 tipe pembagian ukuran: pembagian yang semua ukurannya sama dan ada yang berbeda satu sama lain. Sehingga setiap proses baik yang besar atau peun yang kecil akan diletakan pada blok yang kosong tidak peduli ukurannya terlalu besar atau terlalu kecil blok memorinya.
·         Dinamyc Partitioning
Pembagian dibagi berdasarkan panjang variable dan nomer dari proses. Proses dialokasikan pada suatu blok sesuai dengan yang dibutuhkannya. Tetapi pada saat penempatan proses terdapat lubang antar prosesnya yang biasa disebut eksternal fragmetnation.
Swapping merupakan pemindahan proses dari memori utama ke disk dan kembali lagi. Sebuah proses harus berada di memori untuk dieksekusi. Proses juga dapat ditukar (swap) sementara keluar memori ke backing store dan kemudian dibawa kembali ke memori untuk melanjutkan eksekusi.

(a)    Mengalokasikan uang untuk segmen data
(b)  Mengalokasikan ruang untuk stack dan segmen data