Knowledge

Code mobility

Source 📝

157:
Mobile code also refers to code "used for rent", a way of making software packages more affordable. i.e. to use on demand. This is specially relevant to the mobile devices being developed which are cellular phones, PDAs, etc. all in one. Instead of installing software packages, they can be
89:
The purpose of code mobility is to support sophisticated operations. For example, an application can send an object to another machine, and the object can resume executing inside the application on the remote machine with the same state as it had in the originating application.
149:, TRUELOVE, and AnnaK emails viruses/worms all were implemented as mobile code (VBScript in a .vbs email attachment that executed in Windows Scripting Host). In almost all situations, the user is not aware that mobile code is downloading and executing in their workstation. 144:
Mobile code can also download and execute in the client workstation via email. Mobile code may download via an email attachment (e.g., macro in a Word file) or via an HTML email body (e.g., JavaScript). For example, the
109:
involves moving the code and the data only. Therefore, it may be necessary to restart the execution of the program at the destination host.
291: 50:
It is common practice in distributed systems to require the movement of code or processes between parts of the system, instead of data.
260: 105:(this is important in cases where the running application needs to maintain its state as it migrates from host to host), while 93:
According to a classification proposed by Fuggetta, Picco and Vigna, code mobility can be either strong or weak:
204: 296: 221: 74: 216: 20: 8: 264: 234: 177: 120: 35:(or moved) from one machine or application to another. This is the process of moving 226: 78: 40: 28: 70: 66: 53:
Examples of code mobility include scripts downloaded over a network (for example
167: 126: 32: 285: 238: 102: 135:— Objects or code with the ability to migrate between machines autonomously. 172: 132: 98: 62: 202: 101:, data and the execution state from one host to another, notably via a 54: 230: 146: 129:— A client downloads code from a remote machine to execute locally. 58: 203:
Fuggetta, Alfonso; Gian Pietro Picco; Giovanni Vigna (1998).
198: 196: 194: 192: 189: 123:— A client sends code to a remote machine for execution. 263:. Australian Defence Force Academy. Archived from 283: 43:as opposed to distributed computation where the 158:"leased" and paid for on a per-usage basis. 258: 220: 209:IEEE Transactions on Software Engineering 284: 73:, Shockwave movies (and Xtras), and 13: 292:Distributed computing architecture 14: 308: 16:Process in distributed computing 152: 252: 116:, exist within code mobility: 1: 205:"Understanding Code Mobility" 183: 7: 161: 84: 27:is the ability for running 10: 313: 139: 97:involves moving both the 31:, code or objects to be 261:"Mobile Code Security" 112:Several paradigms, or 39:across the nodes of a 21:distributed computing 114:architectural styles 95:strong code mobility 107:weak code mobility 259:Dr Lawrie Brown. 231:10.1109/32.685258 178:Remote evaluation 121:Remote evaluation 304: 297:Types of malware 277: 276: 274: 272: 256: 250: 249: 247: 245: 224: 200: 79:Microsoft Office 77:embedded within 71:Flash animations 67:ActiveX controls 312: 311: 307: 306: 305: 303: 302: 301: 282: 281: 280: 270: 268: 267:on 3 April 2012 257: 253: 243: 241: 201: 190: 186: 164: 155: 142: 87: 17: 12: 11: 5: 310: 300: 299: 294: 279: 278: 251: 222:10.1.1.20.3442 215:(5): 342–361. 187: 185: 182: 181: 180: 175: 170: 168:Code on demand 163: 160: 154: 151: 141: 138: 137: 136: 130: 127:Code on demand 124: 86: 83: 15: 9: 6: 4: 3: 2: 309: 298: 295: 293: 290: 289: 287: 266: 262: 255: 240: 236: 232: 228: 223: 218: 214: 210: 206: 199: 197: 195: 193: 188: 179: 176: 174: 171: 169: 166: 165: 159: 150: 148: 134: 133:Mobile agents 131: 128: 125: 122: 119: 118: 117: 115: 110: 108: 104: 103:process image 100: 96: 91: 82: 80: 76: 72: 68: 64: 60: 56: 51: 48: 46: 42: 38: 34: 30: 26: 25:code mobility 22: 269:. Retrieved 265:the original 254: 242:. Retrieved 212: 208: 173:Mobile agent 156: 153:Renting code 143: 113: 111: 106: 94: 92: 88: 63:Java applets 52: 49: 44: 36: 24: 18: 81:documents. 37:mobile code 286:Categories 184:References 55:JavaScript 47:is moved. 239:0098-5589 217:CiteSeerX 271:23 April 162:See also 147:ILOVEYOU 85:Overview 59:VBScript 33:migrated 29:programs 244:29 July 140:Viruses 41:network 237:  219:  75:macros 273:2012 246:2009 235:ISSN 99:code 45:data 227:doi 61:), 19:In 288:: 233:. 225:. 213:24 211:. 207:. 191:^ 69:, 65:, 57:, 23:, 275:. 248:. 229::

Index

distributed computing
programs
migrated
network
JavaScript
VBScript
Java applets
ActiveX controls
Flash animations
macros
Microsoft Office
code
process image
Remote evaluation
Code on demand
Mobile agents
ILOVEYOU
Code on demand
Mobile agent
Remote evaluation




"Understanding Code Mobility"
CiteSeerX
10.1.1.20.3442
doi
10.1109/32.685258
ISSN

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.