2/27/10

සතියේ අච්චාරුව

ආයෙත් අච්චාරුවක් දාන්න හිතුනා..

මොකද Confiuzd ප්‍රෝග්‍රැමර් මේදවස් වල ඉන්නෙ ටිකක් සතුටෙන්(කට්ටියක් නම් දන්නවා :D අනිත් අයට ලඟදිම කියන්නකෝ එලිපිටම :p)



ඔය අස්සේ නිශාන් මලයා ගෙ සෙට් එක අලුත වැඩකට අත ගහලා ගිහිල්ලා බලන්නකො මෙතෙනට කොල්ලනේ මඟ හොදට තිබේ දෙන එක දියන් රම්පෙට පොරි හැලෙන්නම


තව බ්ලොග් 1ක සින්ඩියට වැටුන නිසා පන්නන කට්ටියත් වැඩි වීගෙන එනවා ඉතින් Confiuzd ප්‍රෝග්‍රැමර් පන්නන හැමෝටම thank යූ

සතිය වගේම මේ අවුරුද්දෙත් මාස 2ක් ඉවරයි අවුරුද්ද ලඟ එනවා (තමන්ගෙම පඩියෙන්ම අවුරුද්ද කන්න හිතාගෙනයි Confiuzd ප්‍රෝග්‍රැමර් ඉන්නේ)



මේ බ්‍රහස්පතින්දනම් ලංකාවෙ දුම්රිය සේවය ගැන Confiuzd ප්‍රෝග්‍රැමර් හොදටම පැහැදුනා (කොච්චර ද කියනවා නම් CGR එකේ ලොකු මහත්වරුන්ගෙ අම්මලාගෙ නහය දෑවලු මුලු දවස පුරාම :D )



සිකුරාදනම් ඔන්න Confiuzd ප්‍රෝග්‍රැමර් බොරැල්ල පැත්තේ උදේ 8 ත් 9 අතර ගැවසුනාලු (ටිකල් road එක ලග හා වැලිකඩ බන්ධනාගාරෙ ගාව) මොකද්ද දන්නෑ මිනිහගෙ කුරුමානම (මේ යකා ටොරන්ට් බාන බෑමට ඇගවත් බැදලද දන්නෑ කියලා කස්ටිය කතා වුනාලු) :D

කැන්ගරු රටේ ඉන්න Confiuzd ප්‍රෝග්‍රැමර්ගෙ අයියා කෙනෙක මිනිහාට යෝජනාවක් දාලා .කොහොමත් Confiuzd ප්‍රෝග්‍රැමර්ගේ අදහසක් තියෙනවා කැන්ගරු රටට පොඩි visit එකක් දාන්න



ඔය ඔක්කොම අස්සෙ Confiuzd ප්‍රෝග්‍රැමර් සම්පූර්නයෙන්ම FOSS වලට මාරු වෙන්නයි හදන්නෙ අවුලකට තියෙන්නෙ මිනිහගෙ කසිකබල් ෆෝන් එක



මේ අට මගුල ඔය LINUX disto එකක් එක්ක අමුනා ගන්න පුලුවන් විදියක් කියලා දුන්නත් මිනිහත් full time foss තමා



තව මිනිහා සාම්ප්‍රදායිකව keyboard එකට එන කොලපාට LED ටික සුදු පාට කරන්නයි ඉන්නෙ ඒ ගැන පොස්ට් 1කක් යයි ලගදිම

  Confiuzd ප්‍රෝග්‍රැමර්ගෙ play list එකට අලුතින්  සින්දු 4 ක් එකතු වුනා
මුල් ගීත තුන එන්න හේතුව කියන්න ඕනැ නෑනෙ :p අන්තිම එකනම් The Boondock Saints II: All Saints Day ෆිල්ම් එකෙන් ආ මෙන්න මේකත් පට්ට ෆිල්ම් එක The Eagle Has Landed මේ ෆිල්ම් දෙක ගැනම බයිස්කෝප් සිංහලෙන් එකට ලියන්නයි Confiuzd ප්‍රෝග්‍රැමර් හිතගෙන ඉන්නෙ

අච්චාරුවනම් පදමට ආවා එල කිරි ..... කස්ටියටම ජය වේවා !!!!

-- Confiuzd ප්‍රෝග්‍රැමර්

2/26/10

Assembly පාඩම 5

