Tugas Proyek Pemrograman Web Dinamis

0

Tugas proyek web dinamis sekarang disuruh bukin template web menggunakan php.
Template ini dibuat secara kelompok. kami membuat web berita olahraga,karena web olahraga itu paling banyak diakses…hee

1.Tampilan utama user
1

2.Tampilan selanjutnya
2

3.Tampilan Comment berita
7

Nah,itu adalah tampilan utama untuk user…jadi jika ingin mencari berita olahraga tinggal search aja,kan udah ada menu searchnya.maka akan muncul berita yang dicari,apabila tidak ada berita maka akan muncul pemberitahuan sendiri.

4.Tampilan login Admin
3

5.Tampilan Admin setelah Login
4

5

6.Tampilan Tambah berita
6

Untuk Admin,dalam web berita ini mampu mengakses semua. yaitu mengakses tambah berita dan sebagainya. untuk sourcecodenya g’ saya tampilkan yach…klo ingin download sourcecodenya ada di http://aiiuaisyah.wordpress.com/2013/01/06/final-project-pwd-pemrograman-web-dinamis/
terimakasiah…..

Sistem Operasi Mengendalikan Proses Aplikasi

0

Pengendalian proses

Dalam pengendalian antar proses, sistem operasi menggunakan metode :

  • Saling melanjutkan (interleave), Sistem  operasi  harus  dapat  kembali  melanjutkan  proses  setelah  melayani proses lain.
  • Kebijaksaan tertentu, Sistem   operasi   harus   mengalokasikan   sumber   daya   ke   proses   berdasar prioritasnya.
  • Komunikasi antar proses dan penciptaan proses, Sistem operasi harus mendukung komunikasi dan penciptaan antar proses (menstrukturkan aplikasi).

Pada sistem dengan banyak proses aktif, proses-proses pada satu saat berada dalam beragam tahap eksekusinya. Proses mengalami beragam state (ready, running, blocked) selama siklus hidupnya sebelum berakhir dan keluar dari sistem. Sistem operasi harus dapat mengetahui state masing-masing proses dan merekam semua perubahan yang terjadi secara dinamis. Informasi tersebut digunakan untuk kegiatan penjadwalan dan memutuskan alokasi sumber daya.

Status (state) proses

Sebuah proses akan mengalami serangkaian state diskrit. Beragam kejadian dapat menyebabkan perubahan state proses. Tiga state tersebut adalah sebagai berikut :

  • Running, Proses sedang mengeksekusi instruksi proses
  • Ready, Proses   siap   dieksekusi,   tetapi   proses   tidak tersedia untuk eksekusi proses ini.
  • Blocked, Proses   menunggu   kejadian   untuk   melengkapi tugasnya

Proses yang baru diciptakan akan mempunyai state ready.

  • Proses berstate running menjadi blocked, karena sumbar daya yang diminta belum tersedia atau meminta layanan perangkat masukan/keluaran, sehingga menunggu kejadian muncul. Proses menunggu kejadian alokasi sumber daya atau selesainya layanan perangkat masukan/keluaran (event wait).
  • Proses berstate running menjadi ready, karena penjadwal memutuskan eksekusi proses lain karena jatah waktu untuk proses tersebut telah habis (time out).
  • Proses berstate blocked menjadi ready saat sumber daya yang diminta/ diperlukan telah tersedia atau layanan perangkat masukan/keluaran selesai (event occurs).
  • Proses berstate ready menjadi running, karena penjadwal memutuskan penggunaan pemroses utnuk proses itu karena proses yang saat itu running berubah statenya (menjadi ready atau blocked) atau telah menyelesaikan sehingga disingkirkan dari sistem. Proses menjadi mendapatkan jatah pemroses.

Diagram state lanjut

Penundaan (suspend) adalah operasi penting dan telah diterapkan dengan beragam cara. Penundaan biasanya berlangsung singkat. Penundaan sering dilakukan sistem untuk memindahkan proses-proses tertentu guna mereduksi beban sistem selama beban puncak.

Proses yang ditunda (suspended blocked) tidak berlanjut sampai proses lain meresume. Untuk jangka panjang, sumber daya-sumber daya proses dibebaskan (dilucuti). Keputusan membebaskan sumber daya-sumber daya bergantung sifat masing-masing sumber daya. Memori utama seharusnya segera dibebaskan begitu proses tertunda agar dapat dimanfaatkan proses lain. Resuming (pengaktifan kembali) proses, yaitu menjalankan proses dari titik (instruksi) dimana proses ditunda.

Operasi suspend dan resume penting, sebab :

  • Jika sistem berfungsi secara buruk dan mungkin gagal maka proses-proses
    dapat disuspend agar diresume setelah masalah diselesaikan.Contoh : ada proses pencetakan, bila tiba-tiba kerta habis maka proses disuspend. Setelah kertas dimasukkan kembali, proses pun dapat diresume.
  • Pemakai yang ragu/khawatir mengenai hasil prose dapat mensuspend proses (bukan membuang (abort) proses). Saat pemakai yakin proses akan berfungsi secara benar maka dapat me-resume (melanjutkan kembali di instruksi saat disuspend) proses yang disuspend.
  • Sebagai tanggapan terhadap fluktuasi jangka pendek beban sistem, beberapa proses dapat disuspend dan diresume saat beban kembali ke tingkat normal.

Dua state baru dimasukkan sehingga membentuk diagram 5 state, yaitu :

  • Suspended ready
  • Suspended blocked

Penundaan dapat diinisialisasi oleh proses itu sendiri atau proses lain.

  • Pada sistem monoprocessor, proses running dapat mensuspend dirinya sendiri karena tak ada proses lain yang juga running yang dapat memerintahkan suspend.
  • Pada sistem multiprocessor, proses running dapat disuspend proses running lain pada pemroses berbeda. Proses ready hanya dapat di suspend oleh proses lain.

