VirtualBox: Another Open Source Virtual Machine (Part II)

For more furthers, I had tried to run the VirtualBox with the same version of Linux Fedora Core 4 in a multiprocessor machine to test how far the compatibility on it. They just did it well. The VDI image file from the previous machine was copied into this multiprocessor machine & it run normally without any problems. So it is as simply as plug & play since I don’t have to create the Windows 98 from scratch to do the test.

Anyway, there are some serious problems I face within it. If you have the features of SELinux enabled, just turn it off since it will produce an error messages said something like "/opt/VirtualBox-1.3.8/VirtualBox: error while loading shared libraries: /opt/VirtualBox-1.3.8/VBoxVMM.so: cannot restore segment prot after reloc: Permission denied". Another solution to solve the problem is trying to change the information security context file with the command below:
$>chcon -R -t texrel_shlib_t /opt/VirtualBox-1.3.8/*.so
Other errors you might face, if the VirtualBox installation stage are getting corrupt, it will raise a "VirtualBox - Error" window containing the text "Failed to create new session" & "Callee RC: 0x80040154". This window appears in the final step while creating, modifying or running the virtual environment OS. To solve this, try to make a fresh install the VirtualBox setup package again.

From my couple days experience with Windows 98 running on VirtualBox, the USB storage devices are fully working without driver installed. As we know that it is so differ if we natively running Windows 98. It proved that the VirtualBox HAL (Hardware Abstraction Layer) specifically to the USB host bridging are successfully implemented. Unfortunately, when I tried to connects the Smart Link 56K internal modem, it giving me a great headache since there is no single one COM port detected. I don’t have any idea why it could be happened, while the Windows 98 native said it is OK.



By the chance, I would like to give a try with installing Windows 2000 on a same machine. First of all, I prepared the virtual disk with size of 1GB. The installation started with Windows 2000 boot setup CD from ASUS external DVD-RW drive.



Anyway, this virtual disk was formatted in NTFS format type.



The installations ~ somehow ~ are quite faster than Windows 98, also the boot sequences until the desktop shows up. Nothing serious problems happened anyway.



Got curious about the unavailable of COM port in Windows 98, I also tried on this fresh Windows 2000. Guess what? The detection has failed too! There are none of existing com port on the computer! What is going on with it?



I wondered why it could be happened. Is there any VirtualBox configuration files I missed? Or something is not done configured properly on the hardware side? One for sure, I couldn’t test the internet connection from modem yet. After having a some times searching over the VirtualBox website forum, finally I found a reason why it happened. According to the information on this link, VirtualBox is still doesn’t have ability to support the COM port yet! WTF! In this worsted scenario, the networking bridging become my last solution. It means that I have to provide a real virtual network connection shared from the proxy or gateway from other machine. Got to get this thing down or got my ass sited for a long long times. Fiuh!

Labels:

  Post a Comment

VirtualBox: Another Open Source Virtual Machine (Part I)

Somehow, an application that highly needed in the company I’ve been worked was failed to run with Linux upon the emulator. This application specifically ~ recognized from the meta file information ~ build from Visual Basic 6, using the Microsoft Access as the database storage & also requiring Crystal Report library to previewing the reports. Actually ~ as anyone can see ~ this is the very basic application & might run on emulator such as wine or crossover. From the global process explained by the programmer in US, I also found that it depends on some RPC (Remote Procedure Call) or similar process which didn’t exist in the emulator (it is a kind of thin client application models which try to connecting the server with VPN technology). Just a times before, I had tried several bottles methods from the latest version of wine or crossover but it seems can’t worked in any way.

After being get some failed & frustrated on how to emulating it, finally now I’m working on a different ways. Just make a try to run it in a virtual machine environment & hoping for a better result. Well, I’m currently not to using VMWare since its package is huge (about 130M) & requiring a high specification computer hardware which we doesn’t have yet in the branches. So, I’m trying to use VirtualBox developed by Innotek, another yet open source virtual machine which available to download from http://www.virtualbox.org. It is a multiplatform virtual machine & would work on any operating system likes Mac OS, Linux & Windows.

For the installation, the VirtualBox need only 13MB of empty spaces. It is a quite less virtual machine package than VMWare, ever!. The setup process are so easy, while it also require a dependency of compat-libstdc++ package which unable to detected before. This can be solve after downloading the packages from http://rpmfind.net according to the using of your Linux version (I’m using Fedora Core 4 with kernel version of 2.6.17).

First, I try to create a virtual host environment for Windows 98 since ~ I thought ~ it will run more smooth than Windows 2000 or Windows XP. Preparing the virtual hard drive is easy as VMWare. I let the space for about 980MB for this. Next, I plugged in the Windows 98 setup CD into my external Asus DVD-RW drives and start the VirtualBox to boot it.


Picture #1. Booting From Microsoft Windows 98 Setup CD on My Fedora Box


Picture #2. Entering The Windows 98 Install Boot Menu


Picture #3. Initialization The Windows 98 Setup Process


Picture #4. Copying Files of Windows 98 On Progress

After finished installation, it’s need to restart. Once, the VirtualBox would raise an error messages likes “PIIX3 cannot attach drive...” or something similar. If you meet this exception, close the VirtualBox & try to fix recompile the setup with run a command below on console.
/etc/init.d/vboxdrv setup
Other else, If you see something else error messages likes “PIIX3 cannot attach drive to the Secondary Master”, try to plug out the devices likes USB flash disk, floppy or something else from the computers. This might be a solution for the problem. Hence I don’t know how to resolve it anyway.


Picture #5. Starting The Windows 98 For The First Time


Picture #6. The Windows 98 Desktop Is Ready

Overall, the installation need much time than I expected before. I’ll post my next article regarding to this about on how to connecting to the network & installing the application I explained above.

Labels:

  Post a Comment

(Is It) A Bug in MySQL 5? No Way!

In the last days, I’ve been around with MySQL 5 to tested my current desktop application project which actually developed from Borland Delphi 6 & MySQL 4 as the back-end storage. Anyway, this is my first time experiment to tried to run it not with the same version. This MySQL 5 are comes with standard package from Linux Fedora Core 5 & I had successfully already installing it to one idle computer as the dummy server.

At a glance, there is nothing seems to be wrong after the application has run. The login query are succeeded to execute, also others form which querying common text field data types are resulted fine. Not so long ago after that, I’d countered a weird exceptional error. It said that field ‘xxx’ is not found. Get hurry checked it out from MySQL-Front but this decimal (x,y) data type named ‘xxx’ is exists. Time by time, I resumed that others same decimal data type also reported being lost. Very odd indeed I thought.

At first, I thought that the problem are caused by corrupted database. I did the integrity checked & self repair from the menu Tools :: Table Diagnostic of MySQL-Front. But, nothing has changed & the problem is still show up. Then, I suspicious to the using of old MySQL ODBC connectors could raised the problem (I was using MyODBC 3.51 version). Couple minutes after, I had the latest connector MyODBC 5.0 from MySQL download section & installing it freshly by replacing the previous driver version. Again, the problem still there! WTF is going on?

Got high frustrated, I googling the problem with dumb related keyword & found something could be the answer in MySQL website: List of some incompatible changes! One thing for sure that the decimal type in MySQL 4 are not compatible with the MySQL 5. The architectures of the newest release are completely differences. Well, this is the final answer for that. One solutions I know is altering the tables with MyISAM engine. Anyway, I’d done this but seems to be failed. Don’t know why? You have to be aware for any using of this data type.

Boys & girls, don’t try this at home… it is highly annoyed… ;-)

  Post a Comment

Go Open Source (Part II): Back to Fedora Core (5)

The team & me had already migrate the core server for about a week ago into a Linux server. The core server which serve the corporate computer operational (such as: Email Server, DHCP Server & Proxy Server) are being running as well as before.

Next schedule to be done is migrating the clients. There are more than 300 computers in the building with various hardware specification & have to be finished before the end of next month. Well, this is our great jobs even with small amount of staffs (9-10 peoples).

The migrating jobs are not easiest as say. There are lot of things we should beware off before getting started the jobs. However, the importance things includes:

1. What kind of Linux will be chooses
This is a real beauty contest of Linux benchmarking scheme to find out what is the best, link & match to the computer hardware. The driver support for the un-plug & play also become your care. Next to the pre-installation of Linux is knowing the CPU & memory load regarding to the others major hardware exists.

At a glance, we were having successful experiences on migrating the branches a year before with Fedora Core 4. The elections were followed by several self-beauty contest with various of Linux. Meantime, we are planning the same mechanism in HQ. The finalist are Fedora Core 5, Fedora Core 6, Open SuSE & PCLinux. The Fedora Core 6 are quite heavy to load that not too fit in most of hardware we had. The using of Open SuSE are also not suitable to implement since it might need more learning by the regional staffs which having knowledge in Fedora Core 4. Since PCLinux come from Debian family (which having a great optimalization & compact Linux kernel), ahrghh it is so difficult to get a live online support (for me). So, finally we choose Fedora Core 5. That it is most reliable & more easy to use up. Just for sure relax condition, you might need to add the RAM up to 256 MB for it minimal requirement.

2. The installation mechanism
Provide the installation manual book to threat the same way of installing process, so that all computers will running the same configuration.

By the time, I’d already arranged the installation guidance of Fedora Core 5. From it started about how to create room partition with disk image created by Norton Ghost utility until it done about how to configure & running the internal corporate basic application.

3. Application before & after the migrating process
This is the hardest point that have to be achieved. The application which rolling the basic corporate operational should run at the same manner & behavior after the migrating process. The way that have to care about is the application performance as the whole process. Whether it is reliable or not, give this point in a big attention so it would run on it better performance.

In the office, we had several applications based on various databases. While the consolidation program are using 16 bit fox-based compiler, we also had HRD program which developed with 32 bit Power Builder compiler using the Oracle as the back-end database.

Fortunately, the DOS emulator (dosemu 1.3.3, the latest stable DOS emulator package from ASPLinux RPM version I found on rpmfind.net ~ don’t forget to add the package compat-slang-1.4.9-27.2.1.i386.rpm for support on console) are much supporting the Fedora Core 5. Also the CrossOver 5 are quite compatible & robust to handle the Windows 32 bit application. So, both are more smoothly endorsing the migrate process. Just another yet lucky me!

4. Control & behavior each users after the migrating process
Well, it was about quarter century peoples were ready to know Windows. No wonder, there will be much yells when they hitting Linux for the first time. This is a new challenge for you, how to make them “silence”?

The job is much harder when we have to planning something about loosing users worried when they are not too familiar with Linux. The point is, we are talking about the Windows similarity GUI & common replacement application. First of all, we leading the users into a KDE interface (the best & better desktop manager in Linux, AFAIK), then we fill in the application which have the same functionality in Windows. There are OpenOffice to replace the Microsoft Office for examples. Even it will raise a small number of contradiction, but it is the consequences.

5. Preparing the online support
Last but not least, create a full team to assists the newbie users. They will yell louder if you are not in his side. Allow the phone line open in the office hour & make a quick clear answer to respond.

We are designing to make a team shifting at work to helping the users. It is an optimal way showing who’s in charge to pick up the phone line extending to team long live performance.

This article will continue at the end of the finalization…

Labels:

  Post a Comment

Next Award: Winner in Bubu Award v5.0

After being as one of the finalist listed on corporate category banking and finance in Bubu Awards v5.0, finally the corporate website project I’ve developed from scratch (http://www.pegadaian.co.id) had been announced as the winner. This event was hold on April 4th 2007 at city museum near national monument (Monas) precisely in Medan Merdeka Barat street, Jakarta. Other finalists in the same category which had been defeated was Danamon (http://www.danamon.co.id) and e-Bursa (http://www.e-bursa.com).

PT. Bubu Kreasi Perdana as the event arranger with a group of IT expertise international judges also nominated my creation with The Best Technology Website and The Best Utilization Website category. Well, even it doesn't chooses as the winner, but it was just fine for me considering the appraisal was done - I guess - before I made some improvements on the web pages including the auto email responder, ticker flash news modules, SSL modules to support online transaction and lots of small fixation.

Meanwhile, the trophy, certificates and simple gifts from sponsor was given by Jos Luhukuay (ex. highest IT official Bank Danamon) which proved by the minister of communication and information, Mr. Sofyan Djalil also Official of Application & Telematique, Mr. Cahyana Ahmadjayadi, Mr. Kuntoro Sudrajat from Culture & Tourism Departement, and lot of local IT experts.




At the end of the session, I had my photograph pictured with the CEO of Bubu.com, Ms. Shinta W, next to the trophy it self. She has a brilliant mind inside of her ... beauties.

Anyway, this could be the event which would burned in enthusiasm of IT staff on the offices, especially for my own self for the future reference.










  Post a Comment

Working with Barcode (Part I)

For couple days, I’ve been playing around with barcode tool to support my existing project software development. This become my new experience about how to create the schematic image from several type of barcode and finally pick one to implementing on my Delphi form projects.



Let me introduce to the barcode reader hardware first. The reader comes with a straight PS/2 port compatible to USB cables extension. It has made from Taiwan with serial code 1000 CCD mode from CipherLab 1300. The sensor are quite accurate and support the most known barcode types such as Code39, Italian Pharmacode, French Pharmacode, Industrial 25, Interleave 25, Matrix 25, Codabar, Code93, Code128, UPCE, EAN8, EAN13, MSI, Plessey and PDF417.

Before getting it done, I had to create a small card-name size which typed a tiny barcode image consists 9 digits of number somewhere on it in one of my modules. So, smallest possible barcode image would be nice to paint on the front side of the card. The next question is, what type of barcode I have to choose?

From third party tool application got from internet (shmia@bizerba.de), I had analyzed several barcode images priorities on the length size and sort it in order to fit in the card form I described before. And below is the result :


CodeUPC_Supp2 (Unable to read)

CodeUPC_E0 (Unable to read)

Code_2_5_interleaved

Code_2_5_matrix

Code128C

CodeEAN13

CodeCodabar

Code_2_5_industrial

Code93

Code128A

CodeMSI

Code39

CodePostNet

CodeEAN128A

From the result above, I surely my mind to choose the Interleave 25 barcode type. It has less length and still able detected by the reader hardware. The module I developed, require no external font installed on Windows since the TBarcode (TasBarcode) component create the image by it self.
procedure TForm1.FormCreate(Sender: TObject);
begin
{
Create a barcode object.
this object is freed when the form is going to destroyed, because it is owned
by the form (self parameter)
}
Barcode1 := TAsBarcode.Create(self);
Barcode1.Top := 50;
Barcode1.Left := 30;
Barcode1.Typ := bcCodePostNet;
Barcode1.Modul := 2;
Barcode1.Ratio := 2.0;
Barcode1.Height := 50;

Barcode1.OnChange := Self.Barcode1Change;

ComboBox2.ItemIndex := integer(Barcode1.ShowText);
end;
procedure TForm1.print_demo(bc:TAsBarcode); var tmpbarcode : TAsBarcode; begin { create a temp barcode object, because we want to change some properties } tmpbarcode := TAsBarcode.Create(nil); { copy the object } tmpbarcode.Assign(bc); try with printer do begin BeginDoc; { Height of barcode: 40mm } tmpbarcode.Height := ConvertMmToPixelsY(40.0); tmpbarcode.Height := ConvertInchToPixelsY(1.5); { Modulwidth: 0.5mm } tmpbarcode.Modul := ConvertMmToPixelsX(0.5); tmpbarcode.Top := ConvertMmToPixelsY(100.0); tmpbarcode.Left := ConvertMmToPixelsX(35.0); tmpbarcode.DrawBarcode(Canvas); EndDoc; end; finally tmpbarcode.Free; end; end;
This article will continued...

Labels:

  Post a Comment