මොකද්ද මේ CPU Registers

CPU Registers කියන්නෙ CPU කේ තියෙන විශේශ මෙමරි Location වගයකට,මේ CPU Registers 3කට බෙදෙනවා
  1. 8 bit
  2. 16 bit
  3. 32 bit
Address(ලිපිනය) Name(සාමාන්‍ය නම) Description(විස්තරය)
EAX* Accumulator Register ගණීත කර්ම හා ප්‍රතිඵල ගණනය කිරීමට යොදා ගනී
EBX Base Register DS කොටසේ ඇති දත්ත වලට යොමු(pointer) ලබාදීම
ECX* Count Register loop මෙහෙයුම් කර්ම සිදුකරයි
EDX* Data Register input/outputයොමු(pointer) සඳහා භාවිතා වේ
ESI Source Index string වර්ගයේ කර්මයන්ට(operations) මූල යොමුව ලෙස භාවිතා වේ
EDI Destination Index
ESP Stack Pointer
EBP Base Pointer

(මෙහි * ලකුනින් පෙන්වා ඇති ඒවා පමනක් windows programming සදහා භාවිතා වේ)


Address(ලිපිනය) Name(සාමාන්‍ය නම) Description(විස්තරය)
CS Code Segment executed වීම ආරම්භ වූ උපදෙස් ගබඩා කරගනී
DS, ES, FS, GS Data Segment
SS Stack Segment දැන් භාවිතා වන program එකේ Stack එක ගබඩා කරගන්න ස්ථානය
ඉහත කොටස් දෙකටම අයත් නැති ඒවා තමයි

Address(ලිපිනය) Name(සාමාන්‍ය නම) Description(විස්තරය)
EFLAGS Code Segment status, control, හා system flags ගබඩා කරගනී
EIP Instruction Pointer ඊළඟ විධානයට සරිලන offset එක ලබා දේ


CPU Registers ගැන වැඩි විස්තර කඩ්ඩෙන් ඕන්නම් මෙතෙනින් හා මෙතෙනින් ගන්න පුලුවන්


OFFSET ට එරෙහිව ADDR
මේ command  දෙකම එක වගේ නමුත් OFFSET යොදා ගන්නෙ  global variables වල memory address ගන්නයි නමුත් ADDR වලින් global variables හා local variables යන දෙකේම memory address ගන්න පුලුවන්
ඒ හින්දම OFFSET වල භාවිතය අඩුයි :)

2/24/10

Nokia s60 ට gmail configer කරමු

පරිගණකයක් ලැප්ටොප් එකක් නැතිව ටිකක් දුර පලතකට ගියාම පිහිටට ඉන්නෙ ජංගම දුරකතනය තමා.අද මම කියලා දෙන්න යන්නෙ නොකියා s60 (symbian) මාදිලියේ ජංගම දුරකතනයකට කොහොමද email පහසුකම ලබාගන්නෙ කියලා
(මේකට මම යොදාගත්තෙ මගේ නොකියා 6630 phone 1ක)

දැන් phone 1කේ messaging වලට යන්න

messaging settings වලට යන්න


Email විකල්පය තෝරන්න

Mail Box විකල්පය තෝරාගන්න

එහිදී options ---> new mail box විකල්ප තෝරාගන්න 


ඔබගේ ජාලසැපයුම් කරු විසින් ලබාදෙන  අන්තර්ජාල පිවිසුම් මාදිලිය තෝරා දෙන්න


ගිණුම සදහා නමක් ලබාදෙන්න
My e-mail address හි ඔබගේ e-mail ලිපිනය ලබාදෙන්න
 outgoing mail server ට stmp.gmail.com හා User name 1ක සදහා ඔබගේ සම්පූර්න e-mail ලිපිනය හා password සදහා ඔබගේ gmail password එක ලබාදෙන්න
incoming mail server එක ලෙස imap.gmail.com ලබාදෙන්න
mail box type සදහා IMAP4  ports සදහා on(993/995) ඇතුල් කර save කරගන්න

user settings හා Automatic retrieval වල සැකසුම් පෙරනිමියෙන්ම තබන්න
user settings

Automatic retrieval
 