Pada proses blocked terdapat transisi menjadi suspended blocked. Pilihan ini dirasa aneh. Apakah tidak cukup menunggu selesainya operasi masukan/keluaran atau kejadian yang membuat proses ready atau suspended ready?. Bukankah state blocked, ready blocked, suspended blocked sama-sama tidak mendapat jatah waktu pemroses ?. Kenapa dibedakan ?.

Alasannya, karena penyelesaian operasi masukan/keluaran bagi proses blocked mungkin tak pernah terjadi atau dalam waktu tak terdefinisikan sehingga lebih baik disuspend agar sumber daya-sumber daya yang dialokasikan untuk proses tersebut dapat digunakan proses-proses lain. Untuk kondisi ini, lebih baik sumber daya-sumber daya yang dipegang proses yang berkondisi seperti ini dipakai proses-proses lain. Proses blocked disuspend sistem atau secara manual menjadi suspended blocked.

Bila akhirnya operasi masukan/keluaran ­berakhir maka segera proses suspended blocked mengalami transisi. Karena resume dan suspend mempunyai prioritas tinggi maka transisi segera dilakukan. Suspend dan resume dapat digunakan untuk menyeimbangkan beban sistem saat mengalami lonjakan di atas normal.

Program Control Block (PCB)

Struktur data PCB menyimpan informasi lengkap mengenai proses sehingga dapat terjadi siklus hidup proses. Sistem operasi memerlukan banyak informasi mengenai proses guna pengelolaan proses. Informasi ini berada di PCB. Sistem berbeda akan mengorganisasikan secara berbeda.

Informasi dalam PCB :

Informasi identifikasi proses

Informasi ini berkaitan dengan identitas proses yang berkaitan dengan tabel lainnya. Informasi tersebut meliputi :

  • Identifier proses
  • Identifier proses yang menciptakan
  • Identifier pemakai

Informasi status pemroses

Informasi tentang isi register-register pemroses. Saat proses berstatus running, informasi tersebut berada diregister-register. Ketika proses diinterupsi, semua informasi   register   harus   disimpan   agar   dapat   dikembalikan   saat   proses

dieksekusi kembali. Jumlah dan jenis register yang terlibat tergantung arsitektur komputer. Informasi status terdiri dari :

  • Register-register yang terlihat pemakai, adalah register-register yang dapat ditunjuk instruksi bahasa assembly untuk diproses pemroses.
  • Register-register kendali dan status, Adalah register-register yang digunakan untuk mengendalikan operasi pemroses.
  • Pointer stack, tiap proses mempunyai satu atau lebih stack, yang digunakan untuk parameter atau alamat prosedur pemanggil dan system call. Pointer stack menunjukkan posisi paling atas dari stack.

Informasi kendali proses

Informasi kendali proses adalah informasi lain yang diperlukan sistem operasi untuk mengendalikan dan koordinasi beragam proses aktif. Informasi kendali terdiri dari :

  • Informasi penjadwalan dan status, Informasi-informasi yang digunakan untuk menjalankan fungsi penjadwalan, antara lain :
    • Status proses, Mendefinisikan keadaan/status proses (running, ready, blocked)
    • Prioritas, Menjelaskan prioritas proses.
    • Informasi berkaitan dengan penjadwalan, Berkaitan dengan informasi penjadwalan, seperti lama menunggu, lama proses terakhir dieksekusi.
    • Kejadian, Identitas kejadian yang ditunggu proses.
  • Penstrukturan data, satu proses dapat dikaitkan dengan proses lain dalam satu antrian atau ring, atau struktur lainnya. PCB harus memiliki pointer untuk mendukung struktur ini.
  • Komuikasi antar proses, beragam  flag,  sinyal  dan  pesan  dapat  diasosiasikan  dengan  komunikasi antara dua proses yang terpisah.
  • Manajemen memori Bagian yang berisi pointer ke tabel segmen atau page yang menyatakan memori maya (virtual memory) proses.
  • Kepemilikan dan utilisasi sumber daya, sumber daya yang dikendalikan proses harus diberi tanda, misalnya :

Informasi ini diperlukan oleh penjadwal.

Struktur citra proses digambarkan berurutan di satu ruang alamat. Implementasi penempatan citra proses yang sesungguhnya bergantung skema manajemen memori yang digunakan dan organisasi struktur kendali sistem operasi.

Operasi-operasi pada proses

Sistem operasi dalam mengelola proses dapat melakukan operasi-operasi terhadap proses. Operasi tersebut adalah :

  • Penciptaan proses
  • Penghancuran/terminasi proses
  • Penundaan proses
  • Pelanjutan kembali proses
  • Pengubahan prioritas proses
  • Memblok proses
  • Membangunkan proses
  • Menjadwalkan proses
  • Memungkinkan proses berkomunikasi dengan proses lain

referensi:

http://nurmanto.com/proses-sistem-operasi/

Sistem Operasi Pada Handphone

0

1. Symbian

Sistem operasi yang populer di kalangan para pengguna handphone. Kebanyakan handphone nokia menggunakan symbian sebagai sistem operasi. Versinya antara lain S40, S60, S9.

Sistem operasi Symbian mirip dengan sistem operasi desktop. Symbian OS mampu melakukan operasi secara multithreading, multitasking dan pengamanan terhadap memori. Dan semua pemrograman pada Symbian dilakukan secara event-based, artinya hardware CPU menjadi tidak aktif ketika tidak ada inputan berupa aktivitas tertentu.

Symbian OS sendiri bukanlah software yang sifatnya open source secara penuh karena meskipun terdapat ketersedian API dan dokumentasinya, yang banyak membantu pihak pengembang aplikasi untuk membuat software yang berjalan di atas sistem operasi ini, dipublikasi untuk umum namun tidak untuk source code sendiri.

 

2. Microsoft Windows Mobile

Sistem operasi yang dikeluarkan oleh Microsoft untuk smartphone dan PDA. Tampilannya hampir sama dengan Windows pada komputer.

 

3. Palm OS

