Topic: alias names
Topic: descriptive naming
Topic: file
Topic: file directory
Topic: immutable files and data
Topic: names defined by context
Topic: names independent of objects
Topic: object and value equivalence
Topic: pointers to data
Topic: proper names
Topic: unique names
Topic: using an address as a name
Topic: what is a number
| |
Summary
A numeric name is a unique id for a system object within a naming universe (or symbol type). Kent calls this a representative, a surrogate, or a key.
A numeric id separates the system representation of an object from the object's names. Its only function is to be unique. A numeric id allows character strings (Kent's "symbols") to be reserved for description and communication. It also allows names to have a separate existence in the system, with their own descriptions and relationships.
If permanently unique, a numeric id may be used to confirm the identity of a location-based name. Delay before reassigning numeric ids to avoid mistaken identities and enable automatic forwarding.
A numeric id should be singular as well as unique. If not, a reference to an object may be missed since the wrong id was assumed. Also the same object may occur multiple times under different ids. (cbb 6/89)
Subtopic: numeric ID, handle, surrogate
Quote: employee numbers are good representations for entities [»kentW1_1984]
| Quote: an object identifier is a data value that reliably refers to an object, a surrogate [»kentW6_1991]
| Quote: a handle is a symbol that is a surrogate for a thing; a reference is an occurrence of a handle; can be 1:1 [»kentW6_1991]
| Quote: non-literal handles to objects are established by creation operations in some scope [»kentW6_1991]
| Quote: check an address by checking the object's unique identifier [»oppeDC7_1983]
| Quote: surrogates are globally unique [»kentW_1978]
| Quote: surrogates are information free; they do not imply additional information [»kentW_1978]
| Quote: surrogates are atomic, unstructured units [»kentW_1978]
| Quote: a Telesophy label consists of a unique number, a description, and cataloging information [»caplM12_1987]
| Quote: use surrogate values to preserve individual identity; separates object id from descriptive data [»copeG3_1980]
| Quote: use nonsense codes when the naming universe is ill-defined or sparsely used [»poloHN_1980]
| Quote: a surrogate stands for a real thing within a system; its symbols can be different [»kentW_1978]
| Quote: a singular representation avoids multiple representations for an entity
| Quote: an address tumbler is a universal, unique identifier; hierarchically defined [»nelsTH1_1988]
| Subtopic: formating
Quote: print 20-digit cryptographic token in two lines of four-digit groups; significantly reduced error rate [»andeRJ5_1996]
| Quote: survey on the use of check digits for error detection in identification numbers [»gallJA9_1996]
| Subtopic: BigFiles, huge files
Quote: Google uses BigFiles with 64-bit offsets, multiple file systems, compression, and allocation/deallocation [»brinS4_1998]
| Quote: a GFS file consists of fixed-size chunks identified by a globally unique 64-bit handle; a chunk is a Linux file [»gherS10_2003]
| Subtopic: Godel number
Quote: a Godel number is a name for a string [»hofsDR_1979, OK]
| Quote: a Godel numbering defines a number isomorphism for any formal system; typographic rules are arithmetic [»hofsDR_1979]
| Quote: easily identify hierarchical relations with symbolic numbers; e.g., if man is 6 and ape is 10 then neither concept contains the other [»leibGW4_1679]
| Subtopic: separate name/handle from object
Quote: in conceptual modeling, an object is not the same as a unique name; allows missing proper names, modified names, and multiple names [»borgA1_1985]
| Quote: in conceptual modeling, relations are between objects instead of names of objects [»borgA1_1985]
| Quote: with surrogates, symbolic names can be described independently of real objects [»kentW_1978]
| Quote: with surrogates, can avoid confusing assertions about real things, about names, and about relationships [»kentW_1978]
| Quote: to use an abstract type as part of a concrete type, separate the abstract object into two parts: a handle providing the user interface and a representation holding the object's state [»stroB_1991]
| Subtopic: fact as ID relationship
Quote: a fact consists of identifying a relationship between surrogates [»kentW_1978]
| Subtopic: text vs. numeric ID
Quote: two levels needed for names: machine-oriented (a bit string) for storage, protection, etc; people-oriented (a mnemonic string) for reading [»watsRW_1981]
| Quote: symbols that are valid handles to objects in most scopes are typically recognized syntactically, e.g., numbers, symbols, and strings [»kentW6_1991]
| Subtopic: two-level ID
Quote: a number represents an entity if we know the symbol type, i.e., naming universe [»kentW1_1984]
| Quote: V's object identifiers consist of an object-manager-IPC-id (changes on reboot) and a local-object-id (transient name) [»cherDR3_1988]
| Quote: V has globally unique, entity ids for processes, process groups, and ports; now 32-bits, will be 64-bits [»cherDR3_1988]
| Quote: V went from 32-bit ids to 64-bit ids to reduce expected frequency of reuse
| Quote: V process ids are unique within a V domain, i.e., a local network [»cherDR4_1984]
| Quote: internal names for persistent objects by a 48-bit unique id followed by a 48-bit random id; protects name access [»birrAD9_1980]
| Quote: Pilot assigns a unique id (64 bits: time + serial number) to each file [»redeDD2_1980]
| Note: natural IDS -- 64-bit DepotID, world-wide unique with owner; 64-bit ItemID, unique within DepotID; formats with language codes [»cbb_2000, OK]
| Subtopic: physical ID
Quote: a URL identifies a resource in cyberspace, a barcode identifies an object in the real world [»maraH10_1997]
| Quote: unique, physical identification of objects by embedding reflective particles in a transparent adhesive [»bricEF11_1991]
| Quote: WebMark is a public database of (barcode, URL) pairs for retrieving web pages with a barcode scanner
| Subtopic: global identifiers
Quote: unique, system-wide names by capabilities better than symbolic links and remote mounting
| Quote: in a distributed environment need unique, permanent ids (128 bits) for all data [»giffDK7_1985, OK]
| Quote: Satchel uses tokens to retrieve documents any time, anywhere with mobile devices, printers, and workstations [»lammM9_2000]
| Quote: the identity of a CLI assembly consists of an originator key, name, version number, and optional cultural; variations via satellite assemblies [»meijE10_2002]
| Subtopic: network ID
Quote: Apollo's AEGIS single level store uses 64-bit object id plus 32-bit offset for every byte on network; rapid remote access [»giffDK7_1985, OK]
| Quote: Amoeba uses server ports (48 bits) to identify a server independently of its network address
| Quote: Andrew uses unique ids for users and groups; never reassigned since used in many tables; user and group names are easily changed [»satyM8_1989]
| Quote: Dexter components have a globally unique identifier across the entire universe of discourse [»halaF2_1994]
| Quote: each OS6 user has a name, unique number, and index; user may 'log in'; includes maximum disk allocation [»stoyJE3_1972]
| Subtopic: file identifiers
Quote: the full name of a file is file id, version number, page 0; a directory associates strings with full names [»lampBW4_1974]
| Quote: the Unix i-list gives each file a short, unique name; is reliable and simple, with easy access to file information [»ritcDM7_1978a]
| Quote: files in OS6 are first-class values; access heading and body by file handle; heading contains information about file [»stoyJE3_1972]
| Quote: a file is a linear array of data accessed by name or by segment number plus offset; independent of device
| Subtopic: database tuple ID
Quote: a database uniquely identifies every object [»coddEF_1990]
| Quote: the relational model uses user-defined and user-controlled primary keys as unique and permanent identifiers
| Quote: RM/T augments the relational model with system-assigned surrogates for entities [»coddEF12_1979]
| Subtopic: object identifiers
Quote: a backing store server manages persistent objects with internal names; allocates and frees storage space [»birrAD9_1980]
| Quote: an index defines the internal name for objects in a backing store server; objects exist as long as a name exists [»birrAD9_1980]
| Quote: derived Modeler objects named with 48-bit version stamp which hashes the source name, compiler version, switches, and interface version stamps [»lampBW6_1983]
| Quote: Smalltalk uses an object id to access an object through a table; allows objects to move in memory [»krasG8_1981]
| Quote: Smalltalk-80 uses 16-bit object ids [»krasG8_1981]
| Quote: LOOM uses 16-bit object ids in memory and long ids on the disk [»kaehT9_1986]
| Quote: LOOM objects store their own 32-bit id; only used by virtual memory code [»kaehT9_1986]
| Quote: LOOM uses 'leaves' (object stubs) to represent an object that resides on disk [»kaehT9_1986]
| Quote: when LOOM matures an object, it assigns a long id and a new hashed, memory-id; uses forwarding block at old id [»kaehT9_1986]
| Subtopic: problems with ID
Quote: problems with user-controlled keys as permanent surrogates: can be changed, different keys for same entity, entities without keys
| Quote: Thoth depended on T-stability (ids not reused in <T seconds); difficult to implement in a distributed environment [»cherDR3_1988]
|
Related Topics
Topic: alias names (39 items)
Topic: descriptive naming (29 items)
Topic: file (22 items)
Topic: file directory (55 items)
Topic: immutable files and data (59 items)
Topic: names defined by context (36 items)
Topic: names independent of objects (34 items)
Topic: object and value equivalence (60 items)
Topic: pointers to data (55 items)
Topic: proper names (35 items)
Topic: unique names (58 items)
Topic: using an address as a name (22 items)
Topic: what is a number (55 items)
|