දැන් ඔබේ Massaging menu එකට ඔබගේ G-mail ගිනුම එක් වී ඇත .එයට පිවිසීමෙදී අන්තර්ජාලයට පිවිසීමට අවසර ඉල්ලනු ඇත ,අවසරය ලබා දුන්  පසු phone 1ක ඔබගේ Gmail ගිනුමට පිවිසීමට හැකිවනු ඇත
 

2/23/10

VLC වෙබ් interface


හැමෝම දන්නවනෙ VLC media player එක ගැන අද මම කියන්න යන්නෙ මේකෙ තියෙන එක්තරා විශේෂාංගයක් භාවිතා කරලා කරන්න පුලුවන් cool වැඩක් ගැන :)


මේක හුඟක් වැදගත් වෙන්නෙ කට්ටියක් එකතුවෙලා සින්දු අහ අහා වැඩ කරන අවස්ථාවලදි තමයි.මොකද එක එක කට්ටිය කැමති එක එක විදියෙ සින්දුවලටනේ.ඉතින් සින්දු දාන කෙනාට වෙන්නෙ DJ වගේ එක් එක්කෙනා කියන සින්දුවලට මාරුකර කර ඉන්නයි :D .හැබැයි network 1කේ ඉන්න හැමෝටම පුලුවන්නම් තමන් කැමති සිංදුව තමන්ටම දා ගන්න ඔන්න වැඩේ ගොඩ ..:)


අවශ්‍ය කරන දේවල්
  • VLC media player එක  
  • නෙට්වර්ක් කරන ලඳ පරිගණක කිහිපයක්
  • sub woofer 1ක් හෝ සාමාන්‍ය speaker system 1ක්

වැඩේ පටන් ගමු
මුලින්ම අපි media server 1ක ලෙස භාවිතා කිරීමට සූදානම් වෙන පරිගණයට සියලුම ගීත පිටපත් කරගන්න ,එහි VLC install කර නැත්නම් VLC player එක ස්ථාපනය කරගන්න



ගීත ඇසීමට කැමති සියලු දෙනාම සමග එකතු වී VLC player1 එකෙන් playlist 1 ක සාදා save කරගන්න

VLC හි කෙටි මගක් desktop එක මත සාදාගන්න

එය මත right click කර properties වලට යන්න

එහි Target යන ස්ථාන‍යේ ඇති "‍‍X:\Program Files\VideoLAN\VLC\vlc.exe" ට පසුව ඉඩක් තබා --extraintf=http යන්න එක් කරගන්න
උදා :-  "‍‍C:\Program Files\VideoLAN\VLC\vlc.exe" --extraintf=http

 

VLC.exe ගොනුව ඔබගේ firewall වැඩසටහනට එක් කරගන්න

පෙර පියවරවල් මගින් සාදාගත් කෙටි මගින VLC වැඩසටහන ආරම්භ කර  playlist 1 කද add කරගන්න

වෙබ් ගවේශකය මගින් http://127.0.0.1:8080 වෙත පිවිසෙන්න

මෙවැනි තිරයක් ලැබේදැයි බලන්න

 වෙනත් තිරයක් ලැබේඳ ?
ඔබගේ පරිගනකයේ 8080 port 1ක කිනම් හෝ server  මගින් දැනට භාවිතා කරයි එම නිසා "‍‍C:\Program Files\VideoLAN\VLC\vlc.exe" --extraintf=http --http-host=[ඔබගේ LAN IP එක]:[0 -65535 අතර අංකයක්] යොඳන්න
(windows තුල භාවිතා වෙන සම්මත port සදහා මෙතන කොටන්න)

දැන් ඔබගේ LAN එක තුල සිටින සියලු දෙනාටම වෙබ් ගවේශක මගින් http://[VLC සහිත පරිගනකයේ IP එක]:8080 පිවිසීම මගින VLC වැඩසටහන පාලනය කල හැකියි
මේ තියෙන්නෙ ඔයවිදිහට හදාගත්ත media server 1 (office එකේ තමා හැදුවෙ)

දැන් කස්ටිය rock තමා :D

2/21/10

Assembly පාඩම 4

අද අපි කරන්න යන්නේ Hello World Program එකේ GUI සංස්කරනය ... මෙමගින් අපිට ඉතා අලංකාර අතුරුමුහුනතක් සාදා ගත හැකියි.
පහතින් තියෙන්නෙ කොටන්න ඕනැ කරන Code 1ka කලින් පාඩමේ කියලා දුන්න විදියට මේකත් save කර ගන්නකො

