Advances in computer technology have mostly concentrated on processing power and not much on the I/O and storage component. This is why the CPU and GPU have advanced in leaps and bounds while system storage like the hard disk drive has only advanced moderately.
Read more: Sistem Operasi – 17 – Performance, Storage Devices.Time seek | Note from CS162 Lecture 17 (3/31/2020): Performance, Storage Devices |
00:00 | how processor talk to the device |
02:34 | memory-mapped display controller |
04:34 | transferring data to/from controller |
09:39 | I?O device notifying the OS |
16:44 | life cycle of an I/O request |
20:34 | basic performance concept |
28:47 | what determines peak bandwith for I/O? |
51:14 | magnetic disk performance example |
1:07:04 | SSD performance example |
1:13:40 | SSD summary |
1:15:17 | Nano-tube memory (nantero) |
1:18:30 | I/O Performance |
Poin-poin Penting
- satu device dapat dipakai bersama oleh beberapa user program (bisa juga dipakai oleh kernel)
- saat boot, sistem operasi (atau hardware) memetakan alamat memory yg mengubungkan processor dengan device. misalnya, 0x0007F004 adalah alamat untuk mengirimkan command ke display controller. siapapun (baik user program atau kernel) yang mengirim perintah (dengan cara menulis) ke alamat tersebut, maka bisa menyebabkan display controller melakukan sesuatu.
- alamat 0x0007F004 bisa di-pointing oleh beberapa user program sekaligus, menggunakan mekanisme address translation, dengan demikian berbagai user program bisa mengirim perintah ke display controller.
- device driver bisa mendapatkan akses langsung ke memory, namanya DMA (direct memory access), sebuah hardware khusus, yg dapat menulis kedalam memory (RAM) secara langsung tanpa melalui processor.
- processor memerintahkan device driver untuk mengambil sejumlah C byte dan ditulis ke alamat x → device driver memerintahkan DMA untuk mengambil sejumlah C byte dari device, kemudian menulisnya ke alamat x → jika sudah selesai, DMA akan memanggil interupt untuk memberi tahu processor kalau penulisan sejumlah C byte dari device sudah selesai dilakukan.
- kunci dalam menggunakan magnetic disk secara efektif adalah dengan meminimalkan seek dan rotasional delay.
- SSD
- 4kb page in 64 pages per block
- write per page, erase per block
- only can write on empty page (if page is occupied, need to erase first
- rule of thumb: write 10x read, erasure (make sure we can write) 10x write
Latar Belakang
processor tidak aware dengan adanya device. yang processor tahu hanyalah instruction dan data di physical memory (RAM) untuk di load dan execute. maka device driver juga akan diperlakukan sama sebagaimana instruction dan data di RAM. misalnya, dalam hal menampilkan gambar ke layar, memerlukan display controller. processor akan menempatkan data di alamat x, kemudian processor mengirimkan command (misalnya: render) ke alamat y. Alamat x dan y ini khusus, yang tahu adalah hardware, bukan processor, sehingga kita bisa membuat hadware yang apa bila dikirim command (berupa byte value yang ditulis ke alamat y), akan mentrigger display controller untuk menampilkan gambar dari alamat x ke monitor.