DOS_memory_stub

Method stub

Method stub

Short and simple version of a method


A method stub[1] is a short and simple placeholder for a method that is not yet written for production needs. Generally, a method stub contains just enough code to allow it to be used a declaration with any parameters, and if applicable, a return value.[2]

A method stub may be used to implement an interface that is defined but for which the implementation is not available.

Example

In the following example pseudocode, the function ReadThermometer returns a particular value even though ultimately it is supposed to read a value from a hardware source. It returns a valid value, allowing consuming code to be runnable. The function ignores the input parameter source which is common for a stub.

function ReadThermometer(Source source)
    return 28
end function

Distributed computing

In distributed computing, stub is like a mock object simulates existing code, such as a procedure on a remote machine. Such stubs can be useful in porting.

In RMI nomenclature, a stub on the client-side communicates with a skeleton on the server-side.[3]

Windows/DOS

In Windows and DOS, stub is like a shim small interface code left in conventional memory by self-relocating resident drivers which move most of themselves into upper memory, the high memory area, expanded or extended memory as well as similar stubs to allow the relocated code to communicate with real-mode DOS in conjunction with DOS extenders (like DPMI, DPMS, CLOAKING or NIOS).

See also


References

  1. Nell B. Dale; Chip Weems (2004). Programming in C++. Jones & Bartlett Learning. p. 308. ISBN 978-0-7637-3234-9.
  2. "stub". WEBOPEDIA. 23 March 1998. Retrieved 2012-08-28.
  3. Freeman, Eric; Freeman, Elisabeth; Kathy, Sierra; Bert, Bates (2004). Hendrickson, Mike; Loukides, Mike (eds.). Head First Design Patterns (paperback). Vol. 1. O'REILLY. p. 440. ISBN 978-0-596-00712-6. Retrieved 2012-08-28.



Share this article:

This article uses material from the Wikipedia article DOS_memory_stub, and is written by contributors. Text is available under a CC BY-SA 4.0 International License; additional terms may apply. Images, videos and audio are available under their respective licenses.