.386

.model flat, stdcall

option casemap :none

include C:\masm32\include\windows.inc
include C:\masm32\include\kernel32.inc
;New Addition
include C:\masm32\include\user32.inc
;
includelib C:\masm32\lib\kernel32.lib
includelib C:\masm32\lib\user32.lib

.data
HelloWorld db "Hello World!", 0
.code

start:

invoke MessageBox, NULL, addr HelloWorld, addr HelloWorld, MB_OK ;New Addition
invoke ExitProcess, 0

end start 

මෙය Assemble කිරීමෙදී
\masm32\bin\ml /c /Zd /coff hellow.asm
විධානය භාවිතා කලත් link කිරීමේදී SUBSYSTEM අගය WINDOWS ලෙස ලබා දෙනවා
\masm32\bin\Link /SUBSYSTEM:WINDOWS hellow.obj



මේ code 1කේ වෙනස් කමකට තියෙන්නේ code පේලි දෙකයි..
include C:\masm32\include\user32.inc
එකෙන් user32 කියන windows common dialog අඩංගු මොඩියුලය Code 1කට ඇතුල් කර ගැනීම සිදුකර ගනු ලබනවා
invoke StdOut, addr HelloWorld
යන්න
invoke MessageBox, NULL, addr HelloWorld, addr HelloWorld, MB_OK
මාරු කර popup Message Box මගින් "Hello World" යන්න පරිශීලකයට පෙන්නුම් කරනවා

අදට පාඩම ඉවරයි ...ඊළඟ පාඩමෙන් ටිකක් සංකීර්න මාතෘකාවක් ගැන කථා කරන්නයි ඉන්නෙ

PS :සින්ඩියෙත් දැන් මගෙ post යනවා :)

2/19/10

Assembly පාඩම 3

වල් පල් .....
කට්ටියම දකින්න ඇතිනෙ මම template එක මාරු කලා ....තව emoticons දැම්මා ....කණියා තමා help 1ක දුන්නේ..ok දැන් පාඩම පටන් ගමු ....
------------------------------------------------------
Assembly පාඩම

කට්ටියම දැන් පළවෙනි assembly program 1ක ලියලා ඉවරයිනේ ..
දැන් තියෙන්නෙ මේක පැටලුම් අරින එක ....
.386
 මේ පේළියෙන් තමා අපි assembler එකට භාවිතා කරන්න ඕනෑ instruction set  දැනුම් දෙන්නෙ. 386 වලට වඩා පරණ processors දැන් හොයන්න නෑ ...තවත් .486 හා .586 කියලා instruction set   තියෙනවා,නමුත් .386 දැනට තියෙන සියලුම processors වලට ගැළපෙනවා .
.model flat, stdcall
.MODEL වලින් අපි assembler එකට කියන්නෙ memory භාවිතය ගැන. windows programing සඳහා යොදා ගන්නා මොඩලය තමා "flat" stdcall කියන්නේ අපි Windows functions වලට පරාමිතීන් (parameters) ‍යැවීමෙදී යොදා ගන්නා සම්මතයක් (push right-to-left)
option casemap :none
මෙමගින් අපි assemblerය  case sensitive ප්‍රකාරයට මාරුකරනවා එවිට lahiru හා Lahiru තනි වචනයක් නොව වචන දෙකක් ලෙස assembler සළකනවා.බොහෝ විට මෙය ජාවා ලිප්ස් වැනි පරිගණක භාෂාවන්හි දක්නට ලැබෙන්නක්.
include c:\masm32\include\windows.inc
include c:\masm32\include\kernel32.inc
include c:\masm32\include\masm32.inc

includelib c:\masm32\lib\kernel32.lib
includelib c:\masm32\lib\masm32.lib

windows programing වලදි අවශ්‍ය කරන විධාන හා script පෙරනිමියෙන් ඇතුල් කිරීම මෙහිදී සිදුවෙනවා.මේ පිළිබඳ ඉදිරියට  විස්තරාත්මකව කථාකරමු

