Dukungan processor untuk Virtual Machine

Seluruh prosesor mendukung untuk menjalankan Virtual Machine (VM). Dan seluruh VM tersebut memakai prosesor virtual. Ada juga orang berkeinginan agar VM memakai resource prosesor secara langsung. Dan ini membutuhkan teknologi VM yang disebut dengan teknologi VT-x (untuk intel) dan AMD-V (untuk AMD). Salah satu operating system yang membutuhkan teknologi seperti ini adalah OpenBSD (UNIX), tanpa itu dia tidak bisa bekerja maksimal. OpenBSD adalah salah satu operating system dengan motto “Secure by default”. Jadi VT-x/AMD-V digunakannya untuk memaksimalkan mottonya tersebut.
 

Read more

Input Output Java Console

Selama ini Java selalu GUI. Kali coba buat Java dengan tampilan text mode. Java menggunakan standard input output menggunakan pustaka System.*, System.in untuk input, dan System.out untuk output. Mari kita lihat contoh:

package javaconsole;

import java.util.Scanner;

/**
 *
 * @author dayat
 */
public class Main {

    /**
     * @param args the command line arguments
     */

    void input(){
        System.out.print("Siapakah nama Anda: ");
        String namaAnda = new Scanner(System.in).nextLine();
        System.out.print("Halo '"+namaAnda+"' semoga hari Anda menyenangkan");
    }

    public static void main(String[] args) {
        Main mainProg = new Main();
        mainProg.input();
    }

}

Jika ditulis dengan pascal kira-kira:

program textmode;

var
	NamaAnda: string;
begin
	write('Siapakah nama Anda: ');
	readln(NamaAnda);
	writeln('Halo ' + NamaAnda + ' semoga hari Anda menyenangkan');
end.

Ternyata dengan pascal lebih singkat ya. Lalu coba kita lihat dengan Python:

NamaAnda = raw_input("Siapakah nama Anda: ")
print "Halo '" + NamaAnda + "' semoga hari Anda menyenangkan"

Semakin singkat saja dengan python.

Pada dasarnya setiap peralatan pemrograman komputer memiliki karakteristiknya masing-masing, ada kelebihan dan kekurangan. Kadang suatu permasalahan lebih cepat diselesaikan dengan bahasa A, kadang pula masalah yang lain dapat dipecahkan dengan mudah dengan bahasa B.

Dukungan Unicode pada FreePascal

Pemecahannya semua tipe data PChar/PAnsiChar pada proyek Delphi 2006 atau FreePascal diganti dengan PWideChar.

library libtest;

function pesan(data: PWideChar): PWideChar; stdcall; export
begin
  pesan:=data;
end;

exports
  pesan;

begin
end.

Jadi penggunaan Unicode dibawah versi Delphi 2010 harus memakai PWideChar. Ini juga berlaku pada FreePascal. Mungkin saja suatu saat FreePascal akan mengikuti Delphi 2010 mengubah PChar dari ANSI menjadi UNICODE. Tapi penulis lebih suka PChar tetap menjadi dirinya sendiri, dan biarlah pekerjaan UNICODE diserahkan kepada PWideChar. Sebab akan merusak kompatibiltas kode program yang dibuat dengan versi terdahulu.

Script for building FreePascal and Lazarus for arm processor & WinCE OS

Sometime I will build my freepascal and lazarus that supported by arm processor and WinCE OS. So now I will create a batch file for automation build. Every I use freepascal and lazarus newly, just run this batch script. This batch script running only in Win32 environment.

To run the script just type
PrepareLazarusForWinCE.bat LocationLazarusSource
Example:
PrepareLazarusForWinCE.bat C:\Lazarus

Before we use the script, we must set some variables needed.

SET ARMBINUTILS=FillTheLocationWhereArmBinUtilsInstalled
SET FPCDIR=FillTheLocationWhereFreePascalInstalled
SET FPCSRC=FillTheLocationWhereFreePascalSourceInstalled

Example:

C:\Windows\system32>SET ArmBinUtils=c:\opt\App\binutils\arm
C:\Windows\system32>set FPCDIR=c:\opt\app\FPC\2.2.4
C:\Windows\system32>set FPCSRC=c:\opt\src\fpc-2.2.4
C:\Windows\system32>\Users\dayat\Downloads\FreePascal\Lazarus\PrepareLazarusForWinCE.bat c:\opt\app\lazarus

Read more

Lazarus untuk WinCE

Lazarus adalah IDE FreePascal yang dapat digunakan untuk mempermudah pembuatan perangkat lunak GUI, termasuk untuk Windows Mobile atau WinCE.

