ගොඩක් වෙලාවට බොහෝ අයට තියන ප්රශ්නයක් තමයි ඇයි iOS
එක තිබෙන ෆෝන් එකක් සහ android OS එක තියන ෆෝන් එකක සමාන hardware දාරිතාවයන් තිබුනත් iOS එක
slow නොවී android OS එක
slow වෙන එක ගැන.අද ලිපියෙන් කතා කරන්නේ ඒ ගැන
පහුගිය ලිපි වලින් කතා කරා මතක ඇති OS Layer එක සහ application
Layer එක ගැන මෙතැනදී Application Layer එකේ Kernel කියාවලියෙන්
පස්සේ Application Runtime Envirment load කරන
එක තමයි හැම OS එකකම ඊලග පියවර වෙන්නේ.මෙතැනදී mobile os වල Grub application එක
embered කරලා නිසා කෙලින්ම linux kernel එක ලෝඩ් කරවලා ඊලගට ක්ෂණිකව application
layer එක මගින් application runtime enverment එක run කරවන
එකයි කරන්නේ..ඊලගට අපි දන්නා
androidsystem.apk
andoird.res.overlay.apk
com.android.gsm.apk
com.android.internal.res.apk
com.phone.res.apk
com.providers.apk
com.provider.setting.apk
launcher.apk
shell.apk,
කියන application ටික
මූලික වශයෙන් රන් කරවලා එකෙන් background process එක
හදා ගන්නවා
මෙතැනදී background process එකේදී com.android.gsm වගේ
application වලින් providers හදුනාගත්තාට
පස්සේ ඒක API එකක් හරහා com.quealcomm.apk එකට ලෝඩ් කරවනවා ඒ වගේම launcher එකටත් අර බැක් process ටික
දැම්මට පස්සේ
background process එකට smart card read කරන
SmartcardServrice.apk, ගූගල් සර්විස් ලබා දෙන Google Play
Service.apk එකත් ලෝඩ් කරවනවා..
ගොඩක් අය කියන තර්කයක් තමයි Ios එකේ Graphical Coding ටිකේ
Stop කරනවා කියන මතය එතැනදී අපි minimize කරාම application runtime enverment එක ram dumping එක
process වෙන එක නතර කරනවා කියනවා..ඇත්තම කිව්වොත් මමත්
කලින් හිතාගෙන් හිටියේ එහෙම නමුත් එහෙම ios එකෙන්
කරන්න බෑ.
Ios එකේදී ios kernel එක
ධාවනයෙන් පස්සේ ඊලගට runtime enverment එක native
code වලින් රන් වෙන නිසා කිසිම වෙලාවක ram එක ඉඩපහසුකම් සහ data dumping file ගන්න අලුතින් හදන්න වෙලාවක් ගතවෙන්නේ නෑ.මොකක්ද
බොහෝ වෙලාවට ram එකට data dumpin වෙන
නිසා start up prcess එකේදී කිසිම වෙලාවක background app තිබුන පලියට core එකෙන්
ගන්නේ නෑ වෙනම අවකාශයක්...
ඒ කිව්වොත් සරවලම අපි හිතමු කඩයක් කරන මුදලාලි කෙනෙක් ගාව තියනවා දොඩම් ගෝනියක්.නමුත් ඒ දොඩම් ගෝනිය
ගෙදර තියෙන්නේ.කඩේට ගෙන්න බර වැඩි නිසා ගෙදර තියාගෙන ඉන්නවා...කඩේට මිනිහෙක් ඇවිත්
ඉල්ලනවා දොඩම් ගෙඩියක් එතකොට දොඩම් ගෙඩියක් ගෙන්න මුදලාලි කඩේට බඩු ගන්න ආපු
මිනිහාට ඉන්න කියලා ගෙදර ගිහින් දොඩම් ගෙඩියක් අරගෙන එනවා.ඉතින් ටිකක් කාලයක් ඉන්න
වෙනවා දොඩම් ගන්න ආපු කෙනාට
ඔය විදිහට තමයි andoird os එකේ ක්රියාකාරිත්වය දොඩම් කෙදියට උපමා කරේ ram
එක.මුදලාලිට උපමා කරේ runtime enverment එක. කඩේට බඩු ගන්න ආපු මිනිහාට උපමා කරේ application
process එක
ඉතින් කඩේට බඩු ගන්න ආපු කෙනාට ටිකක් වෙලා ඉන්න සිදු වෙන එකට උපමා කරේ (ram
dumping හැදෙන්න යන කාලය සහ process core API එකට කෝල් කරන කාලය)
නමුත් මෙහෙම හිතමු කඩේ මුදලාලි උදේ පාන්දර කඩේ
අරිනකොටම අර දොඩම් ගෝනිය කඩේ තියාගෙන ඉන්නවා.කඩේ ඉඩ අහිරුනත් කමක් නෑ,මහන්සි උනත් කමක් නෑ කියලා නමුත් එතකොට
කඩේට බඩු ගන්න ආපු කෙනා දොඩම් ඉල්ලුවොත් එයාට දොඩම් දෙන්න ඉස්සෙල්ලා වගේ වෙලාව්යක්
යන්නේ නෑ.මොකද දොඩම් ගෙඩි ගෝනිය පිටින්ම කඩේ තියන නිසා ඉක්මනට දෙන්න පුළුවන්.නමුත්
පොඩි ගැටළුවක් තියනවා.මුදලාලිට දොඩම් ගෝනිය කඩේ තියාගෙන හිටියොත් ටිකක් මහන්සි වෙන්න
වෙනවා ඒ වගේම සමහර වෙලාවට දොඩම් ගෝනිය ඉහිරුනොත් අර ගෙදරින් දොඩම් ගෙනාවා වගේ
නෙවෙයි පැය ගානක් යනවා ආයෙත් දොඩම් ටික මල්ලට දාගන්න
මෙතැනදී මම ios එක
ගැන සරලව පැහැදිලි කරේ උපකල්පනයක් විදිහට මෙතැනදී කලින් විදිහටම බඩු ගන්න ආපු කෙනා
application process එක විදිහටයි, මුදලාලි runtime enverment එක විදිහටයි උපමා කර..කඩේට දොඩම් ගෝනිය ගෙනාවා
කියල උපමා කරේ phone එකේ start up එකේදී
ram dumping එකෙන් මුළු අප්ප්ලිකේෂන් ලේයර් එකටම runtime
enverment එකට ලෝඩ් කරවන එක.ඒ කියන්නේ native code පාවිච්චි කරලා රන් කරවනවා. හැබැයි ගෝනිය හැලුනොත්
එකතු කරගන්න පැය ගානක් යනවා කියලා අර්ථ දැක්වුයේ වැරදිලා හරි runtime
enverment එක හිර උනොත් (සාමන්යෙන් එහෙම වෙන්නේ නෑ නමුත්
උනොත් ) ෆෝන් එක හිර වෙනවා විකල්පයක් නැති වෙන්නම..අඩුම තරමින් ෆෝන් එක off
කරගන්නවත් බැරි වෙන්න හිර වෙනවා පැය ගානකින් තමයි
නැවතත් හරියන්නේ. :D එහෙම උනොත් හිතෙයි andoird ඒ අතින් කොච්චර හොදද කියලා....නමුත් ios පාවිච්චි කරන අය හිත කලබල කරගන්න එපා..සාමන්යෙන් iphone
එකක් එහෙම හිර වෙන්නේ නෑ..1000ක 1 වගේ අවම
සම්භාවිතාවය ඒ ගැටලුව ගැන... :D නමුත් ram එකට
වද දෙනවා