.data
ඔය ගොල්ලන්ගෙ initialized කරපු data (variable වගේ අයිටම් එකක්) තියගන්නෙ මෙතන initialized නොකරපු හා constants data වලට
.data?
.const
කියලා වර්ග දෙකක් තියෙනවා. මේ program එකේ නම් ඒවා භාවිතා වෙන් නෑ.භාවිතා වෙන අවස්ථාවක මම ඒ ගැන කියන්නම්
HelloWorld db "Hello World!", 0 
db කියන්නෙ 'define byte' කියන එක මේ db data type එකට ANSI String එකක් දාන්න පුලුවන් අගින් තියෙන '0' කියවෙන්නෙ 'NUL' හැමතිස්සෙම ANSI String එකක් ඉවර වෙන්න ඕනෙ 'NULL' character එකකින්
.code
ඔය ගොල්ලන්ගෙ code එකේ ආරම්භක ස්ථානය

start:
start කියන නම්පත

[නම] 
// ලිවිය යුතු code එක
end [නම]
code ලියනවනම් නම්පත ඇතුලෙ තමා ලියන්න ඕනෙ
invoke StdOut, addr HelloWorld
මෙතනදි සිදුවන්නෙ StdOut කියන function තුලට HelloWorld කියන db එකේ memory address එක යැවීමයි
invoke ExitProcess, 0
ExitProcess කියන විධානය මගින් නිවැරදිව program එක memory එකෙන් ඉවත් කිරීම සිදුකරනවා

2/17/10

Assembly පාඩම 2

කට්ටිය ආයුධ සෙට් කර ගත්තද?


මට අර syntaxhighlighter කන්ෆිගර් කරාගන්න පොඩි වෙලාවක් ගියා.තාම මම හිතන්නෙ තාම ඒක හරි නෑ වගේ
ඒක නිසා ඊයෙ දාන්න හිටිය post 1ක ඒක නිසා පරක්කු උණා :)

ඔයලා masm32 Install කලේ සම්මත සැකසුම් යටතේනම් ඒක Install වෙන්නේ C:\masm32 folder එකට ඒක නිසා ඔය ගොල්ලන්ගෙ working Directory 1ka වෙන්නේ C:\

ආධුනිකයන් සඳහා .....
ඒ හින්දා මෙහි භාවිතා වෙන include C:\masm32\include\windows.inc වැනි ඇතුලත් කිරිම් ඔබගේ Install කිරීමට අනුව වෙනස් කරගන්න

ප්‍රවීනයන් සඳහා ......
කස්ටිය දන්නවනෙ..Relative path එක දීලා .system path එකට SDK tools හා classpath එකට  include ටික දාගන්න පුලුවන්නේ.... :-p

එහෙනම් අපි යුද්දෙට සෙට් වෙමු ...:)

එහෙනම් කට්ටියගෙ ප්‍රියතම code editor එක open කරලා අලුත් file එකක් "hellow.asm" කියලා save කරගෙන පහත දැක්වෙන code කෑල්ල type කරගන්නකො

.386

.model flat, stdcall

option casemap :none

include c:\masm32\include\windows.inc
include c:\masm32\include\kernel32.inc
include c:\masm32\include\masm32.inc

includelib c:\masm32\lib\kernel32.lib
includelib c:\masm32\lib\masm32.lib

.data
 HelloWorld db "Hello World!", 0
.code

start:
 invoke StdOut, addr HelloWorld
 invoke ExitProcess, 0
end start 
 
ග්‍රීක වගේද ..? මම මේකෙ line by line විස්තර කරන්නම් ඊට කලින් මේක compile කරලා link කරගම්මුකො

ඔයාලගෙ Command Prompt එක open කරලා hellow.asm file එක save කරගත්ත තැනට Navigate කරගන්නකො (දැන් කියන්න එපා ..DOS උගන්නන්න කියලා .මම දැක්කා blog වල තියෙනවා හොඳ DOS  පාඩම් මාලා කිහිපයක්)

මගේ උදාහරනේ මම save  කරේ c:\  වල
දැන් මේ command එක type කරලා enter කරන්න

\masm32\bin\ml /c /Zd /coff hellow.asm

ඔය ගොල්ලො මම කියපු විදිහටම කළා නම් මේ output 1ක ලැබේවි ...


ඒවගේම ඔයලගෙ .asm file 1ක save කරපු තැන hellow.obj කියලා file එකකුත් හැදිලා ඇති...