Sistem operasi yang digunakan pada PDA keluaran PALM. Sebagai produsen sistem operasi Palm OS yang tersohor dan produsen PDA-Phone Treo yang populer, tampak terlihat masa depan yang cerah untuk perusahaan yang bermarkas di California, Amerika Serikat tersebut. Betapa tidak? Penjualan Treo di Amerika Serikat langsung menempati posisi nomor 1 ketika Treo 650 diluncurkan akhir tahun 2004. Ketenaran Treo disebabkan oleh dua alasan utama. Pertama, user interfacenya sangat mudah digunakan. Anda hanya memerlukan tidak lebih dari lima menit untuk menggunakan fungsi-fungsi utama dari PDA-Phone tersebut. Alasan kemudahan penggunaan tersebut adalah sudah tersedianya tomboltombol shortcut untuk fungsi organizer serta fungsi komunikasi. Terlebih lagi, Anda dapat melakukan navigasi dan menggunakan hampir semua aplikasi bawaan Treo tanpa harus menyentuh layar sentuhnya, cukup menggunakan keypad saja.Kedua, berkat penggunaan Palm OS yang sudah lama beredar, tersedia ratusan, bahkan ribuan aplikasi. Tentu tidak semuanya langsung kompatibel dengan Treo model terbaru (dahulu, Treo 650). Akan tetapi, berkat ketenaran dan kesuksesan penjualan Treo, perusahaan pembuat aplikasi untuk Palm OS dengan cepat melakukan update untuk software mereka sehingga dapat digunakan pada model Treo terbaru.Bila memperhatikan dua alasan tersebut, Anda akan mendapatkan benang merah antara keduanya, yaitu Palm OS. Ya, kemudahan penggunaan, user interface yang ramah, dan aplikasi bawaan yang tepat guna pada Treo semuanya berkat penggunaan sistem operasi legendaris dari Palm tersebut.Namun, semua itu dapat dibilang cerita lama karena seka-rang kenyataan berkata lain. Pada kuartal empat tahun 2007 lalu, Palm mencatat kerugian sebesar 840.000 dollar AS dibandingkan keuntungan 16.500.000 dollar AS pada kuartal yang sama tahun 2006. Meskipun keuntungan perdagangan dapat naik dan turun dalam waktu satu tahun, kehilangan keuntungan berjuta-juta dollar dan bahkan merugi hingga satu juta dollar merupakan pertanda Palm mengalami kehilangan pangsa pasar yang cukup signifikan. Terlebih lagi, Treo kini juga menggunakan sistem operasi Windows Mobile. Padahal sistem operasi tersebut dulunya merupakan musuh bebuyutan Palm OS. Apakah kejatuhan Palm OS sudah dekat?Meskipun dibutuhkan studi yang lebih lanjut untuk mengetahui korelasinya, kerugian Palm merupakan sebuah berkah tersendiri untuk dua kompetitornya yang mencatat rekor penju-alan terbesar tahun lalu, yaitu Research In Motion (RIM) sebagai produsen Blackberry dan Apple dengan produk iPhonenya. Untuk perbandingan penjualan, pada kuartal kedua tahun lalu, RIM menjual 2,4 juta produk Blackberry.

 

4. Android

Sistem operasi untuk handphone yang akan diluncurkan Google. Android berbasis Linux sehingga termasuk open source.

Android menyediakan platform terbuka bagi para pengembang buat menciptakan aplikasi mereka sendiri untuk digunakan oleh bermacam peranti bergerak. Awalnya, Google Inc. membeli Android Inc., pendatang baru yang membuat peranti lunak untuk ponsel. Kemudian untuk mengembangkan Android, dibentuklah Open Handset Alliance, konsorsium dari 34 perusahaan peranti keras, peranti lunak, dan telekomunikasi, termasuk Google, HTC, Intel, Motorola, Qualcomm, T-Mobile, dan Nvidia. 

 

sumber: 

http://uvebana.com/operating-sytem-symbian/

http://hendry777.wordpress.com/2010/05/26/palm-os/

http://away.web.id/mengenal-sistem-operasi-android/

http://rudi.blog.uns.ac.id/2010/02/15/macam-macam-sistem-operasi-untuk-komputer-dan-handphonepda/

Sejarah Sistem Operasi

0

Sejarah Perkembangan Sistem Operasi
Arsitektur komputer tradisional terdiri dari empat komponen utama yaitu “Prosesor”, “Memori Penyimpanan”, “Masukan” (Input), dan “Keluaran” (Output). 
Model tradisional tersebut sering dikenal dengan nama arsitektur von Neumann. Pada saat awal, komputer berukuran sangat besar sehingga komponen-komponennya dapat memenuhi sebuah ruangan yang sangat besar. Sang pengguna — menjadi programmer yang sekali gus merangkap menjadi menjadi operator komputer — juga bekerja di dalam ruang komputer tersebut.
Perkembangan sistem operasi dipengaruhi oleh perkembangan hardware. Sistem operasi mulai dikembangkan sejak ±40 tahun lalu, yaitu:

1. Generasi ke-nol (1940). 

  • Komponen utama tabung hampa udara;
  • Sistem komputer belum menggunakan sistem operasi;
  • Sistem operasi komputer dilakukan secara manual melalui plugboard, dan hanya bisa digunakan untuk menghitung (+,-, dan *).

2. Generasi pertama (1950). 

  • Komponen utama transistor;
  • Sistem operasi berfungsi terutama sebagai pengatur pergantian antar job agar waktu instalasi job berikutnya lebih efisien. Dalam masa ini muncul konsep batch system (semua job sejenis dikumpulkan jadi satu);
  • Input pemakai punch card.

