Opaque binary blob (OBB) is a term used in
network engineering and
computer science
Computer science is the study of computation, automation, and information. Computer science spans theoretical disciplines (such as algorithms, theory of computation, information theory, and automation) to practical disciplines (includin ...
to refer to a sizeable piece of data, which looks like binary garbage from outside, by entities which do not know what that blob denotes or carries, but make sense to entities which have access permission and access functions to them. It is also a pejorative term for
compiled code without the source code made available (see:
binary blob
In the context of free and open-source software, proprietary software only available as a binary executable is referred to as a blob or binary blob. The term usually refers to a device driver module loaded into the kernel of an open-source ...
).
Use in networks
At least one
network protocol
A communication protocol is a system of rules that allows two or more entities of a communications system to transmit information via any kind of variation of a physical quantity. The protocol defines the rules, syntax, semantics and synchroni ...
,
Advanced Message Queuing Protocol
The Advanced Message Queuing Protocol (AMQP) is an open standard application layer protocol for message-oriented middleware. The defining features of AMQP are message orientation, queuing, routing (including point-to-point and publish-and-subsc ...
, uses the terminology of OBB.
Use in the computer field
Android operating system
An operating system (OS) is system software that manages computer hardware, software resources, and provides common daemon (computing), services for computer programs.
Time-sharing operating systems scheduler (computing), schedule tasks for ef ...
s, starting with version 2.3 code named Gingerbread, use OBBs to refer in one blob to multiple files, maybe even a file system or whole file system in one file. These OBBs are available through the Storage Manager interface in Android.
This is done as a means of
abstraction
Abstraction in its main sense is a conceptual process wherein general rules and concepts are derived from the usage and classification of specific examples, literal ("real" or " concrete") signifiers, first principles, or other methods.
"An a ...
, so multiple applications running on the operating system can more easily access the OBB. For example, if there was a map database (map OBB), multiple applications running on Android 2.3 can access the same maps. This eliminates the need to maintain different map data for different applications with similar functions and features. Many HD games on the Android platform use their own OBB files, to allow storage of large files on the device's external
SD card
Secure Digital, officially abbreviated as SD, is a proprietary non-volatile flash memory card format developed by the SD Association (SDA) for use in portable devices.
The standard was introduced in August 1999 by joint efforts between San ...
.
Tuxedo
Black tie is a semi-formal Western dress code for evening events, originating in British and American conventions for attire in the 19th century. In British English, the dress code is often referred to synecdochically by its principal element ...
middleware
Middleware is a type of computer software that provides services to software applications beyond those available from the operating system. It can be described as "software glue".
Middleware makes it easier for software developers to implement c ...
also uses OBBs to mention
C and
C++ arrays, or typed
data buffer
In computer science, a data buffer (or just buffer) is a region of a memory used to temporarily store data while it is being moved from one place to another. Typically, the data is stored in a buffer as it is retrieved from an input device (such a ...
s. This probably (input needed from experts) is the oldest reference to OBBs used in a computer system.
When a vendor distributes software in an object binary form without any mention of its inner workings or code, it is called a 'proprietary OBB' or 'proprietary blob' or just
binary blob
In the context of free and open-source software, proprietary software only available as a binary executable is referred to as a blob or binary blob. The term usually refers to a device driver module loaded into the kernel of an open-source ...
. This practice is to protect the company's intellectual property, and probably keep a competitive edge (see:
proprietary software
Proprietary software is computer software, software that is deemed within the free and open-source software to be non-free because its creator, publisher, or other rightsholder or rightsholder partner exercises a legal monopoly afforded by modern ...
). This also prevents hackers from improving the system or subverting it. As an example,
Nvidia Tegra has such a 'proprietary OBB.'
See also
*
Binary blob
In the context of free and open-source software, proprietary software only available as a binary executable is referred to as a blob or binary blob. The term usually refers to a device driver module loaded into the kernel of an open-source ...
References
Operating system technology
{{Comp-sci-stub