මෙහෙම වෙන්නෙ නෑනෙ ....වෙන්න පුලුවන්  සාමාන්‍ය වැරදි ...

  1.  fatal error A1000: cannot open file : .........අනිවාර්යෙන් ම  c:\masm32 වලට නෙමෙයි MASM Install කරලා තියෙන්නෙ  check කරලා බලලා හරියට path 1ක දෙන්න නැතිනම් sorce cord 1ක ලියපු file එකේ file name එක වැරදියි ..
  2. error A2008: syntax error :සාමාන්‍ය syntax වැරැද්දක් code 1ka නැවත check කරන්න
  3. අනෙකුත් වැරදි සියල්ලම ඔබගේ system එක මත රදා පවති ...නැවත MASM පිහිටුවන්න...සමහර විට සාර්ථක විසදුමක් විය හැකිය ...
 ඔය ගොල්ලන්ගෙ වැරදි හදා ගත්තට පස්සෙ අපිට මේ Hello World application එක win32 executable එකක් කර ගැනීමට පුලුවන්....
 ඒ සඳහා Command Prompt එකේ පහත command එක එන්ටර් කරන්න

\masm32\bin\Link /SUBSYSTEM:CONSOLE hello.obj

නිවැරදිව link වුණානම් .asm හා .obj files ඇති තැන .exe file 1කකුත් දක්නට ලැබේවි.....


 
දැන් මේ  command එක එන්ටර් කරන්න

hellow

Kaspersky Internet Security 2010 නම් false alarm එකකුත් දෙනවා code 1ක ඔයාලම ලියපු නිසා ප්‍රශ්නයනක් නෑ
 

 
 
දැන් අපි assembly වලින් අපේ සරල Hello World application 1ක ලියලා ඉවරයි...
code 1ක line by line පැහැදිලි කරන එක ඊලග ලිපියෙන් ලියන්නම් .....
 
පුරුදු පරිදි ගල් මුල් ප්‍රශ්න ...comment එකට දාන්නකො (google buzz කට්ටියත් blog 1 කට comment දානවනම් තමා හොඳ :D)


2/15/10

Assembly පාඩම

වින්32 ඇසෙම්බ්ලි ආරම්භක පාඩම

මට අස්සෙම්බ්ල්ය් ඉගෙනගන්න උනේ මගේ යලුවෙකුගෙ project 1කකට සප් 1කක් දෙන්න ගිහින් :) අන්තිමට project 1ක Linux වලට මාරු උනා ...(කට්ටිය දන්නවනෙ ජනෙල්වල තියෙන අසීමිත error ප්‍රමානය)
අන්තිමට නිකන් ඉන්න බැරුවට ලියපු program කිහිපයකුයි ඉතුරු උනේ

කොහොම හරි අමාරුවේන් ඉගනගත්ත දේ නිසා මම හිතුවා අත්දැකිම් එක්ක මේක බෙදා ගන්න

මේ මගේ පළවෙනි පාඩම්මාලව ඉතින් මෙහිදි මම පාවිච්චි කරන්නෙ MASM කියන SDK එක ,බොහෝ වෙලාවට x86 CPU වලට programing කරන්න බහුලව භාවිත වන SDK ක්

කලින් high level programming එකක් භාවිතා භාවිතා කර තිබීමත් මෙම පාඩම් මලාව තේරුම් ගැනීමට පහසුවක් වේවි

මුලින්ම බලමු ඇයි අපි Assembly භාවිතා කලයුත්තේ කියලා
  • වේගවත් ක්‍රියාකරිත්වය අථ්‍යාවශ්‍යව ඇති අවස්ථා වලදී
  • දෘඩාංඟ වලට සෘජුවම පිවිසීමේ අථ්‍යාවශ්‍යව ඇති අවස්ථා වලදී
  • කුඩා ස්ථාවර මතකයන් හා සසංභාවී ප්‍රවේශ මතකයන් (RAM) සහිත පද්ධතීන් සදහා programs ලිවීමේදී
මම අර කලින් සඳහන් කල Project 1කේදී Assembly භාවිත කිරීමට හේතුව උනේ ඉහතින් සදහන් කළ මුල් කරුණු දෙක

ඔබට DBMS System එකක් සෑදීමට අවශ්‍යනම් තෝරාගත යුතු language එක Assembly නම් නෙවේ .. (නමුත් Assembly වලිනුත් DBMS System කරන්න පුලුවන් )

මෙහිදී මතක තබා ගතයුතු කරුණ වන්නේ අවශ්‍යතාවය නිවැරදිව හදුනා ගැනීමයි .
ඇයි මේ ජනෙල් (Windows) ?