3. Generasi kedua (1960). 

  • Komponen utama IC;
  • Berkembang konsep-konsep:
  • Multiprogramming, satu prosesor mengerjakan banyak program yang ada di memori utama;
  • Multiprosesing, satu job dikerjakan oleh banyak prosesor berguna untuk meningkatkan utilitas;
  • Spooling Simultaneous Peripheral Operation On Line, bertindak sebagai buffer (penyangga) saja, dan mampu menerima pesanan meskipun belum akan dikerjakan;
  • Device Indipendence, masing-masing komponen memiliki sifat yang saling berbeda (misal: tiap-tiap printer memiliki driver);
  • Time Sharing atau Multitasking, sistem bagi waktu yang diberikan oleh CPU terhadap berbagai job yang sedang dijalankan.
  • Real-time system, berguna sebagai kontrol bagi mesin-mesin.

4. Generasi ketiga (1970) 

  • Komponen utama VLSI (Very Large Scale Integrated Circuit);
  • Ditandai dengan berkembangnya konsep general purpose system, sehingga sistem operasi menjadi sangat kompleks, mahal dan sulit untuk dipelajari;

5. Generasi keempat (pertengahan 1970-an hingga sekarang). 

  • PC makin populer;
  • Ditandai dengan berkembangnya sistem operasi untuk jaringan komputer dengan tujuan: data sharing, hardware sharing, dan program sharing;
  • User interface semakin user friendly tanpa harus mengorbankan unjuk kerja.

Perjalanan Sistem operasi DOS

1980

  • QDOS  : Tim Paterson dari Seattle Computer menulis QDOS yang dibuat dari OS terkenal pada masa itu, CP/M. QDOS (Quick and Dirty Operating System) dipasarkan oleh Seatle Computer dengan nama 86-DOS karena dirancang untuk prosesor Intel 8086.
  • Microsoft : Bill Gates dari Microsoft membeli lisensi QDOS dan menjualnya ke berbagai perusahaan komputer.

1981

  • PC  DOS : IBM meluncurkan PC  DOS yang dibeli dari Microsoft untuk komputernya yang berbasis prosesor Intel 8086.
  • MS  DOS : Microsoft menggunakan nama MS  DOS untuk OS ini jika dijual oleh perusahaan diluar IBM.

1983

  • MS  DOS 2.0 : Versi 2.0 dari MS­ DOS diluncurkan pada komputer PC XT.

1984

  • System 1.0 : Apple meluncurkan Macintosh dengan OS yang diturunkan dari BSD UNIX. System 1.0 merupakan sistem operasi pertama yang telah berbasis grafis dan menggunakan mouse.
  • MS DOS 3.0 : Microsoft meluncurkan MS DOS 3.0 untuk PC AT yang menggunakan chip Intel 80286 dan yang mulai mendukung penggunaan hard disk lebih dari 10 MB.
  • MS-DOS 3.1 : Microsoft meluncurkan MS-DOS 3.1 yang memberikan dukungan untuk jaringan.

1985

  • MS Windows 1.0 : Microsoft memperkenalkan MS Windows, sistem operasi yang telah menyediakan  lingkungan berbasis grafis (GUI) dan kemampuan multitasking. Sayangnya sistem operasi ini sangat buruk performanya dan tidak mampu menyamai kesuksesan Apple.
  • Novell Netware : Novell meluncurkan sistem operasi berbasis jaringan Netware 86 yang dibuat untuk prosesor Intel 8086.

1986

  • MS-DOS 3.2 : Microsoft meluncurkan MS-DOS 3.2 yang menambahkan dukungan untuk floppy  3.5 inch 720 KB.

1987

  • OS/2 : IBM memperkenalkan OS/2 yang telah berbasis grafis, sebagai calon pengganti IBM PC DOS.
  • MS  DOS 3.3 : Microsoft meluncurkan MS  DOS 3.3 yang merupakan versi paling populer dari MS DOS.
  • Windows 2.0 : Windows versi 2.0 diperkenalkan.
  • MINIX : Andrew S. Tanenbaum mengembangkan Minix, sistem operasi berbasis Unix yang-ditujukan-untuk pendidikan. MINIX nantinya menginspirasi pembuatan Linux.

1988

  • MS  DOS 4.0 : Microsoft mengeluarkan MS DOS 4.0 dengan suasana grafis.
  • WWW : Proposal World Wide Web (WWW) oleh Tim Berners Lee.

1989

  • NetWare/386 (juga dikenal sebagai versi 3) diluncurkan oleh Novell untuk prosesor Intel 80386.

1990

  • Perpisahan : Dua perusahaan raksasa berpisah, IBM berjalan dengan OS/2 dan Microsoft berkonsentrasi pada Windows.
  • Windows 3.0 : Microsoft meluncurkan Windows versi 3.0 yang mendapat sambutan cukup baik.
  • MS Office : Microsoft membundel Word, Excel, dan PowerPoint untuk menyingkirkan saingannya seperti Lotus 1 2 3, Wordstar, Word Perfect dan Quattro.
  • DR DOS : Digital Research memperkenalkan DR DOS 5.0.

1991

  • Linux 0.01 : Mahasiswa Helsinki bernama Linus Torvalds mengembangkan OS berbasis Unix dari sistem operasi Minix yang diberi nama Linux.
  • MS DOS 5.0 : Microsoft meluncurkan MS DOS 5.0 dengan penambahan  fasilitas  full -screen editor,  undelete, unformat dan Qbasic.

1992

  • Windows 3.1 : Microsoft meluncurkan Windows 3.1 dan kemudian Windows  for  Workgroups 3.11 di tahun berikutnya.
  • 386 BSD : OS berbasis Open Source turunan dari BSD Unix didistribusikan oleh Bill Jolitz setelah meninggalkan Berkeley Software Design, Inc (BSDI). 386 BSD nantinya menjadi induk dari proyek Open Source BSD lainnya, seperti NetBSD, FreeBSD, dan OpenBSD.
  • Distro Linux : Linux didistribusikan dalam format distro yang merupakan gabungan dari OS plus program  aplikasi.  Distro  pertama  Linux dikenal sebagai SLS  (Softlanding Linux System).

