Tools yang digunakan

VirtualBox untuk mensimulasikan OS:
dapat diunduh di [[https://projects.ui.ac.id/attachments/download/208/VirtualBox-3.0.4-50677-Win.exe]] (untuk Windows)
Untuk sistem operasi GNU/Linux, MacOS, FreeBSD silahkan ikuti aliran kepercayaan masing-masing

Forum diskusi dapat ditemukan di:
[[https://kode.poss.or.id/projects/prima-kernel/boards]]

Repositori berkas dapat ditemukan di:
[[https://kode.poss.or.id/projects/prima-kernel/repository]]

Apa itu bilangan prima?

Dalam matematika, bilangan prima adalah bilangan asli yang lebih besar dari 1, yang faktor pembaginya adalah 1 dan bilangan itu sendiri. 2 dan 3 adalah bilangan prima. 4 bukan bilangan prima karena 4 bisa dibagi 2. Sepuluh bilangan prima yang pertama adalah 2, 3, 5, 7, 11, 13, 17, 19, 23 dan 29.

Jika suatu bilangan yang lebih besar dari satu bukan bilangan prima, maka bilangan itu disebut bilangan komposit. Cara paling sederhana untuk menentukan bilangan prima yang lebih kecil dari bilangan tertentu adalah dengan menggunakan algoritma sieve of Eratosthenes.

Secara matematis, tidak ada "bilangan prima yang terbesar", karena jumlah bilangan prima adalah tak terhingga. Bilangan prima terbesar yang diketahui per Agustus 2007 adalah 2^(32.582.657) ? 1. Bilangan ini mempunyai 9.808.358 digit dan merupakan bilangan prima Mersenne yang ke-44. M32582657 (demikian notasi penulisan bilangan prima Mersenne ke-44) ditemukan oleh Curtis Cooper dan Steven Boone pada 4 September 2006 yang merupakan profesor-profesor dari University of Central Missouri bekerja sama dengan puluhan ribu anggota lainnya dari proyek GIMPS.

Sumber:[[http://id.wikipedia.org/wiki/Bilangan_prima]]

Implementasi prima in kernel

Prime Call ini merupakan fungsi system call yang dapat mengembalikan bilangan prima ke-sekian.

Bilangan prima merupakan bilangan yang tidak habis dibagi bilangan lain kecuali dirinya sendiri dan bilangan 1.

Adanya prime call di dalam system call kernel ini diharapkan dapat mempermudah programmer dalam melakukan programming.
Mengingat juga penggunaan bilangan prima banyak digunakan untuk kebutuhan enkripsi, diharapkan system call ini dapat dikembangkan menjadi program enkripsi yang canggih.

Fungsi system call prima ini terbagi menjadi dua bagian:
1. fungsi bisa mengenerate bilangan prima ke-n dari input yang dimasukkan.

  • menggunakan algoritma sieve of eratosthenes
  • keunggulan algoritma ini adalah memiliki runtime yang cepat O(n*log(n)*log(log(n)))
  • kelemahan algoritma ini adalah memiliki konsumsi memory yang besar O(n), misal : untuk bilangan prima yang berkisar antara 5000000, maka n berkisar antara 5000000
    ex :
    prime_call(prima_ke_n)
    prime_call(13) -> return 41

2. fungsi bisa mengenerate bilangan prima dari range yang ditentukan.

  • menggunakan algoritma extended sieve of eratosthenes
  • keunggulan algoritma ini adalah memiliki runtime yang sangat cepat, yaitu kurang dari O(n*log(n)*log(log(n)))
  • kelemahan agloritma ini juga terletak pada memory, jika rangenya terlalu besar, maka program akan kewalahan. O(n)
    ex :
    prime_call(batas_awal, batas_akhir)
    prime_call(27800, 27900) -> return [27803, 27809, 27817, 27823, 27827, 27847, 27851, 27883, 27893]