Assembly වලින් ඕනෑම මෙහෙයුම් පද්ධතියක (OS) ධාවනය වන ඕනෑම සැකසුම් මාදිලියකට (CPU model) program කළ හැකියි නමුත් MASM මගින් ලබාදෙන Script පහසුකම නිසා Windows මත පහසුවෙන් program කිරීම කලහැකියි (වැඩි ගණිතමය දැනුමක් නොමැතිව , තවද අවශ්‍ය අවස්ථාවකදී GCC වැනි Compiler එකක් මගින් LINUX පද්ධතීන්ට ගැලපෙන අයුරින් Windows මත සාදන ලැබූ object අවශ්‍ය පරිදි inject කරගත හැකියි)

වැඩේ පටන් ගමු

මුලින්ම අවශ්‍ය කරන ආයුධ ටික හොයා ගම්මුකෝ

Assembly SDK

Assembly code machine code වලට පරිවර්තනය කරන්න assembler එකක් ඕනෑ කරනවා ඒ වගෙම ඒවා platform depend executable (සිංහලෙන් දන්නෙ නෑ) කරන්න linker එකකුත් ඕනෑ කරනවා

මුලින්ම කිව්වා වගේ මම මෙතනදි assembler හා linker විදිහට භාවිතා කරන්නේ MASM
එය MASM නිල වෙබ් අඩවියෙන් ලබාගත හැකියි http://www.masm32.com/masmdl.htm

IDE\Code Editor
මගේ ප්‍රියතම code Editor 1ක වන Programmer's Notepad තම මම නම් භාවිතා කරන්නේ කැමති නම් Note Pad ,VIM ඕනෑම text Editor එකක් භාවිතා කරන්න පුලුවන්

මේ තියෙන්නේ ලින්ක් ටිකක්
දැන් කට්ටිය ඕව බාගත කරගෙන ස්ථාපනය වැඩිම උනොත් 8MB විතර වෙයි
MASM Install කරන්න කලින් anti virus software එක කෝකටත් නවත්තන්නකෝ සමහර විට එවා false alarm දෙන්න පුලුවන්

අදට ඔය ඇති ගල් මුල් ප්‍රශ්න සියල්ලම comment කරන්නකෝ

2/14/10

Valentine අච්චාරුව

Valentine day !!!
අද නම් ලස්සන දවසක් ....සිරියවේ බෑ
අදත් මම උදේම ගියා වැඩට....
කොහෙද උදේ පාන්දරම වැලන්ටයින් ගෙ නංගිලා මල්ලිලා වැඩ අල්ලලා :)
කොහොම හරි seat කොනක් අල්ලගෙන දැම්මා පොඩි ඇලට් එකක්
ඒත් ඉතින් එහා පැත්තෙ හිටිය කපල් 1ක දුන්නෙ නෑනෙ නිදාගන්න
කමක් නෑ අද උන්ගෙ දවසනෙ ...ඉවසගෙන හිටියා
.........................................
කොළබත් ඊට දෙවනි නෑ...ඉරිදට වැඩිය කාර්යබහුල නොවන කොටුව දුම්රිය පොලත් අද හරි ජනාකීර්නයි
..........................................
හවසනම් ඒ හැටි අවුලක් නෑ අද office 1කෙන් එනකොට පරක්කු උනා නැත්නම් class අරින වෙලාව නිසා තවත් කට්ට.
...........................................
හවස එන ගමන් මම බලාගෙන අවේ වැලන්ටයින් සාමි වරය
දැකගන්න,හොඳ වෙලාවට මිනිහා මලේ ...මම දැකපු විකාර ටික දැකලා මිනිහා ආයෙත් මැරෙනවා කිරිතේ 1කක් බීලා

Open Source

අද ජාලයේ සරනකොට දැක්කෙ මේක....



Open Source අයට තරහා යයිද මන්දා....

විකාර ඇතිද ?

ලියනවා කියලා විකාර ලියන්න බෑනෙ හැමදාම :)
මොනවා හරි වැදගත් දෙයක් ලියන්නත් එපෑ....

  • Assembly ගැන tutorial එකක් ලියන්නද?
  • Apache ගේ මහත පූසා සමග JSP tutorial එකක් ලියන්නද ?
කට්ටිය comment 1කක් දාල යන්න