1993

  • Windows NT : Microsoft meluncurkan Windows NT, OS pertama berbasis grafis tanpa DOS  didalamnya yang direncanakan untuk server jaringan.
  • Web Browser : NCSA memperkenalkan rilis pertama Mosaic, browser web untuk Internet.
  • MS  DOS 6.0 : Microsoft memperkenalkan MS DOS 6.0 Upgrade,  yang  mencakup   program kompresi  harddisk DoubleSpace.
  • Slackware : Patrick Volkerding mendistribusikan Slackware Linux yang menjadi  distro populer pertama di kalangan pengguna Linux.
  • Debian : Ian Murdock dari Free Software Foundation (FSF) membuat OS berbasis Linux dengan nama Debian.
  • MS  DOS 6.2 : Microsoft meluncurkan MS DOS 6.2.
  • NetBSD : Proyek baru OS berbasis Open Source yang dikembangkan dari 386BSD dibuat dengan menggunakan nama NetBSD.
  • FreeBSD : Menyusul NetBSD, satu lagi proyek yang juga dikembangkan dari 386BSD dibuat dengan  nama FreeBSD.

1994

  • Netscape : Internet meraih popularitas besar saat Netscape memperkenalkan Navigator sebagai browser Internet.
  • MS DOS 6.22 : Microsoft meluncurkan MS DOS 6.22  dengan program  kompresi bernama DriveSpace. Ini merupakan versi terakhir dari MS DOS.
  • FreeDOS : Jim Hall, mahasiswa dari Universitas Wisconsin­River Falls  Development  mengembangkan FreeDOS. FreeDOS dibuat  setelah  Microsoft  berniat  menghentikan dukungannya untuk DOS dan menggantikannya dengan Windows 95.
  • SuSE : OS Linux versi Jerman dikembangkan oleh Software und System Entwicklung GmbH (SuSE) dan dibuat dari distro Linux pertama, SLS.
  • Red Hat : Marc Ewing memulai pembuatan distro Red Hat Linux.

1995

  • Windows 95 : Microsoft meluncurkan Windows 95 dengan lagu Start Me Up dari Rolling Stones dan terjual lebih dari 1 juta salinan dalam waktu 4 hari.
  • PC DOS 7 : IBM memperkenalkan PC DOS 7 yang terintegrasi dengan program populer pengkompres data Stacker dari Stac Electronics. Ini merupakan versi terakhir dari IBM PC DOS.
  • Windows CE : Versi pertama Windows CE diperkenalkan ke publik.
  • PalmOS : Palm menjadi populer dengan PalmOS untuk PDA.
  • OpenBSD : Theo de Raadt pencetus NetBSD mengembangkan OpenBSD.

1996

  • Windows NT 4.0 : Microsoft meluncurkan Windows NT versi 4.0

1997

  • Mac OS : Untuk pertama kalinya Apple memperkenalkan penggunaan nama Mac OS pada Mac OS 7.6.

1998

  • Windows 98  : Web browser Internet Explorer menjadi bagian penting dari Windows 98 dan berhasil  menumbangkan dominasi Netscape Navigator.
  • Server Linux : Linux mendapat dukungan dari banyak perusahaan besar, seperti IBM, Sun Microsystem dan Hewlet Packard. Server berbasis Linux mulai banyak dipergunakan menggantikan  server berbasis Windows NT.
  • Google : Search Engine terbaik hadir di Internet dan diketahui menggunakan Linux sebagai  servernya.
  • Japan Goes Linux : TurboLinux diluncurkan di Jepang dan segera menjadi OS favorit di Asia, khususnya di Jepang, China dan Korea.
  • Mandrake : Gael Duval dari Brazil mengembangkan distro Mandrake yang diturunkan dari Red Hat.

1999

  • Support : Hewlett Packard mengumumkan  layanan 24/7 untuk distro Caldera, Turbo Linux, Red Hat dan SuSE.
  • Corel Linux : Corel pembuat program Corel Draw, yang sebelumnya telah menyediakan Word Perfect versi Linux,  ikut membuat OS  berbasis Linux  dengan nama Corel Linux dan yang   nantinya  beralih nama  menjadi  Xandros.

2000

  • Mac OS/X : Mac OS diganti dengan mesin berbasis BSD Unix dengan kernel yang disebut sebagai Mac OS/X.
  • Windows 2000: Microsoft meluncurkan Windows 2000 sebagai penerus Windows NT.
  • Windows Me : Microsoft meluncurkan Windows Me, versi terakhir dari Windows 95.
  • China Goes Linux : Red Flag Linux diluncurkan dari Republik Rakyat China.
  • Microsoft vs IBM : CEO Microsoft Steve Ballmer menyebut Linux sebagai kanker dalam sebuah  interview dengan Chicago Sun­Times. Di lain pihak, CEO IBM Louis Gartsner menyatakan dukungan  pada Linux dengan menginvestasikan $ 1 milyar untuk pengembangan Linux.

2001

  • Windows XP : Microsoft memperkenalkan Windows XP.
  • Lindows: Michael Robertson, pendiri MP3.com, memulai pengembangan Lindows yang diturunkan dari Debian. Nantinya Lindows berganti nama menjadi Linspire karena adanya tuntutan  perubahan nama  oleh  Microsoft.

2002

  • Open Office : Program perkantoran berbasis Open Source diluncurkan oleh Sun Microsystem.
  • OS Lokal : OS buatan anak negeri berbasis Linux mulai bermunculan, diantaranya Trustix Merdeka,  WinBI, RimbaLinux, Komura.

2003

  • Windows 2003 : Microsoft meluncurkan Windows Server 2003.
  • Fedora : Redhat mengumumkan distro Fedora Core sebagai penggantinya. Nantinya ada beberapa distro lokal yang dibuat berbasiskan Fedora, seperti BlankOn 1.0 dan IGOS Nusantara.
  • Novell : Ximian, perusahaan pengembang software berbasis Linux dibeli oleh Novell, begitu juga halnya dengan SuSE yang diakuisisi oleh Novell.
  • LiveCD : Knoppix merupakan distro pertama Linux yang dikembangkan dengan konsep LiveCD yang bisa dipergunakan tanpa  harus diinstal   terlebih  dahulu.   Distro lokal yang dibuat dari Knoppix  adalah Linux Sehat  dan Waroeng IGOS.