Untuk mempersiapkan agar lazarus dapat menghasilkan file program untuk WinCE:

  1. Pastikan compiler arm-wince dan Read more

FreePascal untuk WinCE processor arm

Kita dapat membuat aplikasi pada Windows Mobile menggunakan freepascal dengan arsitektur WinCE dengan processor arm. Sebelumnya kita harus mempersiapkan terlebih dahulu:

Persiapan cross binutils

Download terlebih dahulu di ftp://ftp.freepascal.org/pub/fpc/contrib/cross/ cari arm-wince-binutils.zip. Extract ke suatu direktori, contohnya di C:\opt\App\binutils\arm

Read more

IIF function in PostgreSQL

Truly, this function not exists in PostgreSQL. But we can to create this by a function defined by you. Try to Execute this code to your postgresql:

CREATE OR REPLACE FUNCTION IIF(Expression Boolean, truePart text, falsePart text)RETURNS TEXT
AS $$
BEGIN
  IF Expression THEN
    RETURN truePart;
  ELSE
    RETURN falsePart;
  END IF;
END; $$
LANGUAGE PLpgSQL;

Read more

Exists Function

EXISTS function will check the query results. If the query procduces one or more records then the function will result TRUE value, otherwise will result FALSE value.

Example at PostgreSQL

sql_exists_func

Exists function can be implemented in stored procedure. Example in PL/pgSQL:

CREATE OR REPLACE FUNCTION emp_(empid integer)RETURNS VARCHAR
AS $$
DECLARE
  have_emp BOOLEAN;
BEGIN
  have_emp := EXISTS(SELECT 1 FROM PEGAWAI WHERE ID = empid);
  IF have_emp THEN
    RETURN 'The employee exists';
  ELSE
    RETURN 'The employee not exists';

  END IF;
END; $$
  LANGUAGE PLpgSQL;

Compile Wine menggunakan Source Code

Download terlebih dahulu source code Wine di http://www.winehq.org/ dan simpanlah pada suatu folder/direktori. Sebagai contoh file yang saya download adalah wine-1.0.1.tar.bz2.

Saya menggunakan Fedora 10 dengan Development tools didalamnya seperti (GCC, dsb). Dan bukalah terminal pada menu Applications, System tools, Terminal.

Extract file wine-1.0.1.tar.bz2 ke direktori /tmp dengan mengetik pada terminal:
$ tar -jxvf wine-1.0.1.tar.bz2 -C /tmp

Masuk ke direktori hasil extract:
$ cd /tmp/wine-1.0.1

Menyiapkan kompilasi dengan script configure:
$ ./configure –with-x

configurewine

Jika hasil script configure diatas tidak ada kesalahan/error. Maka saatnya mengkompile:
$ make depend && make

winemakedepend

Tunggulah sampai proses kompilasi selesai. Ini mamakan waktu yang lama, tergantung dari kecepatan processor Anda.

Jika selesai compile (Wine build compolete), ketik “sudo make install” untuk memulai pemasangan:
$ sudo make install

Tunggulah beberapa saat sampai proses pemasangan selesai.

Jika proses pemasangan/instalasi selesai maka saatnya kita mencoba memasang sebuah aplikasi Windows pada sistem kita.

Menjalankan Aplikasi Windows pada Linux

Sekarang lagi musim orang-orang pindah dari Sistem Operasi Windows ke Linux. Karena alasan harga license yang mahal. Kini Desktop Linux telah dijadikan alternatif. Yang merupakan Sistem Operasi mirip Unix.

Ada beberapa kendala saat pengguna Windows tidak dapat menjalankan Aplikasi yang dulu dijalankan pada Windows, kini tidak dapat dijalankan lagi di lingkungan Linux.

Wine adalah salah satu solusi untuk menjalankan Aplikasi Windows pada lingkungan Unix dan Linux. Wine adalah sebuah sistem yang mengemulasi lingkungan Windows kepada Aplikasi Windows, sehingga aplikasi-aplikasi yang dulunya dijalankan pada Windows, kini dapat dijalankan pada sistem operasi Unix dan Linux.

Mempersiapkan Wine pada Linux
Sebelum menggunakan aplikasi Windows pada Linux menggunakan emulator Wine, pastikan Wine sudah terpasang pada sistem Linux. Berikut bagaimana kita akan mempersiapkan dan memasang Wine pada Linux.

Pada terminal linux kita dapat memeriksa apakah Wine sudah terpasang denngan mengetik wine pada shell. Jika wine belum terpasang. Ada beberapa opsi memasang wine pada sistem yaitu:

Memasang aplikasi windows menggunakan wine

Mencoba menjalankan