කොහොමත් Assembly ගැන ලියන්න ඕනැ :)

2/13/10

අපේ කොල්ලන්ගෙ අලුත් වැඩ .....

ඔන්න අපේ කසුන් අලුත් වැඩකට අත ගහලා. ..... ගිහිල්ලාම බලන්නකෝ
http://rantisurf.com
තාම මේක පරීක්ෂණ මට්ටමේ තමා තියෙන්නෙ හවස 7 ඉදන් රෑ 9 වෙනකම් විතරයි විකාශන කාලය

ඔයගොල්ලො ගෙ ගීත ඉල්ලීම වගේම ඔයගොල්ලො ලඟ තියෙන දුර්ලභ ගීත බෙදා හදා ගන්නත් අවස්ථාව තියෙනවා

අහලා බලලා ගුණ දොස් කියන්නකො....

ps :මේකෙ තියෙන තාක්ෂණික පැත්ත ගැන ලිපියක් ඉදිරියට ගේන්නත් බලාපොරොත්තු වෙනවා

2/12/10

දිනචර්යාව

ලියන්න දෙයක් හිතට එන්නෙම නෑනෙ .....
බලමු...අහ් මගෙ සාමන්‍යය දිනචර්යාව කියන්නම්කො( මෙක මටනම් හරි boring )

04.00 උදෑසන අවදි වීම(කිව්වට මොකෝ ගෙදර කට්ටිය මාව අවදි කරවනවා )
05.30 රැකියාව සදහා යාමට දුම්රිය පොළට යාමට නිවසින් පිටත් වීම
05.57 රත්මලාන බලා ධාවනය වන ස්‍රීග්‍රගාමී දුම්රිය දෙවැනි මැදිරියට ගොඩවිම (ඇමරිකානු සමාගමක් දුම්රිය අධිකාරිය මෙහෙයවයි නම් )
07.35 අනේක විධ අතවර වලට ලක් වී බම්බලපිටිය දුම්රිය ස්ථානයෙන් බැසගැනීම
08.00 late වැටෙයිදෝ සිතමින් රැකියා ස්ථානයට යාම
08.10 sever වල ක්‍රියාකරිත්ව සටහන් ලබාගැනීම හා උපස්ත ගත කිරීම
08.10 දෛනික රාජකාරි අරම්භය (code කිරීම,debug කිරීම )
13.00 දිව ආහාරය ගනීම
13.30 දෛනික රාජකාරි අරම්භය (debug කිරීම,code කිරීම )
17.15 දෛනික රාජකාරි අවසන් කර රැකියා ස්ථනයෙන් පිටවීම
17.32 පොල්ගහවෙළ බලා ධාවනය වන ස්‍රීග්‍රගාමී දුම්රිය අග සිට තුන්වැනි මැදිරියට ගොඩවිම (ඇමරිකානු සමාගමක් දුම්රිය අධිකාරිය මෙහෙයවයි නම් )
19.00 අනේක විධ අතවර වලට ලක් වී පළ්ලෙවෙල දුම්රිය ස්ථානයෙන් බැසගැනීම
19.30 නිවසට පැමින පරිඝණකය ක්‍රියාත්මක කිරීම අන්තර්ජාලයට පිවිසීම
19.45 ඇඟ පත සෝදා ගෙන රාත්‍රී ආහාරය ගැනීම
20.00 twitter face book එකී නොකී සෑම වෙබ් අඩවි වල සැරිසැරීම
00.01 හෙට වැඩට නොයමියැයි සුබ සිහින දකිමින් keyboard 1ක මත නිදා ගැනීම

ඕක තමා හැමදාම කරන්නෙ හෙටත් මම මොනවා හරි ලියන්නම් කෝ

Blog කෙරුවාව

ම්ම්ම්...මේ තමා මගෙ පරණ Blog එක මේක හැදුවෙ SEO classකේ assignment වලට....පරණ පොස්ට් ටික බලපුවම කිව්වැකි මගෙ SEO කෙරුවාව :)
මේක නිකන් තියලා Google ලට බරක් වෙනවට වඩා හොදයිනෙ මොනව හරි ලියන එක ඒ හින්දා මමත් ලියන්න හිතුවා මොනව හරි..
ඒත් මොනවද ලියන්නෙ ඒක ඉස්සරහට බලමුකෝ....