2004

  • Ubuntu : Versi pertama Ubuntu diluncurkan dan didistribusikan ke seluruh dunia. Ada beberapa  versi distro yang dikeluarkan, yaitu Ubuntu (berbasis Gnome), Kubuntu (berbasis KDE), Xubuntu (berbasis XFCE), dan Edubuntu (untuk pendidikan).

2005

  • Mandriva : Mandrake bergabung dengan Conectiva dan berganti nama menjadi Mandriva.

2006

  • Unbreakable Linux : Oracle ikut membuat distro berbasis Linux yang diturunkan dari Red Hat Enterprise.
  • CHIPLux : Distro lokal terus bermunculan di tahun ini, bahkan Majalah CHIP yang lebih banyak memberikan pembahasan tentang Windows juga tidak ketinggalan membuat distro Linux dengan nama CHIPLux, yang diturunkan dari distro lokal PC LINUX dari keluarga PCLinuxOS (varian Mandriva). CHIPLux merupakan distro lokal pertama yang didistribusikan dalam format DVD.

2007

  • Vista : Setelah tertunda untuk beberapa lama, Microsoft akhirnya meluncurkan Windows Vista. Windows Vista memperkenalkan fitur 3D Desktop dengan Aero Glass, SideBar, dan Flip 3D. Sayangnya semua keindahan ini harus dibayar mahal dengan kebutuhan spesifikasi komputer yang sangat tinggi.

2008

  • 3D OS : Tidak seperti halnya Vista yang membutuhkan spesifikasi tinggi, 3D Desktop di Linux muncul dengan spesifikasi komputer yang sangat ringan. Era hadirnya teknologi 3D Desktop di Indonesia ditandai dengan hadirnya sistem operasi 3D OS yang dikembangkan oleh PC LINUX. Ada beberapa versi yang disediakan, yaitu versi 3D OS untuk pengguna umum serta versi distro warnet Linux dan game center Linux.

  QUEUEqueues…

0

 

 

QUEUE

queues are a type of container adaptor, specifically designed to operate in a FIFO context (first-in first-out), where elements are inserted into one end of the container and extracted from the other.

queues are implemented as containers adaptors, which are classes that use an encapsulated object of a specific container class as its underlying container, providing a specific set of member functions to access its elements. Elements are pushed into the “back” of the specific container and popped from its “front”.

The underlying container may be one of the standard container class template or some other specifically designed container class. The only requirement is that it supports the following operations:

  • front()
  • back()
  • push_back()
  • pop_front()

Therefore, the standard container class templates deque and list can be used. By default, if no container class is specified for a particular queue class, the standard container class template deque is used.

In their implementation in the C++ Standard Template Library, queues take two template parameters:

 
template < class T, class Container = deque<T> > class queue;

Where the template parameters have the following meanings:

  • T: Type of the elements.
  • Container: Type of the underlying container object used to store and access the elements.

In the reference for the queue member functions, these same names are assumed for the template parameters.

Member functions

(constructor) Construct queue (public member function)
empty Test whether container is empty (public member function)
size Return size (public member function)
front Access next element (public member function)
back Access last element (public member function)
push Insert element (public member function)
pop Delete next element (public member function)
 

 

CONTOH PROGRAM QUEUE

#include <iostream.h>
#include <conio.h>
#define maks 14
#define Que1 3
#define Que2 3

class Queue{
friend ostream& operator<<(ostream&, const Queue&);
public:
Queue();
int penuh(int);
int kosong(int);
void cetak();
void pecah(Queue &, Queue&);
private:
char A[maks];
int banyak;
};
ostream& operator<<(ostream& out, const Queue& s)
{
out<<” isi Queue:”;
for(int i=0; i<s.banyak; i++)
out<<s.A[i]<<” “;
return out;
}

Queue::Queue()
{
banyak=0;
for(int i=0; i<maks; i++)
A[i]=’0′;
}

int Queue::penuh(int s)
{return s==maks?1:0;}

int Queue::kosong(int s)
{return s==0?1:0;}

void Queue::cetak(){
cout<<” Isi Queue:”;
for(int i=0; i<banyak; i++)
cout<<A[i]<<” “;
}

char Queue::enqueue(char x){
if(penuh(banyak)) cout<<“Queue penuh:”;
else if(A[0]==’0′){
A[0]=x;
banyak++;
}
else{
for(int i=banyak; i>=0; i–)
A[i+1]=A[i];
A[0]=x;
banyak++;
}
return banyak;
}
char Queue::dequeue(){
char temp=A[–banyak];
A[banyak]=’0′;
return temp; }

void Queue::pecah(Queue &q1, Queue &q2){
int i;
char a[Que1],b[Que2];
Queue q3;
cout<<“setelah digabung \n”;
for(i=0; i<Que1; i++){
a[i]=q1.dequeue(a[i]);
q3.enqueue(a[i]);
}
for(i=0; i<Que2; i++){
b[i]=q2.dequeue();
q3.enqueue(b[i]);
}
cout<<q3<<endl;
}

int main(){
Queue p,q,r;
char z[3]={1,2,3};
char y[3]={4,5,6};
cout<<“Antrian 1:\n”;
for(int i=Que1-1; i>=0; i–){
p.enqueue(z[i]);
cout<<p<<endl;
}
cout<<“—————————“;
cout<<endl<<endl;
r.pecah(p,q);
cout<<endl;
getch();
}

 

Contoh Program …

0

#include
#include
#include
#include

class element
{
public:
int value;
element* next;
};//class element

class stack
{
public:
int size;
element* current;

stack()
{
size=0;
current=NULL;
}//default constructor

bool push(int,element*);
bool pop();
bool isEmpty();
int getStackSize();
void printStackSize();
void printStackElements(element*);
void printStackMenu();
};

bool stack::push(int ele,element* temp)
{
temp=new element;
if(current==NULL)
{
temp->next=NULL;
}
else
{
temp->next=current;
}
temp->value=ele;
current=temp;
printf(“%d inserted\n\n”,ele);
size++;
return false;
}

bool stack::pop()
{
if(isEmpty())
{
cout<<"\nStack is Empty\n";
return false;
}
else
{
cout<<"\n Element To POP :"<value;
cout<next;
cout<<"\n After POP";
printStackElements(current);
size=size–;
}
return true;
}

bool stack::isEmpty()
{
if(getStackSize()==0)
return true;

return false;
}

int stack::getStackSize()
{
return size;
}//returns size of the stack

void stack::printStackSize()
{
cout<<"\nThe Size of the Stack:"<<size<<"\n";
}//print the stack size

void stack::printStackElements(element* base)
{
element* curr2;
curr2= base;
cout<<"\n—–\n";
cout<<"STACK\n";
cout<<"—–\n";
while(curr2!=NULL)
{
cout<<" |"<value<next;
}
}// print the stack

void stack::printStackMenu()
{
cout<<"Welcome to Stack \n";
cout<<"1.Push an element\n";
cout<<"2.Pop an element\n";
cout<<"3.Display Stack\n";
cout<<"4.Size Of Stack\n";
cout<>Option;
switch(Option)
{
case ‘1’:
cout<>val;
st.push(val,st.current);
break;
case ‘2’:
st.pop();
break;

case ‘3’:
st.printStackElements(st.current);
break;

case ‘4’:
st.printStackSize();

break;
case ‘5’:
exit(0);
break;
}
}
}

Hasil Runnig :

TRIGONOMETRI MENGGUNAKAN C++

0

sorce code:

#include
#include
class trigonometri{
friend ostream& operator<>(istream&, trigonometri&);
public :
trigonometri();
void hitung_cosinus(){hasil1=cos((angka*3,14)/180);}
void hitung_sinus(){hasil2=sin((angka*3,14)/180);}
void hitung_tangen(){hasil3=tan((angka*3,14)/180);}
private :
int angka;
float hasil1;
float hasil2;
float hasil3;
};
trigonometri::trigonometri(){
cout<<”Program mencari trigonometri dari sebuah angka”<>(istream& in, trigonometri& masukan){
cout<>masukan.angka;
return in;
}
ostream& operator<<(ostream& out, const trigonometri& keluaran){
out<<”sudut yang akan dikonversi :”<<keluaran.angka<<endl<<endl;
out<<”dihitung dengan cosinus =”<<keluaran.hasil1<<endl;
out<<”dihitung dengan sinus =”<<keluaran.hasil2<<endl;
out<<”dihitung dengan tangen =”<<keluaran.hasil3<>x;
x.hitung_cosinus();
x.hitung_sinus();
x.hitung_tangen();
cout<<x;
return 0;
}
================== AKHIR DARI SYNTAX =====================
Class di atas bernama trigonometri yang di dalamnya terdapat operator overloading,ini ditandai dengan adanya syntax istream dan ostream,di atas juga terdapat header untuk library math yang di dalamnya terdapat operasi-operasi pada matematika,seperti sinus,cosinus,tangen,dll.Serta terdapat fungsi yang rumusnya terdapat di library math.h,yang rumusnya adalah cos((angka*3,14)/180)Pada saat memasukkan atau menginputkan data terdapat nilai balik yaitu in,sama halnya pada waktu mengeluarkan yang nilai baliknya out.
Pada saat pemanggilan di fungsi main,terdapat objek x,yang berfungsi mensubtitusikan nama kelasnya,dan pada waktu memanggil fungsi harus disertai dengan objeknya,seperti x.hitung_cosinus();.Oleh karena fungsi di atas tidak mempunyai nilai balik maka pada akhir main return 0;.

Penjumlahan Dua Matriks 1

0

Penjumlahan Dua Matriks 1
Bentuk umum matriks:
Matriks adalah susunan segi empat siku-siku dari bilangan yang diatur berdasarkan baris dan kolom/lajur. Bilangan- bilangan dalam susunan tersebut dinamakan entri dalam matriks atau disebut juga elemen atau unsur.

Source Code

#include
#include

void main() {
int i, j; //Definisikan i, j sebagai Index
int n, m; //Definisikan n, m sebagai Ordo
int M1[10][10]; //Definisikan M1 sebagai Matriks 1
int M2[10][10]; //Definisikan M2 sebagai Matriks 2
int M3[10][10]; //Definisikan M3 sebagai Matriks 3 (Hasil)

//Init proses
printf(“Masukan jumlah ordo : “);
scanf(“%i,%i”, &n, &m);
//Untuk Matriks 1
for(i = 0; i < n; i++) { //Perulangan untuk proses array dimensi 1
for(j = 0; j < m; j++) { //Perulangan untuk proses array dimensi 2
printf("Masukan elemen M1[%i,%i] : ", i + 1, j + 1);
scanf("%i", &M1[i][j]); //Baca inputan untuk tiap elemen array
}
}
//Untuk Matriks 2
for(i = 0; i < n; i++) { //Perulangan untuk proses array dimensi 1
for(j = 0; j < m; j++) { //Perulangan untuk proses array dimensi 2
printf("Masukan elemen M2[%i,%i] : ", i + 1, j + 1);
scanf("%i", &M2[i][j]); //Baca inputan untuk tiap elemen array
}
}
//Proses penjumlahan
for(i = 0; i < n; i++) { //Perulangan untuk proses array dimensi 1
for(j = 0; j < m; j++) { //Perulangan untuk proses array dimensi 2
M3[i][j] = M1[i][j] + M2[i][j]; //Jumlahkan tiap-tiap elemen
}
}
printf("Tekan Enter untuk lihat hasil\n");
getch(); //Tahan tampilan
//Tampilkan Hasil
clrscr(); //Bersihkan layar
printf("Hasil penjumlahan 2 matriks adalah : \n");
for(i = 0; i < n; i++) { //Perulangan untuk proses array dimensi 1
for(j = 0; j < m; j++) { //Perulangan untuk proses array dimensi 2
printf("Hasil elemen [%i,%i] : %i\n", i + 1, j + 1, M3[i][j]);
}
}
getch(); //Tahan tampilan
}

ARRAY 1 DIMENSI

0

* Array satu dimensi

Merupakan sebuah variabel yang menyimpan sekumpulan data yang memiliki tipe sama dan elemen yang akan diakses hanya melalui 1 indeks atau subskrip.

CONTOH PROGRAM array 1 dimensi

Program coba_array;
Uses wincrt;
Var
i,jum_data:integer;
nama:array [1..20] of string;
Begin
writeln(‘MENCETAK NAMA MAHASISWA DENGAN ARRAY’);
writeln;
write(‘masukkan jumlah data : ‘);readln(jum_data);
for i:=1 to jum_data do
Begin
write(‘masukkan nama ke ‘,i,’ : ‘);readln(nama[i]);
end;
writeln;
writeln(‘No Nama’);
writeln(‘———————-’);
for i:=1 to jum_data do
writeln(i:5,nama[i]:15);
End.

Contoh program array 2 dimensi

Program coba_array2_dimensi;
Uses wincrt;
const maks=3;
Var
i,j:integer;
matriks:array [1..maks,1..maks] of integer;
Begin
writeln(‘MENGISI MATRIKS A’);
writeln;
for i:=1 to maks do
for j:=1 to maks do begin
write(‘A [‘,i,’,’,j,’] : ‘);readln(matriks[i,j]);
end;writeln;
writeln(‘ISI MATRIKS A’);
writeln(‘————-’);
for i:=1 to maks do
for j:=1 to maks do begin
if j=maks then writeln(matriks[i,j])
Else write(matriks[i,j],’ ‘);
end;
End.

SEARCHING dan SORTING

0

1. Pengertian Searching
Pencarian (Searching) merupakan proses yang fundamental dalam pemrograman, guna menemukan data (nilai) tertentu di dalam sekumpulan data yang bertipe sama. Fungsi pencarian itu sendiri adalah untuk memvalidasi (mencocokkan) data.

2. Metode pencarian dibagi menjadi 2, yaitu:
1. Metode Pencarian Beruntun
Konsep yang digunakan dalam metode ini adalah membandingkan data-data yang ada dalam kumpulan tersebut, mulai dari elemen pertama sampai elemen ditemukan, atau sampai elemen terakhir.
2. Metode Pencarian Bagi Dua (Binary Search)
Metode ini diterapkan pada sekumpulan data yang sudah terurut (menaik atau menurun). Metode ini lebih cepat dibandingkan metode pencarian beruntun. Data yang sudah terurut menjadi syarat mutlak untuk menggunakan metode ini.
Konsep dasar metode ini adalah membagi 2 jumlah elemennya, dan menentukan apakah data yang berada pada elemen paling tengah bernilai sama, lebih dari atau kurang dari nilai data yang akan dicari. Jika bernilai sama, maka langsung data yang dicari ditemukan. Jika data di elemen terurut naik, maka jika data yang berada di tengah kurang dari data yang dicari, maka pencarian selanjutnya berkisar di elemen tengah ke kanan, dan begitu seterusnya sampai ketemu atau tidak sama sekali. Dan sebaliknya untuk nilai data yang berada di tengah lebih dari data yang dicari, maka pencarian selanjutnya berkisar di elemen tengah ke kiri, dan begitu seterusnya sampai ketemu atau tidak sama sekali. Dan demikian sebaliknya untuk data yang terurut menurun. Dalam hal ini tentukan indeks paling awal dan indeks paling akhir, untuk membagi 2 elemen tersebut.
Indeks awal = i, dimana nilai i, pada awalnya bernilai 0;
Indeks akhir = j, dimana nilai j, pada awalnya bernilai sama dengan jumlah elemen.

contoh script 1:
//#include
#include
#include
//#pragma hdrstop
//#pragma argsused
int main(int argc , char* argv[])
{
int x,i,k;
int l[10]={20,15,22,30,60,28,17,18,21,22};
printf(“Data yang dicari = “); scanf(“%d”,&x);
k=0;
for(i=0;i<9;i++)
{
if(l[i]==x)
{
printf("Data ditemukan di elemen %d\n",i);
k++;
}
}
if(k==0)
{
printf("Data tidak ditemukan\n");
}
printf("Jumlah data yang ditemukan = %d",k);
getch();
return 0;
}
contoh script 2:
//#include
//#include hrdstop
#include
#include

//#pragma argsused
int main(int argc, char* argv[])
{
int X,i,j,k,p;
int L[10]={12,14,15,17,23,25,45,67,68,70};

/*Menentukan apakah terurut menaik atau menurun*/
/*Variabel p digunakan untuk kode, apakah menaik atau menurun*/
/*Jika p=0, maka data terurut menaik*/
/*Jika p=1, maka data terurut menurun*/

if (L[0]<L[9])
{
printf("Data terurut menarik \n");
p=0;
}
else
{
printf("Data terurut menurun \n");
p=1;
}

/*input data X yang akan dicari*/

printf("Data yang dicari="); scanf("%d",&X);

/*Penentuan indeks awal dan akhir semula*/
i=0;
j=9;

/*proses perulangan untuk menentukan nilai tengah k */

do
{
k=(i+j)/2;
if (p==0) //jika data terurut menaik
{
if (L[k]==X)
{
printf ("Data ditemukan di elemen %d",k);
getch();
return 0; //langsung keluar program
}
else if(L[k]X)
{
i=k;
}
else
{
j=k;
}
}
}
while(k!=0); //sampai nilai k=0, iterasi berakhir
printf(“data tida ditemukan!!”);
getch();
return 0;
}