пепистги ягтгр сг хети епистг тг епистггс упцист гисс пхг еусгс и диеияисгс ттгт ци тг цсс пястсгс цсгс TELOS цв цв applefi евfl г, ж 1994
пепистги ягтгр сг хети епистг тг епистггс упцист гисс пхг еусгс и диеияисгс ттгт ци тг цсс пястсгс цсгс TELOS евfl apple applefi apple цв I. цв fi applefi applefi в apple етптуи у диптс еиди еусгс свв: евfi еappleapplefi: цв цв тfi еapplefi уappleв ц бfl, вfi, еappleapple fi, applefi вfi, дfi: п apple, applefi вfi, п apple, applefi вfi п еappleapplefi apple сapple г, ж 1994
applefi дfl fi в ц п ц TELOS цв и. цв applefi евfl Tfi еapplefi уappleв пapplefi fi пеяигг г TELOS fl в apple в, applefl apple в appleвfi в applefl apple-. с appleв Ithaca TELOS applefl в appleвfi fi в, applefl apple appleвfi в. т apple fi apple в appleв в applefl, fi apple apple fl в apple appleв. fl apple вfl fl fl applefl apple apple в apple applefi. apple apple appleapple в TELOS apple, ввfi, fi вfi, apple applefi applefl appleвapple apple. fl в apple applefl apple в fi. - applefl в appleвapplefl appleapple в applefiapple fl applefl в fi fi fi fl. в fi applefl fi fi applefl fi fi appleвapplefl в fi apple fl-. fl fi fl applefl, appleapple apple в apple apple в. i
applefl apple fl в flв fi fi fl appleв appleв в - applefi fi apple apple fi fi fl. в fl apple fi fi в fl в fl fl (disk pages). apple fl fi fi appleв apple apple fi. г fl fi fl fi fi. apple fl fi, fi fi apple apple в, apple apple appleapple fi apple fl fi. fi fi applefl apple в -, applefl в fi в apple. г в fl в в -, fl fl appleвapple apple в в. в apple fi apple вfl apple fi. applefi в в fi, fi fi в в, apple fi fi fi appleвfi. fl fl appleapple fl fi вfi, apple в apple applefl apple fi, applefl fl в apple apple fl. еappleapple : и бfl, вfi ii
A Storage and Memory Management Mechanism for Objects in TELOS George Y. Yeorgiannakis Master of Science Thesis Department of Computer Science University of Crete ABSTRACT TELOS is an object oriented language for knowledge representation which provides efficient mechanisms to describe semantic networks. It is used within the ITHACA project for the description of software components that are stored in a Software Information Base (SIB). Software engineers browse through the contents of the SIB and select software components for reuse or update already existing components. The purpose of this thesis is the design and implementation of the various structures that are used for storing the contents of the SIB. These structures are integrated with appropriate mechanisms that provide TELOS applications with an interface to access, insert or update the contents of the SIB, forming a kernel through which all operations in the SIB are performed. Each object is identified by a unique object identifier which is assigned to the object by the system catalogue mechanism. This mechanism implements every access to the SIB for each object and maintains information about the state of the objects and their placement in memory and on disk. The system catalogue is essentially an accessmechanism where objects areaccessed through use of their unique object identifiers. The access methods are efficient, allowing the system to exhibit competitive performance in typical applications. Objects on disk and in memory are represented by identical data structures, avoiding thus the computational cost for transforming them from one format to another when they are exchanged between memory and disk. Objects are organized on disk in object blocks, whose size is equal to the disk block size. Objects are read/stored from/on files in a disk block basis. Objects residing in the same block belong to the same object type. When an object is read from disk, the whole object block where the object resides, is fetched in memory, therefore all other objects residing in the same object block are prefetched. iii
The SIB users identify objects by means of logical names while the runtime system uses the object identifiers for every operation performed on objects. Logical name translation to the corresponding object identifier and vice versa is performed by the symbol table. This table exploits access mechanisms that facilitate efficient translation between logical names and object identifiers. The storage structures for the object blocks, the system catalogue and the symbol table in memory, reside in corresponding caches. The cache mechanisms enable immediate system start-up regardless of the SIB size and enhance system performance which compares to that of commercial object oriented data base systems. Supervisor : Yannis Vassiliou, Professor iv
еfl х fi fi appleapple вfi. ц бfl apple fl в вfl, в fiвfi. х fi fi appleapplefi applefi вfl в.. п apple fi в fi- applefi apple fi apple. еapplefl, fi fi fi иthaca в вfl,. иfl fi fi. Martin Dorr в apple fi apple fi apple вfl fi с fl apple fi fi в apple fi вfl. х fi fi fl т в fi fl, apple applefl в., fl fl в apple apple вfl в applefi applefi apple applefl. т, пapplefi fi и пfi и- твfl в fi fi applefi apple applefl apple. v
vi
п пfl Abstract еfl п в п в с i iii v x xi xiii 1 еввfi 1 1.1 т apple вfl ::::::::::::::::::::::::::::: 1 1.2 г в apple в TELOS ::::::::::::::::::::::: 1 1.3 д applefi в TELOS : : : : : : : : : : : : : : : : : : : : : : : : : 4 1.4 в вfl ::::::::::::::::::::::::::::::: 6 1.5 г applefl :::::::::::::::::::::::::::::::::::::: 8 2 сfi дfl б д 9 2.1 б д :::::::::::::::::::::::::: 9 2.2 т Iris :::::::::::::::::::::::::::::::::::: 13 2.3 т POSTGRES :::::::::::::::::::::::::::::::: 14 2.4 т O 2 ::::::::::::::::::::::::::::::::::::: 16 2.5 т EXODUS ::::::::::::::::::::::::::::::::: 19 2.6 fi ::::::::::::::::::::::::::::::::::: 21 2.7 сapple ::::::::::::::::::::::::::::::::::::: 22 3 т с п ц TELOS 25 3.1 еввfi :::::::::::::::::::::::::::::::::::::::: 25 vii
3.2 apple :::::::::::::::::::::::: 26 3.2.1 :::::::::::::::::::::::::: 26 3.2.2 вfl-fl : : : : : : : : : : : : : : : : : : : 28 3.2.3 apple цfl :::::::::::::::::::: 29 3.2.4 т fi :::::::::::::::::::::::::::: 30 3.3 уapplefl fi в в TELOS : : : : : : : : : : : : : : : : : 31 3.3.1 fi :::::::::::::::::::::::::::::: 32 3.3.2 apple :::::::::::::::::::::::::::::::: 34 3.3.3 еввfl fi в TELOS : : : : : : : : : : : 34 3.3.4 в :::::::::::::::::::::::::::::: 35 3.3.5 apple fi :::::::::::::::: 36 4 fl fi 39 4.1 еввfi :::::::::::::::::::::::::::::::::::::::: 39 4.2 в fi ::::::::::::::::::::::::::::::: 40 4.2.1 в fi ::::::::::::::::::::::::: 40 4.2.2 г fi в fi ::::::::::::::: 42 4.2.3 евв в fi ::::::::::::::::::: 43 4.2.4 в fi вв ::::::::::::::::::::: 44 4.2.5 дfl вв в fi :::::::::: 44 4.2.6 с applefi :::::::::::::::::::::::::::: 45 4.3 дfl fi :::::::::::::::::::::::::::::::: 46 4.3.1 тfi fi (object blocks) : : : : : : : : : : : : : : : : : : : : : 46 4.3.2 с applefi :::::::::::::::::::::::::::: 49 4.4 дfl :::::::::::::::::::::::::::::::: 50 4.4.1 дfl TELOS :::::::::::::::::::: 50 5 в в 53 5.1 еввfi :::::::::::::::::::::::::::::::::::::::: 53 5.2 уappleв в fi :::::::::::::::::::: 56 5.2.1 fi appleв в fi :::: 56 5.2.2 евв appleв в fi ::::::: 57 5.2.3 дfl вв ::::::::::::::::::::::::::::: 58 5.2.4 с applefi :::::::::::::::::::::::::::: 59 5.3 appleв в ::::::::::::::::::::::::: 59 5.3.1 fl fi ::::::::::::::::::::::::::: 60 viii
5.4 в appleв в ::::::::::::::::: 64 5.4.1 ц :::::::::::::::::::::::: 64 5.4.2 дfi в :::::::::::::::::: 67 5.4.3 вв ::::::::::::::::::::::::::::::: 68 5.4.4 :::::::::::::::::::::::::::: 68 5.4.5 вв :::::::::::::::: 70 5.4.6 с applefi :::::::::::::::::::::::::::: 71 6 fi fi 73 6.1 еввfi :::::::::::::::::::::::::::::::::::::::: 73 6.2 fi fi в fl fi : : : : : : 75 6.2.1 в в fi fi ::::::::::::::::::: 76 6.2.2 в ::::::::::::::::::::::::: 77 6.2.3 еapple fl fi fi ::::::::::::::::::: 81 6.2.4 apple ::::::::::::::::::::::::: 84 7 в apple fi 87 7.1 еввfi :::::::::::::::::::::::::::::::::::::::: 87 7.2 пвfi appleв в apple :::::::::::::: 88 7.2.1 п ::::::::::::::::::::: 89 7.2.2 пвfi apple ::::::::::::::::::::::::: 90 7.3 fi apple в TELOS ::::::::::::::::: 92 7.3.1 fi в fi :::::::::::::::::: 93 7.3.2 fi в в ::::::::::::::::: 97 7.4 св fi apple в fi : : : : : : 99 7.4.1 в apple :::::::::::::::::::::::: 99 7.4.2 fi ::::::::::::::::::::::::::::100 7.4.3 apple apple ::::::::::::::::::::102 8 сapple fi евfl 105 8.1 сapple :::::::::::::::::::::::::::::::::::::105 8.2 б :::::::::::::::::::::::::::::::::::::::106 8.3 fi вfl :::::::::::::::::::::::::::::::::108 8.4 еappleflв ::::::::::::::::::::::::::::::::::::::::109 A г g(k) вв 111 ix
B fi в fi 113 B.1 тapplefi ::::::::::::::::::::::::::::::::113 B.2 apple ::::::::::::::::::::::::::114 бвfl 116 x
в п 7.1 apple apple в fi apple :::::::: 93 7.2 apple apple в fi applefi :::::::::::::: 95 7.3 apple apple в fi apple apple- :::::::::::::::::::::::::::::::::: 96 7.4 apple apple в fi applefi apple :::::::::::::::::::::::::::::::::::::::: 97 7.5 apple apple в в apple apple- :::::::::::::::::::::::::::::::::: 98 7.6 св apple в fi :::::::::::::::::::::::::::::::::::::::100 7.7 св apple в fi, вfl apple applefi apple :::::::::::::100 7.8 св apple в fi :::::::::::::101 7.9 св apple в fi applefi fi fi fi 102 7.10 apple в applefi :::::::::::::::::103 B.1 fi в applefi ::::::::::::::::::::114 B.2 fi в apple :::::::::::::::115 xi
xii
в с 1.1 TELOS ::::::::::::::::::::::::::::::::: 3 1.2 г fi fi fl fi :::::::::::: 7 3.1 г fl fi ::::::::::::::::::::: 27 3.2 г fl ::::::::::::::::::::::::::::::: 28 3.3 г fl вfl :::::::::::::::::::::::::::::::: 30 3.4 appleв fl ::::::::::::::::::::: 31 4.1 в в fi :::::::::::: 43 4.2 г fl вв applefi вв :::::::: 45 4.3 сappleвfi fi в apple applefi- ::::::::::::::::::::::::::::::::::::::::: 48 4.4 г в fl fi вв ::::::::::::::::: 49 5.1 fl в в fi :::::::: 54 5.2 е в ::::::::::::::::::::::::::::: 55 5.3 appleв fi вв в в в apple applefl в fl в :::::::: 58 5.4 дfl в в в : : : : : : 65 6.1 дfi в в fi fi :::::::::: 78 xiii
1 еввfi 1.1 т apple вfl г apple вfl fl fl applefl fl- applefi fi б пвfi в (бп - SIB Software Information Base). г бп apple appleв в apple fl - fi в: applefi, applefl. еapplefl, apple appleв в appleв. г вfl fi appleвapplefi и пfi ите applefl appleв Ithaca 1, fl applefl fl applefl в. г appleвfi fi бп вfl в TELOS [?], applefl applefl fi в apple в. с в TELOS appleв fi в apple apple. с б.п.. apple TELOS, в - TELOS fi applefl в apple fl - в fi, fi apple apple applefl в fl, apple fl fl fi/ fi fi. 1.2 г в apple в TELOS г TELOS fl в apple apple в applefl в apple apple ' `` fi'' в. г в fi applefl apple apple 1 Integrated tool for highly advanced computer applications 1
2 1. еввfi в, apple apple fl вfl apple applefl fi в, applefl appleapple applefl apple. apple fi, TELOS fl apple- в. г в applefl apple apple вapple ofi: (Individuals) в- fl (Attributes). вfl в fl apple в apple в TELOS. TELOS apple (propositions). M в TELOS applefl apple apple applefl apple apple в. apple в apple. с, apple applefl fi., appleв apple в, applefl apple в apple apple fi. еappleapple, TELOS applefl apple apple - apple apple в в, apple fl fi appleвfi applefl appleflapple fl apple applefl. fl fl fl applefl -вapplefl (classification-instantiation), - (aggregation-decomposition) вfl-fl (generalization-specialization), - в fl fl. fl вfl applefl fl apple appleflapple. apple apple fi appleв fl apple applefl appleвfi apple apple вfl. т apple applefi fl fi appleflapple fl applefi fi apple. fl apple- TELOS в в fl. вfl TELOS fl. с fi?? apple apple apple applefl appleвfl TELOS apple fl fl appleflapple fl. fi physical object applefl fl appleflapple. fibook, chapter, introduction conclusions apple appleapple в physical object. с appleflapple fl appleapple fl appleapple. еapplefl, fl fi вfl- fl, в introduction conclusions apple apple
1.2 г в apple в TELOS 3 physical object part book part chapters isa isa introduction conclusions my introduction my book my chapter 1 my chapter 2 my conclusions сfi 1.1: TELOS т appleflapple fl fl в. с fi applefl apple fl вfi вfl-fl chapter apple introduction conclusions вfi вfl part book chapter.
4 1. еввfi chapter. т apple вfl book chapter вfl part. 1.3 д applefi в TELOS apple fl applefl apple fl в apple appleвfl TELOS: fl applefl applefl apple apple apple C++ [?], в fi в fi (system catalogue). в fi apple applefl в applefl apple (transparent information), apple apple fi fi fi fl apple fl :, в, в..apple. applefl applefi fi, в в fi в в, applefl apple вfl, fi fi fl в fi fl apple applefi apple fi в appleapple. сapple вfl fi вfl apple apple- applefi applefl apple fl appleвfi в applefl в apple apple fl applefl fi., apple вfl applefi, applefl apple - вfl в TELOS apple apple apple apple appleapple, в. еapplefl вfi fi fi в applefi-, applefl apple fi в apple в. г applefi apple, appleвapplefl apple. с appleв, applefl applefi applefl. с applefl TELOS в appleв Ithaca в apple fl apple fi в apple fi/в. вfl apple apple, в apple в /вfl fi fi/в. еapplefl, applefl apple trigger, в apple apple apple apple fi. apple вapplefi fi- apple fl ввfl apple в apple
1.3 д applefi в TELOS 5 apple в в apple TELOS. fl fi fi fl, appleapple apple. fl apple apple blocks apple в fl apple applefl fl/вfl apple/ fl (disk page). еappleв /в appleapple fl, (buffers) fi fl fl apple fl applefi (fragmentation). TELOS в ( applefl fi fi OID (object identifier) fi ID) apple appleв apple fl. еappleapple, TELOS в ( appleflapple apple fi fl apple в в apple, вfl apple ). apple fi вfi fl apple, applefl в, TELOS applefl в fi. apple applefl (translation table) apple в в fi fl. ц вfl apple (tuple) apple apple в в. т в, apple apple apple fi в (symbol table). г fi fi applefl в в apple, fl в в fi. е linear hashing в fi, вfl fi в, applefl applefl в в apple в в fi. fl fl в, applefl apple appleв в apple apple, applefl fl fi fl. г fi fi fi в fi (system catalogue) applefl apple - fl apple fi apple applefl в. с appleflapple fi в TELOS, в fi fl (indirect) applefl apple fi appleapple-fl в- fi в. г fi в fi apple fl apple вfl в в, fl apple apple applefl в, fl fi в в appleв в fi. - в fi fl appleв, в appleвfi fi
6 1. еввfi fi fl (persistent objects) в appleвfi fi apple fl fi. г fi fi fi fl fi fi fl apple fi??. в appleapple в в fi, fi fl fi. в fi applefl fi fi applefl вfl fl fi в в applefl apple appleapple fi fi в fi. еapplefl, apple fl apple fl fi apple fl fi fi в в fi, в fl. 1.4 в вfl с fi вfl в - fl apple apple в. с fl apple apple fi apple applefi- в applefl в apple в TELOS, fi applefi. с apple fi вfl - в fi в apple applefl fl бп. apple в fi apple fl fi fl apple apple applefl в apple - appleapple в fi fi в бп apple fi (concurrency control). с appleapple apple fi в - в в бп. с apple в fi fi apple - applefl в apple fi, в fi в. еapplefl, apple apple - fi fi в apple appleв apple в в. с apple в fi apple fi apple appleв в apple
1.4 в вfl 7 TELOS Applications system catalogue management routines symbol table management routines MEMORY catalogue cache objects cache symbol table cache system catalogue symbol table DISK objects сfi 1.2: г fi fi fl fi в o apple TELOS appleapple apple applefl fl apple fl в fi в. т в в appleapple applefi fl в, apple в fi applefl apple fl fi. т applefi apple fi fi apple apple apple fl fi.
8 1. еввfi (benchmarks). еapplefl, apple fl в fl appleв. т, в apple apple apple applefl apple вfl applefl apple appleapplefi apple apple apple fi. 1.5 г applefl г apple вfl appleвapplefi applefl appleв ITHACA и пfi ите. г applefl fi в в C++ в - в UNIX. apple fl apple fl (binary files) UNIX в appleввfi fi applefl applefl вfi apple fi UNIX fl apple fi hardware. ц fl fl apple appleapple fi fi в fi (system calls) apple apple в UNIX apple appleв [?]. г applefl вfl 2. с - вfi applefl fi apple fl в applefi. с applefl apple 16.000 в. т applefi apple applefi fi вfl applefl в вfl в applefi в apple - applefl в (apple вfl fi с тfl ) в TELOS apple applefi apple, appleв apple applefl в applefi. в apple applefl applefl fl 2 30 fi, вfl applefi вfi в apple apple 850.000. в в apple fi apple appleвapplefi, apple fi fl apple apple fl.
2 сfi дfl б д 2.1 б д г fi apple apple в в в в fi apple applefi apple fl вfl., fl fl fl в вfl fi: fi fl, CODASYL fi fi. applefl fi вfl в apple appleapple в вfl. г fi вfl applefl apple applefi apple fi fi appleapple apple apple, fi fi fl. вfi apple apple вfl-fl, -apple вfl fl applefl. fi applefl в apple - в в в. в apple fi fl appleвfi, fi вfl, в apple в apple вfi в fi, appleв apple apple applefl applefi [?][?] [?]. т fi apple fl в applefl apple fl apple. т fi fl apple. т fl apple в appleв в apple 9
10 2. сfi дfl б д в. apple applefl [?] [?] applefl apple fi, вfi fl apple applefl appleapple fl apple. apple fl apple apple apple apple applefl apple fi : - в : fl appleв applefl fi. fl в. цfl - : applefl fl fl - apple. г appleв apple в в fi. г fi вfl в fl applefl fl ( applefl applefl вfl). г apple- fl apple (fi) applefl apple fi вfl. fi: fi fl в applefl - apple в apple applefl в. вapplefl apple fl fi apple appleflapple (instance) fi fi-. г вapplefl вfl fl fl вapplefl. иfl fi - fi: с fi- fi applefl вfi fi applefl appleв apple fi вfl fl, в fl fi. с appleflapple fi, fi apple appleв apple (fi fl) fi- apple appleapplefi fl apple (fi вfl) fi apple вfi. apple apple appleapple в- fl apple apple. fi appleapple fl apple fl apple appleapple fl apple apple apple. с fl appleflapple fl apple вfl в fl. г applefl fi fl applefl fi apple fl apple fi fi
2.1 б д 11 applefi в, в fi, fi, applefi appleapple apple fi (concurrency control). п apple apple apple fi appleв fl apple applefl. apple apple вfi в fi applefi вfl. apple fl apple apple applefl apple fi fi apple applefl: в : с fi в apple вfl apple fl. уapple apple в вfl в fi, fi - apple appleввfl. с apple, в fi <в, в >. т applefl в fl в в fi apple fi, applefl в applefl в в fi fi. с appleвв applefl в в. appleflapple fi в в appleapple fl fl fl fi appleвfi в fi applefl fi. в- applefl в fl fl (primary key). сfi fl в fl apple apple fi apple вfl. иfl fi - иfl вapplefl: apple applefl apple в apple apple вfl вapplefl, в apple apple. т - в fi в apple apple в apple., fl fl вapplefl fl-. г fi fi apple appleapple
12 2. сfi дfl б д : fi в fi apple fi applefi. ц appleв, fi в apple, apple apple вfl apple apple fi, appleapple (instances) apple apple в' в- fl. fl applefi fi apple, ввfi fi вfi apple fi fi в' applefl fi fi apple applefi apple appleapple. т fi fl apple applefl вfi apple apple applefl applefl fl fi, fi apple в appleв apple applefl fi fi (stable memory) applefi fi. с [?], fi fl fl вfl: apple fi: apple в fi appleapple appleapple fi. apple вfl: apple appleflapple fi appleapple вfl applefl fl. fi fl apple fi appleapple apple fi applefl. apple apple: fi apple- apple fi fl apple fi apple в ' apple. с appleflapple fi fl в appleapple (instances) apple fi вfl apple fl в fl. с fl apple fi applefl fi fl. с applefl fi applefi apple applefi fl fi. applefl fi apple вfl appleappleapple в [?].
2.3 т Iris 13 2.2 т Iris т fl Iris [?][?] applefl appleapple apple applefi вfi Hewlett-Packard. сapple fi fl appleвв appleвfi apple applefi в apple: apple fi вfl, fi в fl в (hardware) appleвfi. г fi fi applefl apple fl fi: applefi fi (user interface), fi fi (object manager) fi applefi (storage manager). fi fi applefl в fi, fl appleвfl fi. т apple applefl fl :, apple fi fi. fl apple: (apple fl fi fi fl) ( apple appleв fi apple apple ). fi в applefl вfl apple fi. вfl вapplefl applefl в apple fi, fi apple в fl apple fi apple apple. fi applefi apple apple applefi, HP-SQL. HP-SQL apple fl apple (tables) в, applefl apple apple (apple joins)., Iris вfi fl fl в в (tuples) в. г apple fi applefl apple fi applefi, fi fi applefi applefi apple applefl fl fi., apple fl fi fi в, applefl apple fi apple fl fi apple applefl fi fi Iris fl. с apple fi apple в вfl - fi applefi Iris applefl вfi fi applefi.
14 2. сfi дfl б д 2.3 т POSTGRES т POSTGRES [?][?][?] applefl appleapple apple apple apple fl fi INGRES applefi пapplefi Berkeley. fi в fl fi fi apple, в fi fl appleapple applefl fl, fi в. с applefi fi apple в apple (instant recovery) fl appleв fi fl apple apple fi apple fl appleв в. т apple POSTGRES apple - apple, apple fl fl `` apple'' (extended relational) fi `` '' (nested relational). т apple- apple fi, appleapple в fi, applefl fi fl. fi fl вfl:, [?]. б fl fi applefl appleapple apple. fi apple в вfl (views) appleapple в- apple, fl apple. т (versions) fi apple в applefi apple applefl apple fi. ц applefi в apple apple вв applefl apple appleflapple apple applefl appleapple. т applefl apple applefl apple fi. т POSTGRES apple fi вfi fl apple fi fi в appleapple apple fi. fl applefl ввfi, вfi fi вfi. г вfi appleв fl apple apple applefi fl fi fi applefl apple fi apple apple fi. т applefi POSTGRES [?] applefl apple fi applefl -
2.3 т POSTGRES 15 fl appleapple apple fl. г apple в apple fl. вfl fl apple в applefi -, applefl fl apple appleв. fi apple в applefi, appleapple apple вв fl. ц applefl fl fl UNIX ( apple fi apple applefi ). ввfi-, appleв apple, в ввfi-. т в в appleapple apple fi apple fi вfi applefi в в fi. еapplefl, ввfi в appleapple applefl applefl appleв apple вfi fi в, apple fl в fi в, applefl в ввfi fl applefi apple ввfi apple appleв в. вfi apple вfl apple ввfi в. г ввfi fi applefl fl вв apple () apple applefl apple вfi. г fi ввfi fl вв apple appleв в fi. fl вв в appleapple appleв fi вfi. appleapple appleвapplefl fi apple вв fl вв, ввfi apple, apple, applefl apple appleв applefl apple ``appleв'' ввfi. вв, fi, apple ``вв '' (delta records) appleapple ввfi, appleapple applefl fi ввfi fl fi appleв, apple fl в apple fi ввfi appleв. г вfl fi applefl appleвfi, apple apple в apple fi, в appleв в appleвfi. г apple fi в fl в ``вв '' fl apple в. т POSTGRES
16 2. сfi дfl б д в apple appleв fi applefi, fl fl apple apple (consistency). г appleflapple fi вfl fi apple apple appleвfl, fl apple apple fl вfl applefi. г appleflapple fi applefl applefl apple fi fi (stable memory) appleвfi. ц fi fi POSTGRES вfl fi вfl. т apple fi вfl, vacuum cleaner, applefl. г вfl fi ``вв '' apple fl apple fl apple fl вв apple вв в, fl в fl вв. г вfl vacuum cleaner вfl fi ввfi в в applefl apple fl вв apple fl fi, applefl fi ввfi., fl fl fi вfl apple apple applefl apple apple fi apple в fi. fl apple apple fi POSTGRES fi appleв fi applefl (benchmarks) fl fi apple applefi fi INGRES [?]. 2.4 т O 2 т O 2 [?] [?] applefl apple fl apple applefl в вfl в в fi fl appleвfi (CAD), apple fi, fi вfl, apple fi. fl fi fl apple: (i) appleвв apple в, (ii) applefi вfl apple apple apple в (iii) fl apple в apple apple, apple, fi. г fi fi applefl appleвfl fi apple- apple. apple fl вfl, applefl вfl apple, в fi fi apple appleapple
2.4 т O 2 17 apple. applefi fi O 2 Engine [?] applefl apple fl appleflapple: (i) appleflapple fl в fi (schema manager) (ii) appleflapple fl fi (object manager) (iii) appleflapple fl applefi apple applefl apple apple WiSS ( Wisconsin Storage System) [?]. т appleflapple fl в fi applefl fi вfi O 2, applefl applefl applefi (interface) apple apple appleflapple fl fi. т appleflapple applefl в вfl, вfi вfi fi. еapplefl, вfi в apple (consistency) fi fl fi в fi applefl вfl fi apple fl applefi вfl fi. г apple в fi в fi вfl fl applefi. ц в в fi appleflapple applefl в fi O 2 в fi applefl fl apple apple apple apple applefl O 2. Kapple apple apple в appleв apple applefl (apple C++)., applefl fl fl applefl, fi fi в fi applefl applefi apple в appleв, applefl apple в O 2. т appleflapple fl fi applefl apple apple fi, applefl appleвapple вfl appleapple. apple fl apple fi fl fi, fl fl. вfl apple вfl apple apple appleapple fl fi, вfl apple fl вfl apple applefl appleapple fl, вfl apple apple вfl fi applefi (message passing). т apple fl fi applefl вfl, вfi, fi fi, fi fi. appleapple apple в fi, в
18 2. сfi дfl б д в fl fi fi fi fl. т в fi fl fl, flapple. т в в fl fl applefl fl apple. с appleflapple apple fl fi, в fl apple fi fi apple fl appleapple applefl apple appleв fl fi вfl apple fi fi вfl apple. ж вfl applefl apple apple в fi в apple apple. т apple appleapple apple :. в fi apple apple. applefl в apple (, fl apple) fi apple. fi apple applefl appleв fi. еappleapple, apple apple fi. т appleflapple fl fi fl в fi, в fi fl fl fl apple apple. apple вв apple в apple applefi WiSS. г вfl apple applefl fi fi. applefl в fl fl apple apple вв fi applefi, в fl fi apple fl fi. вfl apple fi fi. г fl fi fl fl fl (disk page), apple apple fl apple apple (prefetching) fi apple fl fl fl fl fi. apple fi fl, appleflapple fl applefi O 2 applefl apple WiSS. г вfl apple fi fi applefi., вfl fi fl, applefi fl fl, fl appleapple (recovery). т WiSS applefi в вfl apple. в UNIX fl в fi apple, WiSS applefl fi fl (raw disk partitions) в fl, fl в fl apple
2.5 т EXODUS 19 apple UNIX. т applefi WiSS applefl apple appleflapple [?]. т appleflapple - fl ввfi/в (physical I/O layer), apple fl applefi (fl, fl) - apple/apple. т apple appleflapple fl (buffer management layer) applefl appleв appleflapple в в applefi fl apple fi fl, fl fi fl applefl applefi apple apple fl (LRU policy). fi fl fi WiSS applefl fi fi fl в appleflapple fl fi O 2. с fi applefl fi fi fl в fi fi fl apple applefl fi fl в fl fi fl. т apple appleflapple applefl appleflapple fl applefi. т appleflapple applefl ввfi в fi apple fl apple fl fi O 2. еapplefl, appleflapple apple - вfl в в б-. б- apple apple apple fl O 2 в вfl fl fi fl вapplefl. т fl appleflapple WiSS applefl appleapple fi fi apple apple (apple fi fi fi fi в ). т applefi applefl apple (2 phase locking protocol) apple fi applefl fl. 2.5 т EXODUS apple O 2, EXODUS apple вfi пapplefi- Wisconsin applefl в вfl apple в apple apple. т apple вfl, applefl - в apple fi вfi appleв вfi, вfl appleapple 'fi appleapple apple apple appleвfi. с apple вfl apple applefi в apple вfl apple EXODUS apple apple [?]. г fi applefi fl вfl
20 2. сfi дfl б д applefl в в fi (minimal semantics). г fi apple applefl EXODUS fl applefi, applefi apple bytes fl. т вfl в applefi fl вfl в apple apple applefi. т applefi apple вfl applefi fl fi applefi apple fl apple в fi applefi., в fi applefi applefl. applefi applefi в в apple fl applefi apple в applefi (large storage object). в applefi apple fl fi б +, apple fl ( bytes) apple fl apple applefl в apple. г fl apple fi <fi, fl> в applefl fl. т applefl fi apple fi bytes apple fi в applefi apple apple fl в. в apple apple в ввfi, вfi appleв (rebalancing) б + applefi apple в apple в. т EXODUS applefl fi applefi apple applefl applefi fl. г fi fi, apple fl (file object) в вfl apple в applefi apple fi fi в applefi apple apple. т в fi fi < fl, > в apple applefi. с appleflapple apple fi applefi в apple fl applefl fl apple, в в applefi fl fl fi apple applefl в (large object header) applefl applefl fl б + в в. т fl applefl (apple WiSS) fi fi. еappleapple, apple вfl applefl apple fl- в fi ( в apple fl fi). г appleapple в apple fi fl apple. г apple fi, apple apple вfi apple, вfl logging в apple, в в apple shadowing.
2.6 fi 21 2.6 fi с fl apple apple apple fl -. т GemStone [?] applefl apple fl apple apple fl Servio Logic Corporation. т applefl в в fl appleвfi (CAD), в apple fi вfl. т applefl в appleв Smalltalk в OPAL apple applefl в в. т applefl apple вfl. г вfl Gem - applefl в fl в, вfl Stone applefl fl apple VMS. т в fi в в. fl apple- fi fi fl apple apple apple apple apple. в apple fi fi apple appleapple fi fi appleflfi apple apple вfi. т ObjectStore [?], [?] applefl apple apple applefl fl в в fl appleвfi, apple fi вfl. т applefl apple fi в appleв C++ appleapple apple fi apple вc++. т Versant [?] fl apple apple applefl в fl appleвfi fi вfl. т applefl- apple 3 applefi: fl fi (object manager), applefi fi (object server) applefi (user interface). т, apple apple fi fl, fl fi apple - apple. вfl apple fi appleapple fi fi вfl apple. apple apple apple apple в appleв C++. т Ontos [?] fl apple apple applefl - fi VBase. т applefl applefl apple в
22 2. сfi дfl б д appleв C++ applefl fl в appleв - fi. т apple apple вfl apple apple apple apple fi apple вfl apple. т Orion [?] applefl appleapple apple applefl - в fi, fl appleвfi fi вfl. т applefl, fi в fi appleapple в. apple fi WiSS apple apple вfl. fl apple apple apple вfl, applefl apple apple apple вfl. в apple вfl apple fi apple. apple apple appleapple в apple applefl в в apple apple. т Mneme [?] fl apple applefl в applefi- fi apple fl apple fi в appleв (apple Smalltalk, Trellis/Owl, C++ fi Ada). т applefl apple вfl apple- apple applefl apple applefi apple вfl apple, applefl appleapple apple вfl apple. fl apple в fi., apple apple apple вfl apple apple в-, вfl apple applefl в в fl. 2.7 сapple т fi apple apple fl вfl: fi apple apple apple applefl apple fi apple applefl в appleв apple applefi в в-. с apple вfl fi fi Iris, POSTGRES, EXODUS Orion. с вfl fi fi O 2, ObjectStore, Versant, Ontos Mneme. т apple apple fi apple apple - applefi., apple fi fl fl applefl applefi fi apple
2.7 сapple 23 в fl fi fi fl. т apple apple fi apple apple apple в appleв apple apple apple fl fi fi applefi apple fi appleflapple в appleв., appleapple (pointers) fi. т fi apple apple в вfl fi в fi. ц appleв POSTGRES appleapple fi apple apple в в fi. т appleapple fi apple apple в, fi apple apple apple appleapple fi в apple apple apple (tuple). с fi apple apple apple в appleв в fi fl apple. т apple в apple fl fi., applefiapple fi appleapple apple fl fi fi, fi apple в., fi O 2, ObjectStore, Versant, Ontos Mneme apple apple apple fl fi. fi вfl в apple fi вfl apple в apple fi. с fi O 2 EXODUS в fi fl fi fl apple apple., вfi fi ( в ) applefl в apple. fl fi Mneme GemStone apple в fl apple fi вfi apple apple applefl appleвapplefl fl applefl fi fi. с POSTGRES fl в, applefl fl в., fl apple appleapple fl в fi. T fi O 2, ObjectStore, Versant, Ontos, GemStone Mneme apple apple- apple fi POSTGRES, Iris Orion applefi apple apple appleflapple. т fi POSTGRES EXODUS appleapple fi apple apple
24 2. сfi дfl б д applefl apple fl (clustering). т fi O2, Mneme, Orion Ontos в fl apple apple apple в.
3 т с п ц TELOS 3.1 еввfi H TELOS fl в apple в apple вfi в fi apple apple ' fi в. г в fi applefl в apple в в apple applefl вfl, fl applefl apple apple fl applefl fi в, в applefi, applefl fi. г fi applefl TELOS apple appleв [?], - fi вfi (time reasoning), ввfi в apple apple вfi fl apple fl вapplefl вfl-fl. с applefl TELOS [?] apple applefl apple- в Ithaca apple fl fi вfi, ввfi applefi apple ввfi apple. fi вfi applefl Ithaca, fl apple fi. fl apple (integrity constraints) apple- fi fi (triggers) applefl ввfi fi вfi fi apple fi. 25
26 3. т с п ц TELOS 3.2 apple т apple в TELOS fl apple apple appleв appleв-., fl appleв applefl fi (Object). apple apple apple fi Object. г Object apple apple: Individual, Attribute, Class Token. с Individual, fi, apple fi... г fi applefl в apple - appleв. г Attribute applefl в apple в appleв. с fi,... б вfl apple (Object) в TELOS в fl. г Class applefl в fi в, apple. вfl apple apple apple fi Token. ц appleвfl fl, appleв fi apple fl fi Integer, Real String. appleвfl apple apple в apple вfl '. apple appleapple ( apple в appleвfl ) - apple в вfl в fi. с в TELOS в fi applefl apple applefl. с fi?? fl fl fi apple apple в TELOS. applefl applefl appleflapple apple apple apple. ц appleв, fi applefl appleflapple Individual Class, в applefl appleflapple Attribute Class. 3.2.1 с apple apple в applefi apple., apple apple apple в вfl
3.2 apple 27 Object Individual Class Attribute Token IndClass AttClass S_Class M4_Class M1_Class M3_Class isa links M2_Class сfi 3.1: г fl fi fi TELOS apple apple () Object. Individual Attribute apple apple apple вfl fl. apple fi Token fi apple fl appleflapple apple appleв apple S Class, M1 Class, M2 Class, M3 Class M4 Class.. fi applefl - apple в, applefl applefl appleflapple в fi. дв fi apple apple fi, applefl вfl в fl. т apple appleflapple fi fl apple (tokens), apple appleflapple apple fi apple apple, apple appleflapple - apple apple fi apple -... с в TELOS fl fl в applefl apple fi appleflapple: apple (tokens), apple (simple classes), (M1 classes) M4 classes. г appleвfi в fl в apple appleflapple в appleвfi appleв. г в fl fl apple apple apple в appleapplefl fl в fi. apple fl apple TELOS apple в fi (Individuals), fi fi в (Attributes).
28 3. т с п ц TELOS VEHICLE M2 CLASS ROAD VEHICLE MOTOR VEHICLE AIR VEHICLE M1 CLASS BIKE CAR FERRY BOAT AIRPLANE WIND GLIDER SIMPLE CLASS FORD AIRBUS TOKEN LEVEL instance of links сfi 3.2: г fl с fi fl fl appleflapple fl. appleapple fi applefl appleflapple. ц appleв fi CAR applefl appleflapple ROAD VEHICLE MOTOR VEHICLE fl. apple fl apple apple fi fi appleflapple, apple apple appleapple apple apple apple fi. appleв fl fi??. г CAR - fl apple ROAD VEHICLE MOTOR VEHICLE fl appleflapple apple apple. applefl в вв fi apple вfl apple apple applefl в applefl fl fi. 3.2.2 вfl-fl вfl в applefl в - applefl fi. с appleflapple fi apple вfl в apple - applefl. г fi fi applefl вfl. fl, fi applefl fl вfi fi apple applefl. г вfl fl вfi isa. с
3.2 apple 29 apple в apple (superclass) apple applefl, apple (subclasses) в. г вfl applefl fl fi applefl fl- fl appleflapple. apple б apple в TELOS fl вfl applefl applefl applefl applefl applefl apple appleapple вfl. еapplefl, apple applefl apple apple fl apple вfl apple apple fi appleapplefi. дв- apple в apple apple fi apple в apple apple, applefl вfl fl (fl вfl) applefl fi в. г fl вfl apple fl в fi fl в в apple apple apple fl apple. г fl вfl-fl fl в apple fl, apple в TELOS. fl fl applefl apple apple. ц appleв, fl fl applefl fl appleflapple appleflapple apple apple fl fl. с fi?? apple appleв fi вfl- fl. 3.2.3 apple цfl apple вfl TELOS applefl в applefl (aggregation) (composition). с appleflapple -, fl apple applefl applefi apple вfl. ж вfl apple apple, applefl apple apple. fl вfi part-of. с appleflapple fi, fl apple apple fi, apple appleflapple, fl apple fi в apple apple fl fi. г apple apple fl apple, apple apple fi fi. т вfl TELOS fl fi.
30 3. т с п ц TELOS CAR FAMILY CAR EXECUTIVE CAR STATION WAGON SEDAN SPORTS CAR Isa links сfi 3.3: г fl вfl гsedan applefl fl FAMILY CAR EXECUTIVE CAR fl CAR. г fl fi fl appleflapple. в applefl apple fl applefl applefl applefl apple fl applefl applefl. еappleapple, apple apple applefl apple в applefl apple вfl. с apple, вfl TELOS apple. fl, apple applefl в apple appleвfl (apple, appleв, fi), applefl в apple fl applefiapple fi. apple в в, applefl appleapple fl appleflapple apple fl., вfl вfl в, apple fl - (class-composition hierarchy). appleв fl fi??. 3.2.4 т fi fl appleв apple TELOS в-. т в applefl apple apple, fi fl в. т в fl apple fi fl в. т в
3.3 уapplefl fi в в TELOS 31 SEATS has seats ROAD VEHICLE MOTOR VEHICLE powered by MOTOR M1 Level CAR SEATS car seats CAR car engine CAR ENGINE has size SIZE S_Class Level attribute links instance links сfi 3.4: appleв fl г fi CAR applefl appleflapple VEHICLE MOTOR VEHICLE fl apple в has seats powered by applefl appleapple fl вfl car seats car engine. To applefl в apple fl appleflapple S Class apple appleapple applefl в вfl has seats powered by apple fl appleflapple M1 Class. в вfl fl в applefl fl. еapplefl, fi applefl applefl в в вfl. с appleflapple fi TELOS вfl в в вfl. 3.3 уapplefl fi в в TELOS TELOS в appleflapple applefl fl fl fi (classes) (tokens). с appleflapple appleapple вfl fl вfl appleapple fi apple fi S Class appleflapple, applefl apple appleapple. вfl (fi ) apple, fl fi. TELOS, в, applefl applefl., fl fl в. в apple apple в apple вfl apple TELOS, - SYSID (apple в fi ввfi в, system identifier) fl в OID (object identifier) -
32 3. т с п ц TELOS. в fl, appleapple apple вfl в-, fl в (apple fl fi) в в fl apple fi. еappleapple, fi applefl appleвfl в fi в appleвfl apple, fl fi в fi. 3.3.1 fi fi TELOS applefl fl в fi fi fi (Individuals). т в fi apple appleвfl TELOS fi в, apple fi apple, вfl-fl, fi в apple вfl. с appleapple fl вfl в fi apple. с fi apple apple fl TELOS, в applefi appleв appleв. вfi apple apple fl appleв fi fl. б apple - в, вfl fl apple apple apple, apple apple, - (fi fi)., в applefi appleвfi fi fl apple fi apple apple вfl fi applefl. appleapple apple appleв applefl (closure) fi в. еapplefl, в fi в appleвfi apple, fi appleflapple applefl fl applefl (individual) fi в (attribute). - class nodes с вfl fi fi fi (individual classes). apple applefi в apple в
3.3 уapplefl fi в в TELOS 33 fi appleвfi apple в apple apple в fi apple applefl fi. т в fi fl : instance of: apple applefl appleflapple applefl в, instantiated: apple apple apple appleflapple в, isa: apple apple в, subclasses: apple apple в, links: apple (вfl) apple - apple в в applefl, linked by: apple в applefl applefl applefl triggers: apple apple fi apple в в. - link classes с вfl fi fi в (attribute classes). г fi apple в fl flfiappleв, appleapple в в в. г fi apple apple appleapple applefl applefl applefl appleapple applefl в вfl в : from-node: apple в fi apple appleв apple applefl applefl в в to-node: apple в fi apple appleв apple applefl applefl в в.
34 3. т с п ц TELOS 3.3.2 apple apple fl appleflapple (token level) applefl fl apple (individuals), fi apple - (attributes). appleflapple, applefl appleapple (instances). еapplefl, appleflapple appleapple fi вfl-fl., apple в apple в fi instantiated, isa subclasses, apple в fi. еapplefl, apple в fi trigger applefl applefl в в вfl fi вfi fi applefl apple appleapple. applefl - token nodes с вfl fi fi apple (individual tokens). г fi apple- в fl apple fi, вfl fi applefl apple appleapple. applefl - link tokens т apple вfl (attribute tokens) apple apple fi вfl fi (link tokens), fl вfl applefl applefl apple apple applefl apple ( fi ). 3.3.3 еввfl fi в TELOS е apple appleв apple fi, apple apple в - apple applefi apple fl fi в TELOS, apple apple apple fi apple fl apple - apple в appleв fi apple applefl appleвfl TELOS. apple apple TELOS apple apple applefl appleв fi. fl Object applefl applefl apple apple. Individual Attribute apple Object apple apple fl fi. еapplefl, apple Class Token apple apple fi
3.3 уapplefl fi в в TELOS 35 apple apple fl fi fl. fi TELOS fl apple в appleflapple, appleapple applefl fl applefiapple appleflapple. г fi apple apple, apple apple в fi в apple fl apple fi., apple в' apple apple fl applefiapple fi. г appleвfi apple fl fi, в apple apple apple apple fi appleapple apple apple fl apple fi. е fi вfl в applefi appleflapple fl apple applefl apple вfi appleвfi TELOS. fl Token Class, S Class, M1 Class,..., M4 Class, appleflapple fl fl apple в applefiapple - вfi appleвfi appleв. т в appleвfl вfl Integer, Real String. appleвfi fi fl apple apple fl appleflapple S Class. 3.3.4 в с applefl apple appleв вfi apple в apple (class node, token node, link class link token) apple apple в appleв C++. т в в fi apple apple apple fl в 1 applefl apple- fl apple в apple apple apple fl apple fi в в fl apple fi. еfl apple apple apple fl fi apple- apple' applefl в в в в fi apple apple в. fi TELOS apple appleв в fi apple appleв apple appleapple fi apple appleв fi. fi apple в appleв, fl apple applefi appleapple в fi apple appleв fi fl fl applefi fi appleв. 1 т apple fi apple в.
36 3. т с п ц TELOS ц в вfl fi apple в fi apple telos oext. г fi fi applefl в в apple apple в fi в fi apple- fi applefl. г fi fi в apple fl apple apple applefi в fi-. appleflapple fi telos oext, apple fl, apple applefl в fi, apple fl apple fl apple apple в в, - в fi в в в в apple. в apple applefi C++ apple. Martin Dorr appleв [?]. 3.3.5 apple fi apple, вfi TELOS apple apple в fl apple fl apple. с appleflapple в, в в applefl applefl applefl, в apple applefl applefl вfl. с appleflapple apple вfl в fl, applefl fl apple. г applefl TELOS, apple apple applefi, в fl appleapple apple fi '. ц applefl, fl applefl apple. х в appleв isa fi FAMILY CAR STATION WAGON (apple apple fi??), fi FAMILY CAR fl apple fi STATION WAGON, в fi в apple STATION WAGON apple в- fi в FAMILY CAR. fl, в fi в apple FAMILY CAR apple в fi в STATION WAGON. г appleвfi applefl в -
3.3 уapplefl fi в в TELOS 37, applefi fi apple fl apple apple apple fl apple fi.
38 3. т с п ц TELOS
4 fl fi 4.1 еввfi т fi apple fi, applefl apple applefl в вfi fl apple apple. г fi apple fl applefl apple apple applefi appleapple [?]. сfi fi в fi. в fi apple applefl в fi apple apple apple apple, apple fi apple appleapple в fi. в fi applefl apple apple apple вfi applefl apple fl applefl в fi вfl. т apple fi fl apple fi applefi fl в apple apple. г appleвfi apple fi apple в fi-, apple apple apple apple fl. с в в TELOS apple fi apple flfi fl. в fi apple apple appleв apple fi, apple applefl в applefi fi. в fi fl applefi fi apple apple apple fl fi в fl в в TELOS. 39
40 4. fl fi с fi fl, в fi fl fi в fi fi, apple applefl в fi fi apple appleв apple fl в fi fl fi fi apple apple fl. fi appleв fi appleв в fi fi fi fl в fi. 4.2 в fi г в TELOS apple applefl apple, apple - appleв, applefl в apple в. т в fi в в fl fi appleapple, apple apple fi apple fl appleflapple. в fi в TELOS apple applefl в в fi, applefl fi apple в. в ввfl fi apple apple TELOS, fi вfi applefl apple. в fi apple appleв fl applefl в appleapple fi apple в. в fl apple appleapple в fi. 4.2.1 в fi т в fi (OID) apple apple - fl, TELOS в fi (system identifiers). г appleвfi fl вв TELOS в fi apple apple в TELOS в appleapple fi. fi fi apple в fi в apple appleвapple '. с fi apple apple 2, в applefl apple fi < fl, >, apple applefl fl appleв fl fl (disk page) applefl fl в applefl
4.2 в fi 41 appleв fi fl fl, apple fi fl. fi apple в, applefl apple fl, в в в. уapple apple в fl apple :. fl, в, appleв applefl apple fl, applefl apple в в, fi applefl fl. fl appleapple applefl appleapple fl (disk accesses), в fl в в вfl appleapple. г fi applefl 2.., в в в. fl fi в- appleapple fl в apple. г apple fi apple apple fi, вfi apple в apple. с TELOS в fi apple ' fi fi apple applefl, apple Mneme [?]. в apple apple fl apple fl, в fi в apple apple fi fl apple. apple, в apple в fi apple apple applefl fl apple вfl в apple applefl fl. т в fi apple fi fl apple applefl apple 30 bits., в applefl apple в в fi 2 30. еapplefi fi в в fi fl (transparent) в, applefl fl apple applefl apple. т в fi fl, вfi apple в apple в fi.
42 4. fl fi 4.2.2 г fi в fi в fi apple applefl apple apple apple- applefl apple apple в. в fi apple (interface) apple apple applefi fi fl apple - вfl: вfl fi вfi fi apple appleapple fi apple fl в apple apple TELOS apple appleapple - fi в fi., в fi applefl fi в. в fi fl applefl apple вв (entries) в., в fi applefl apple 2 30 вв, fl в applefi fi в TELOS. еapplefi apple в fi applefl fl apple в в fi apple appleвfi, в applefl apple fi (segment table) 1 (single indirection). fi applefl apple apple вв. applefi fl apple в, applefl applefl в fi, fi apple вв в fi fi в fi. г appleвfi fi fi в fl fi TELOS apple 6. г appleapple вв в fi вfl в fi в. ц apple в fi apple apple fi fl, fi <fl fi, fl ввfi>.тappleflfl fiapple applefl- apple fl fi (high order bits) в fi fl fi в fi applefl fl ввfi в. т applefl fl ввfi apple applefl apple fl fi (low order bits) в fi, fl в ввfi в
4.2 в fi 43 SYSID ( ) сfi 4.1: в в fi пfl т apple fl appleapple fi fl, fi apple в fl apple apple вfl в fi. fi в fi apple apple. apple - в fi вfi applefl apple fi fl fi??. 4.2.3 евв в fi с apple fl apple TELOS fl ввfi в fi. apple fi, ввfi fi apple applefl apple fi (persistency), apple fi apple fl apple applefl fl apple fl fi. в fi applefl в appleapple, fi apple fi applefl: fl apple apple, fl apple apple apple в, applefi fi applefl в
44 4. fl fi в apple apple applefl в apple fi, в apple в fi fl, apple apple apple, applefl appleв appleflapple fi applefl fl fi. ц apple fl fi ввfi в fi apple fi applefl: fi apple fl,. applefl вfl, вfl, applefl в, fi flapple apple appleв,. applefl apple fl fi fi apple, apple applefl applefl fi apple. 4.2.4 в fi вв еfl applefl в fi fl applefl apple fl, appleapple applefl apple apple вв в fi fl applefl в apple fl fi. ц в fi вв fl applefl, applefl apple applefl в fi в apple fl fi fl., fl apple apple apple applefl appleв apple. 4.2.5 дfl вв в fi вв в fi apple apple ввfl apple apple. apple fi apple в apple apple fl apple fi. вfl, fl в fi- appleв ввfi в fi fl в- fi apple fl ввfi fi в в.
4.2 в fi 45 сfi 4.2: г fl вв applefi вв в вв fl, apple вв. apple, fl в apple вв в fi apple. вв в fi fl apple fl вв. apple - вfl, в fi apple applefl 'fi fl apple fl fl вв. еapplefi в fi в apple applefi вfi apple TELOS fl, в fi fl apple fl вв apple flв fl. т fl fl fl вв applefl fi applefi вв. г applefi fi fl apple fi applefl в fi. т fi?? fl fl вв applefi вв в в fi. 4.2.6 с applefi вв в fi apple fl apple вfl fl fi fl fi (system calls) fi fl apple applefl в UNIX. с fi fl fl fl fi apple applefl fl (file header), apple apple
46 4. fl fi fl apple fl fl вв, fl fi applefi вв, в в fi в fl. т fi вв в fl в fl fl (disk pages) fi вв fl fl appleв (external fragmentation) fl fl., appleapple fl ввfi в fi applefl apple appleapple fl, fi вв apple apple fl fi fi в fi. г ввfi fl вв, applefl apple fl, вfl fl apple apple apple в., fl appleв, вfl вfi apple fl. с appleflapple fi, в fi вв apple fi apple apple fi fi no rollback. 4.3 дfl fi с fl fi fl apple apple fi applefi fl в applefi fi, fl applefi в в TELOS apple apple fi fl fl fl. г fi apple fi fl fi, apple fi apple applefi fl applefi fi fl., appleapple apple fl fl вfl apple apple вfiв apple apple' fi Iris, POSTGRES O 2 apple appleвfl. 4.3.1 тfi fi (object blocks) в fi fi fi fi apple apple fl fi fl. т fi fi в (fl в fl fl) apple apple apple. apple fl apple fi apple appleв fl, fi class node, link class, token node link node. еapplefl, apple (extensions) в apple fi fi.
4.3 дfl fi 47 в apple fi в, applefi fi apple apple fi fi apple в applefi в. т fi fi apple applefl, вfl appleapple fl applefi fl fl., apple apple fi apple apple fl apple 1% 4.7% fi fi. г apple fi apple fi fl fi, в apple fl apple appleapple fl. applefi fi apple, apple apple apple appleapple fl, applefl fl в в apple apple fi. еapplefi apple fl fi вfl fi, apple apple fl fl вfl apple (prefetching) fi apple fl fl fi fi fi. еapplefl, applefi fi fl apple fl fi fi, вfl apple applefl (clustering) apple fl fi fi. т fi fi apple apple fl apple в apple fl fi. с fl fi в в TELOS apple 5 fl fi apple 5 applefi fi. г fi fi fl apple вfl apple fi fi в fi applefi apple fi??. fi fi apple applefl apple apple fl apple- fl apple appleв fi apple fl fi fl fl fi. еapplefl, apple fl в apple fl applefl applefi- fl fi fi. г fl fi fl apple apple вfl apple вfi ввfi applefi. г fi apple- fl в fi fi apple fi??. fl fl applefl applefi fl fl apple apple fi fi fi applefl. г fi applefl вfi ввfi applefi вfl applefl appleapple fi applefl. г apple fl fi - applefl вfl вfl fi в, вfl вfi fi в applefi
48 4. fl fi 1 1 1............. сfi 4.3: с appleвfi fi в apple applefi- apple apple fi. п applefl appleapple, apple- fl fi fi, applefl apple fi fi apple fl fi. fl fl в appleв. applefl apple fi, fi apple в в apple fi fi apple apple fi, в fi. г apple apple вfl applefl fi fi apple apple fi apple в, fl в вfl в. apple apple fi apple в apple. еapplefl, в apple applefi fl fi в fi (persistent objects) flв fi (non-persistent objects), apple fl applefi Cricket [?]. д в C++ apple applefl в applefl apple applefi apple.
4.3 дfl fi 49. сfi 4.4: г в fl fi вв 4.3.2 с applefi т apple fi fl apple. apple applefi write back, fi fi apple fl fl в fl в apple fi fi., apple fl fl apple fi fl. fi fi apple fl fl в fi UNIX. е, apple applefl fl в fl apple fi fi apple apple applefi. г в apple fl fi в applefi в apple вfl apple в UNIX. т fl fi ofi в в в fi apple fl fi??. г appleapple fl вfl apple bits apple fl. т bits fl apple fl apple fi вв apple apple в. г apple fl fl fl applefl applefl fl. еfl apple fl в apple fl fl fi в apple applefi, applefl в fl вв.
50 4. fl fi ввfl apple apple applefi, applefl apple appleapple fi apple fl fl. г appleapple вfl apple fi fl. 4.4 дfl apple apple fi fl fl appleapple apple apple вfl apple apple в fi. г fl (transaction management) fl apple fl apple applefl appleв apple fi. сfi fl fl appleapple (concurrency) apple (recovery) fi fl. fl appleapple, fi apple fl apple fl apple, apple fi, fl appleв applefi apple appleвapplefl в, fi appleв applefi fl apple вfi. fl applefl apple appleapple в ввfi : (atomicity) (serializability). с apple fl appleapple в вв apple appleвapple apple fl fi apple, applefl appleв fi appleв applefi. г fl apple apple apple fl fl fl apple fl fl apple fl fl apple apple applefiapple fl. 4.4.1 дfl TELOS fl в apple вfl appleв в TELOS, fl apple apple applefl apple (two phase locking protocol). г appleвfi в в apple fl appleapple apple apple вfl, applefl applefl apple apple fi. еapplefl, applefl applefl
4.4 дfl 51 apple fi fi fl apple., apple appleв apple, вfl. с apple () apple apple (growing phase) fl applefl applefl apple fi, apple fl (shrinking phase) fl applefl. с applefl fl fi. fl apple apple, fl fi fi в apple fi ввfi. т appleвapple flв fi fl в apple apple вfi apple fl apple в. в, fl apple fl fi ввfi apple fl fi в, appleapple fl applefi appleapple в вв. fl, fi, applefl. вfl apple apple apple apple, в appleв appleвapple, fl fl в apple apple applefiapple appleapple, applefl apple fl apple. г applefl apple appleapple appleвapplefl fi fi fi (UNIX) apple apple ' fl fl apple., appleapple fl apple apple apple appleapple apple вfl. п apple appleapple, в в вfl applefl applefi fl. еfl в, apple apple apple fl., apple apple, fi fl apple applefl в fl fi вfl, apple в вfi. с appleflapple fi, вfl apple apple apple appleв, apple fi fi apple apple в applefi apple fl.
52 4. fl fi вfl apple flв fl fi appleapple applefl apple fl. е apple applefi вfl apple, applefl apple fi вfl apple appleвapple appleapple fl, applefl apple message passing в applefl вfl apple apple apple appleapple. apple fi applefi fl fi fl applefi, apple applefl fi apple-applefi в вfl apple в fl. с appleflapple, apple fl fi, apple apple- fl appleflapple fl вfl apple.
5 в в 5.1 еввfi в TELOS applefl fl apple в fi apple applefl apple вfi apple - вfl fi. т в fi apple apple в apple вfl apple. apple fi apple fi applefl в apple applefl в в. т в, applefl в, fl apple ( fi apple ) apple appleв appleв fl fi apple apple. ц appleв в apple apple fi в вfl apple fi apple appleв fl fi fl, apple apple в fi fi apple appleв. fl, в appleв fi apple fl fi apple fi apple в apple fi fl fi. т TELOS в fl fi apple fi appleapple fl apple fl в fi apple fl apple fi fl в fi apple apple appleвfi fl. г fl fi в apple fi в fi apple apple fi??. (instantiation) вfl в 53
54 5. в в SYSID(a) SYSID(b) SYSID(c) сfi 5.1: fl в в fi fi в fl, fi fi, applefl fl в fi a, b c. apple fi appleflapple., вfl apple apple fi appleapple, fl в в appleapple ( fi fi в ). ц appleв, fl FORD OPEL fi?? apple fl в fi в в apple в appleapple fl appleapple fi fi. т в в (individuals) fl в, в в вfl apple apple. с appleflapple, вfl fl в fi apple fl, fi в applefl fl fl в в в в. с appleflapple fi, в (fi в fi, fl ) в apple в., applefl в fl appleflapple в, в. в в apple, в applefl apple в в вfl в. в, в в apple вfl в.
5.2 еввfi 55 M1 Class OPEL S Class FORD instance link сfi 5.2: е в т fl FORD fl OPEL fl в fl ввfl, вfl apple в в appleapple fi в apple applefl appleapple., fl в, вfl в в apple apple fl в в в вfl., fi?? FORDг fi в fi в FORD. apple, fl fi applefl в- fi в appleapple.,, applefl в fi в fi apple. fi в, fl fi appleapple apple, applefl в fi в в apple, apple в fi fi. fl fl apple- fl applefi в в в fi fl. в в fl apple appleв в fi appleв в.
56 5. в в 5.2 уappleв в fi в applefl apple в TELOS apple fl в в applefl fl в в fi apple applefl. еapplefi в в в TELOS appleapple в вfl, в вfl fl apple в applefl fl в в apple apple fl applefl в в., в в вfl applefl applefl apple в fi apple fl в apple fl. в apple applefl вfl (apple fl fl в ) в fi apple. в applefi в вfl, вfl apple в. в в apple applefl в fi fl в fl apple fi apple apple applefl apple apple applefiapple applefl apple fi apple в. apple apple appleвapplefl fi apple appleapple fl apple apple, appleapple вfiв в fi в apple в applefi fi. 5.2.1 fi appleв в fi в fl в в apple apple appleapple appleapple, ввfi, вfi fi вfi в в apple fi applefi, applefl fl в в fi appleapple вfi fi appleв в fi. apple appleв, в fi apple- ' fi fi apple applefl. еapplefl, fi в fi appleapple appleapple вв в fi. appleapple appleв в fi вfl в fi apple apple- fl fl в в, appleв в
5.2 уappleв в fi 57 fi applefl вfl fl в fi., appleв в fi fl applefl apple вв в. ввfi fl в fi apple в appleв fl. ж в в applefl apple в appleapple applefi fi. в appleflapple apple в fi appleвfi в applefl apple fi (segment table). в applefl fl 1 (single indirection) fi applefl apple applefi вв. fi applefl ввfi в fi fi appleв в fi apple appleв 6. т в fi apple fl applefl вfl appleapple appleв в fi в в. в в applefl, в fi fi <fl fi, fl ввfi>, apple fl fi fl fi applefl fl в ввfi, applefl fl ввfi fl ввfi fi fi appleв в fi apple apple. fl fl apple appleв в fi fl fl apple в fi apple fl fi??, applefi fl apple fl fl fi ввfi в в вв в в fl. 5.2.2 евв appleв в fi вв appleв в fi apple в fl в fi в apple appleв fi. ввfi fi в, applefi в вfl apple fl в ввfi, вfl fl в в в. с appleflapple, fi applefl applefl в в в в в вfl apple в в, в loginam в fi apple applefl в в. еappleapple, вв appleв в fi apple
58 5. в в SYSID(A) OPEL SYSID(A) SYSID(0) SYSID(B) SYSID(B) SYSID(A) SYSID(C) FORD SYSID(C) SYSID(0) SYSID(D) SYSID(D) SYSID(C) сfi 5.3: appleв fi вв в в в apple applefl в fl в с fi fl в fi applefl вfl appleapple fl вв. г ввfi в в OPEL apple, apple в в- fi, в fi SYSID(0) apple fl. ц в fl fi ввfi apple в fi SYSID(A) apple в applefl в в- SYSID(A). г ввfi в fl в fl FORD apple в fi, fi SYSID(C). applefl в fi apple applefl в вfl в. с appleflapple в, в- applefl applefl applefl в applefl fl в ввfi. т applefl applefl в вfl applefi в вfl apple fl appleв fi??. 5.2.3 дfl вв с fl fl в fi, apple- в в fi fl вв applefi вв, вв apple fi applefl в в fi в в ввfi. г ввfi fi вfi, вfl apple'fl apple в fi, applefl applefl appleв в-
5.3 appleв в 59 fi в fi ввfi appleв в fi fl. г fi appleapplefl fl appleв в fi apple apple fi appleapple applefl apple fl fi вfi. 5.2.4 с applefi appleв в fi fl fl applefl appleвapplefl fi fl fi в fl fl apple apple в UNIX. fl fl (disk page) apple fi вв, в fl fl в fl fl. т fi вв fl fl apple в fi в вв apple apple, apple fi вв appleвfl apple apple fl в fi в applefiapple ввfi apple в fi. ц fl apple appleв applefl fi no rollback fl applefi appleapple, apple apple fi fi в appleв в fi. fl appleв, fl в fi вв fi вв apple applefl в fl. 5.3 appleв в appleв в fi appleapple в -, fl в в fi apple fl, apple applefl в fi. fi в, apple appleapple apple, applefl в. apple, в в fl в в apple, в в вfl apple apple. apple fi в fl fi apple в, вfl fi apple в fi в appleвappleflfi. г в ввfi (Data Entry Language) [?] apple applefl в ввfi, fi fi вfi fi applefl
60 5. в в apple в в fi., в в fi appleapple fl apple, apple ввfi. ц applefl в fl в fi, вfi fl - (hashing) fi apple в (linear hashing). с fl вfl applefi apple- fl apple fi apple apple apple apple, applefl apple appleвapplefi в appleв в. 5.3.1 fl fi fi вв appleв в applefl в в вв, fl fi appleв apple- fl fi applefi. сfi fl fl, apple fl fi в - (hash tables), apple fi fl. г fi fl applefi apple. с appleflapple в в TELOS, fl. fl fi apple applefl apple вfl fl applefl fl apple applefi, apple applefl apple вfi. сfi fl apple в в в. fi вfl apple fi, вfl apple applefl в apple apple apple: appleapple: apple applefl в fl в applefl apple в. с appleflapple - в в, fi fl ввfi apple apple в в, apple fi apple apple вв fl в в fi-. ввfi: apple applefl в ввfi ввfi - fl в в fi fi fi.
5.3 appleв в 61 вfl fi, apple в apple fl ввfi, applefl apple applefl в fi fi apple ввfi. вfi: apple applefl в вfi в ввfi apple fi fi. вfl fi, apple appleapple в в ввfi, applefl apple applefl в fi apple apple ввfi apple в. apple : apple в applefi - в в fi. apple applefl в applefi вв fl в в fi fl apple fi. г в fi fi appleapple в apple apple в applefl в. т в appleapple apple applefl fi fl, apple apple fl apple appleвfi apple apple, fi apple apple. в apple fl apple apple apple fl fi apple (storage utilization) apple fl в applefi вв apple appleв apple apple applefi вв apple apple, fl fi apple вв (buckets) apple. дfi, apple ввfi, fl fl fl в вв в applefifi, apple apple вв apple apple apple fi вв. б- fi б- fi [?] apple apple в в fi fi. еapplefi apple fl вв в fl applefi, applefl вfl appleв б- applefi apple. apple apple б- appleapple apple в., apple вв вв fl appleв. еapplefl, в fl applefl
62 5. в в apple в вв. б- fl k. applefl apple k вв k + 1 fl. еapplefl, б-, apple fl, apple b k 2 c вв. т h б- apple apple N вв fl: log k+1(n + 1) h log + 1 b k c+1(n 2 2 еapplefi б- apple вв, apple б- applefl apple fi в appleвappleflfi, apple apple. п apple apple applefi apple в в applefi вв fi б-, appleapple apple apple applefl [?]. ) fl k. г fi fl applefi в applefl appleвfl в, applefi applefi apple appleapple в applefi apple applefl apple '. г applefi apple applefl fl б + - [?]. с б + - вв applefl fl, appleapple apple fl appleв apple appleapple fi appleвfi appleв appleapple. г appleapple в ввfi applefl appleapple fl apple fl fl fi. г ввfi fi вfi вв applefl вfl apple applefl (overflow) fi applefl (underflow), в apple applefl apple. applefl appleapple fl apple ввfi apple fi k вв applefl apple applefi вв (fi b k 2 c) apple apple вв в. с вfl [?] apple apple fi б + -. с apple б + - apple (б + -trees with partial expansions), apple в в applefl fl apple. т apple fl fl в apple б + -, applefl apple
5.3 appleв в 63 fl apple fi 81 %. т fl applefl appleapple вfl в fl apple. fl (hash mechanisms) fl apple applefi fi в в fi. с apple applefi apple вв (buckets) в (apple б + -) вв fl fi -, applefl вfl appleapple fi. apple ( fi apple ) fl fi, вfl вв apple apple ввfi в- fl fi. ц appleв, apple fl ввfi apple apple fl apple в в fi appleвapplefl в, fl вв apple fl ввfi. ц fi ввfi вв apple apple applefl fi. fl fl apple fl fi appleapple (1) в fi apple appleapple fl (logn) apple N fl applefi вв apple apple. fl fl. г apple вfl applefl fi apple, вfl applefl в в apple applefi fi. apple fl - apple apple fi, applefl вfl appleвfi вв. с вfl fi fi fl apple composite perfect hashing [?], bounded disorder file organization [?] virtual hashing [?]. fl вfl fi apple apple вв appleapple fl, apple apple apple fi. еapplefl, apple applefl [?] fl applefl в в apple вв вв, fl вfi вfl fi apple apple в. еapplefl, в apple applefi вв apple apple в apple в вв. г в (linear hashing) apple apple apple
64 5. в в W. Litwin [?] [?] applefl applefl вfi apple в apple в вв, apple fi apple. 5.4 в appleв в г fi apple apple в в appleв в fl в, apple applefi apple в apple fl apple apple applefl apple. с, apple в, - apple apple appleв в. еapplefi в apple apple fi в в fl, fl applefl fi в вв apple fl fi. 5.4.1 ц в apple apple W. Litwin 1980 apple applefl в в fl applefl apple- fi. fi в (hash table) apple applefl apple N вв (buckets) 0, 1, :::, N ; 1. в в в - apple вв apple., apple apple вв 0 вв 0N, apple appleapple fi вв N ; 1. apple вв fi - appleflapple вв apple apple вв. fl p applefl в fl apple вв apple apple applefl. N вв applefl, в в apple 2N. тfl apple вв apple apple p вfl 0 fl fl apple вв apple вв 0. т fi fl apple вв 0 2N ; 1, fl в в вfl 4N. с fi?? apple fl apple вв в N = 3 p = 0.
5.4 в appleв в 65 () 0 1 2 3 p () 0 1 2 3 4 () p 0 1 2 3 4 5 L = 0 p L = 1 () 0 1 2 3 4 5 6 p сfi 5.4: дfl в в в с в fl N = 3, p = 0L = 0 вfl fl applefi в. с (), () (в) applefl applefi apple (), вfl L = 1 в в apple fl 2 1 = 6 fl fl apple вfl в applefl p. г applefl appleвfl apple fl apple fl fi K в в fl N fi: h 0 (K) =KmodN applefl в в, fi: h 1 (K) =Kmod(2 N ) в в applefl, appleв- вв apple fl apple fl, вfl fi: уappleвfl fi h 0 (K) в fl fi K. fi h 0 (K) fl apple fi p, fl вв apple apple ввfi в в fl, fi applefl. с appleflapple fi, ввfi fl apple вв h 0 (K) fi h 0 (K) +N. г вв fl apple h 1 (K). г вfi в appleв вв apple apple ввfi
66 5. в в fl fi K fl apple: h j (K) =g(k)mod(n 2 j )j = 0 1::: apple N fl в в j appleв apple applefl applefi в. г g(k), apple, fl apple fl fl K apple fl [0, ] apple fl в (fi > 2 20 ). г в applefl appleвfl applefi fi apple: L : apple applefl в в ( в N). p : fl apple вв apple apple applefl. ц p : 0 p N 2 L. в applefl в fi fl. г apple вв fi вв, fl apple apple (load factor) в вв. apple fl apple : apple: apple = вв в applefi вв вв вв fl applefi вв apple apple apple вв. applefi вв =2 L N +(p ; 1) fi в в -. яfl в в apple apple fl- apple в в., в в apple apple applefl в apple apple вfl apple. apple fl fi apple apple fl в fi. еapplefi fi в applefl apple apple apple apple вв applefl fi apple
5.4 в appleв в 67 вв, fl apple apple в apple- apple вв apple applefl apple вв. с appleflapple fi, вв applefl applefl apple в вв apple в в. с appleapple, applefl apple apple appleapple fl в ввfi apple fl fl fi apple fl в в. ц fl appleapple fl. apple fi fl apple 67 % 85 %. 5.4.2 дfi в в в в в fi applefl apple fi (segment table). fi в fl в applefi apple вв, вв fl в. г appleвfi в в appleflapple applefl fl fi appleвfi. еapplefl, в в fi = 8. еapplefi 8 fl 2, в в apple apple fl 2., appleв вв apple fl apple fl K, h j (K) applefl apple apple applefl 3 + j в fl fi g(k). N = 8 = 2 3 appleвfi вв applefl fi h j (K) =g(k)mod(8 2 j )=g(k)mod(2 3 2 j )=g(k)mod(2 3+j ) apple j fl fi apple L. т g(k) applefl applefl apple fi ( apple б- apple apple fi apple) apple apple K apple fi apple applefl в. г apple apple??. г appleapple вв fi вfl apple fl appleapple apple appleв в fi. т apple fl fi h j (K) appleв fi applefl fl вв, в fl appleв вв fi. т fi в appleapple applefl -
68 5. в в fi fi fl applefl fi. 5.4.3 вв вв apple applefi вв apple в в fi. вв applefl apple applefi apple вв, fi вв в. еapplefi applefi вв apple fl в в applefl fl в apple applefi вв apple apple вв, вв apple fl fl apple вв. т в в apple apple вв (primary bucket), applefl applefl fi fl вв в fi. вв apple applefl вв apple applefl apple apple вв fl apple 'fi, fl apple вв. fl applefl в вfl вв. appleapple вв ( apple apple) fl apple вв. ввfi apple applefl. т apple apple fi g(k) в apple в в K apple в fi в applefl fl apple в K. пfi apple вв g(k) fl в applefi fl fl apple в apple в apple apple apple apple ( 96) fi. вв apple fi applefl apple apple apple g()., в ввfi вfl fi fi (binary search) applefl вв. 5.4.4 г вfl apple appleapple fi g() fl. с appleflapple appleв, apple fl fi fl в, в в вfl fi fl apple, fl fl fi. еapplefl, applefi apple в fl apple в apple apple
5.4 в appleв в 69, fl fi в в appleflapple., apple apple fl ( fl fi в ) fl fl fi appleapple apple apple apple apple вв в fl apple. с appleflapple fi, вfl ввfi applefl apple fi - applefl fl fi вв. г fi вв fi fi в вв., вв apple apple fi applefl, в fi в applefl apple вfl - в ( fi fi ). fi fi в fl вfl, applefl fi в applefl. fi appleв в apple fi в applefl в fl в. fl: fi в fi в в apple в в fi в applefl fl в. ц apple fi, fl applefl appleвfl fi fl g() в fl f0 ::2 31 g. fi в K, appleв вв в в applefl apple fl fi appleflapple g(k). т в fi в apple в в applefl fi apple fl g(k) apple apple в fi. apple applefl appleв в fi, applefl вfl appleв в в apple в fl apple. т в вfl в в applefl вfl fi. т apple fi fl в fi в apple в appleflapple в. с fl appleapple в fl, apple fl в fi, в fl в, apple fl
70 5. в в в fi в вfl apple fl в в в applefl вfl fi. fl в fi в apple в fl в вfl в fi в applefl fl в, apple fi fl apple - в fi вfl. г fi в вfl fi g(k), apple в fi apple в fi ( в fi, в fi в apple fl в) в вfl fi fi g(k) fl. еapplefi в вfl fl в в apple fl fl в, apple apple applefl apple в fi в в applefl в fi fi. в вfl fi g(k) fl, fi вfl apple appleв appleflapple, appleвapplefl fi appleв в fi вfl в в fi в apple appleapple, apple apple apple в fi apple apple в. 5.4.5 вв apple fl, вв apple fl в в fl fl apple apple apple вв в fi, fi в apple вв apple fi applefl, apple apple в., appleapple вв в apple вв apple applefl fl вв, applefl fi fl apple вв в в apple fi., fi g(k) в в K applefl fl fi fg(k) : K 2 в g вfl fl fl в, applefi apple в apple applefl applefl fl apple в apple applefl. с
5.4 в appleв в 71 appleflapple apple appleflapple в apple apple в, вв в applefl в apple вв. apple вв в в apple fi fl в fl. fl вв apple, applefl appleapple. apple в вв, applefl в вfl fl в fi apple apple. г appleapple в вв вfl fi вв в applefl apple fi. fi apple в applefi вв в fl в fl fl., applefl вfl appleapple в, fi <fi, > apple applefl fi fl fi applefl fl fi вв fi apple apple. т fi вв fi apple appleapple fi fi. fl в fl вв apple в в apple fl fi fi fl. в вв apple fl вв applefi вв apple fi вв. 5.4.6 с applefi в в вв apple- fl в fi UNIX. т fl apple applefl applefl fl applefl в в fl, apple apple fl в fl. fl fl fl fl fi в fi apple вв. fl fl apple apple apple fi вfl apple apple fi fi вв fl. ц fl applefl fi no rollback, apple fl apple applefl в fl fi вв apple
72 5. в в fl fl.
6 fi fi 6.1 еввfi fi fl apple в fl в applefi в apple в. вfl fl apple apple byte applefl apple, fl в apple- fl apple apple. с fi appleв, applefl apple apple fl applefl applefl fl fi appleв., applefiapple fl appleвfl apple apple в fl, apple fi appleapple fl apple fi appleвfi apple вfl fl applefi appleappleflfi apple fl. т fi fl apple (buffers) fi appleвfi, applefl- apple apple apple apple fl fi. в fi fi fl в fl fi, fi fl - apple fi fl fi fi apple apple вfl. г apple apple fl вfl apple fl fl (disk pages). т apple в fl fl fl apple applefl fl apple apple fl fi appleapple fl. т в fl fl fi applefl 512 4096 bytes. fl 73
74 6. fi fi fl fi, apple applefl в fl в fl fl. apple fi fl apple apple fl fl в. сfi в fl 16 kbytes 16 Mbytes. г appleapple fl apple fl fl fi fl в в apple appleapple fl apple fl fi [?]., fi fl (buffer manager) fl applefl apple fl fi в в в. fl apple apple applefi (interface) applefl appleвapple appleapple apple fl apple в fi fl. apple вfi (logical reference). fl вfi, fl apple в fi apple apple fl fl apple fi. в apple в fi, в fl apple ( apple appleapple, applefl вfi ), fi appleapple applefl apple apple. apple fi fl fl apple, вfl applefi в в fi apple в fi (fi applefi N apple apple), fi applefi apple ввfi вfi fl apple appleapple appleв. apple apple apple в в fl в apple applefl [?] apple fi fl fi apple в N. appleвfl вfi applefl fl fl fi, fl fi appleapple fl apple fl. appleapple fl fi (physical reference) applefl apple apple apple fi fl. fl : в ввfi fl. в fl applefiapple fl applefl fl вfi fl fi. ввfi fl fl fl fl apple fl appleapple apple fi fi (fi fl), appleapple
6.2 fi fi в fl fi 75 appleвapplefl в fi fi apple fl apple applefl в. т appleapple apple fl вfl fl apple fi fl apple appleapple fl. fl applefl applefl fl apple в fi fl applefi вfl apple в (replacement algorithm). в appleapple вfl apple в applefi applefi apple apple - fi fl. еapplefl appleapple, fl, fl apple fl, fl apple вв fl (ввfi fl fl вfi appleвfi apple fl вfi (log file). в applefl apple applefl в (apple в LFU), apple fl в (apple в LRU FIFO), fi apple fl applefl (apple в RANDOM). г apple apple вfl apple fl apple - в вfi., fi apple fi applefl fl applefl apple apple apple ``apple'' вfi appleв apple в в вfi. 6.2 fi fi в fl fi fl в fl fi в TELOS applefl fl, fl apple, apple applefl fl apple в apple applefi apple apple appleв appleapple. г fi apple apple fl в в fi в. apple вfl apple fl fl apple в fl. apple fl fl в fi apple fl fi apple в fi apple appleapple в. т в fl в appleflapple в fl fl в apple fl fl
76 6. fi fi в fi UNIX. пfi fl fi fi fl в fi fl fl в в apple в apple fi fi fi (set associative cache memory) apple apple вfl [?]. еapplefl в fl fi, appleapple applefl вfl apple apple вfiв apple appleapple fl. т, apple fl fi fi fl apple fi appleвfi, apple apple fl apple. 6.2.1 в в fi fi в fi fi в fi в (hash table). еapplefi apple fl в fl apple apple вв в в fl (fl в fi в apple fi fi), в apple в. т fl fi в в fl вfi fl. apple appleв, в fi applefi fi fl apple apple fi fi fl apple вfi fi. еapplefl, apple в, apple fi, вfl вfi fi, fi fi applefl fi /в apple/ fl. г fi appleвfl apple в fl вfi fi., K fl вfi apple fi N в в, fl fi: h(k) = K mod N еapplefi в в fl 2 (- fi apple N = 2 l apple l ) appleвfl (apple fi apple and ) : h(k) = Kand(l ; 1) дfi fi h(k) fl fl (l ; 1) fl fl fi apple в вfi K fi.
6.2 fi fi в fl fi 77 еfl fi apple fi applefi в applefl (l ; 1) fl fl fi apple в вfi fl, apple fl в. ц в, в applefl apple apple apple fi, appleapple fl applefl fl в (fi ) fiapple apple. в apple apple fl, apple appleв apple вfi fl applefi fi в fi apple fl, appleapple fl fl fi apple fl apple applefl applefl вfi. fi apple fl, apple fl fl в fi fi fl appleв. т в applefi fl apple apple fl в - fl 4 16 fl apple fi applefi applefl. т fl fi в fl - fi apple fi appleв apple apple fi в в fi fi apple applefl hardware. г fi в apple fi??. в fl apple apple в вfl ввfi fl apple в. fi fi apple applefl в вfi apple applefi в apple applefl вfi. г fl fi fl apple вfiв applefl appleapple apple fi, в (apple applefi fl apple в ) fl applefl. т applefi fl apple apple fl в, fi в fi в apple fi applefi, applefl fl apple в в applefl - fl apple вfi в fi fi., fl applefi fi в в в TELOS. 6.2.2 в вfi apple fl appleв applefi fl fl fi (в ) fi fl applefi,
78 6. fi fi 0 j... k N-1 сfi 6.1: дfi в в fi fi в в apple fl apple вfi fl в - apple apple apple apple apple fl, fl. fl apple fl fl в вfi. apple fl fi appleapple applefi fl, applefl apple fl apple fl apple. г appleвfi fl applefl fl apple fi вfl apple в. с appleflapple fl, fl apple fl apple, вfl appleapple fl apple fi appleapple '. т fi fl fl apple apple applefl в fi, fl apple apple в fi apple в fl. еapplefl fl appleapple fl, fl fi appleapple fl fi appleapple apple fi apple. в apple вfl. с apple вfl fi в apple apple apple fl, fi apple, apple fl applefl в вfi apple apple, apple fi apple fl applefl fl apple вfl в в., m fl apple fl fi, в fl appleв в m appleapple
6.2 fi fi в fl fi 79 fl в. с appleflapple apple fl apple, fi fi apple в apple fl. apple [?] apple в appleapple appleapple apple fl. с вfl вfl fi в apple - fl apple fl fl (demand paging algorithms). в fl fl в applefl applefl вfi. в apple apple apple apple fi fi fi fi вfl. в apple applefl в apple appleв. с в apple apple, applefi в apple appleв fl applefi в apple appleв applefl в OPT applefi в apple appleв applefl в RANDOM. в OPT fl applefl вfl вfi в applefl applefl в appleвfl applefi в apple appleв. еapplefi в applefl fi applefl в вfl, fl applefi. в RANDOM fl apple appleв fl applefl fl applefl в appleв в. в apple в apple applefi в apple appleв в apple вfl. в apple apple apple applefl apple apple- в в apple apple в fl в applefl apple вfl вfi ``fl ''. - в fl apple apple apple в, apple apple apple fl apple apple fl в. в apple apple вfl apple apple apple apple fi в appleвfi fl apple : apple в apple вfi fl apple в fl вfi fl в fl fl вfi fl
80 6. fi fi г appleвfi apple appleapple fi applefl вfi appleвfi apple applefi. в FIFO (first-in, first-out) appleв в fl apple apple- fi apple fi., в apple applefl fl в apple fl fl в в apple fl appleapple. в LFU (least frequently used) appleв в fl apple apple в. с fl fl fi в apple apple fl вfi fl fi. в fl fl apple apple, fi applefl в fl вfi fl fi в, fl apple fi. в LRU (least recently used) appleв в fl в applefl fl вfi в в. applefl FIX-UNFIX, fi в apple fl fi applefl fl в вfl в, applefl applefl appleвfi вfl LRU applefl fl apple fl в вfl в ' fi в в. в LRU fl apple в fi fl вfl apple applefi apple в apple в. в fi applefl fi apple fl apple fl, apple applefl fl fl fl apple apple. в CLOCK fl в apple fl apple в LRU apple apple. fl fi apple applefl apple applefl fi (use-bit) applefl 0 fi 1 в fl вfi в fl fi. fl fl fl apple. fl use-bit=0, use-bit=1 applefl fi fl fl apple apple fl fi. г fl apple fl apple apple fl в applefl applefl fi fl 0. в SECOND-CHANCE fl fl в applefl fl applefl fi fl apple apple fl ' fi ( apple apple fl), applefl fi fl 0. г вfl вfl LRD (least reference density) [?] applefl fi
6.2 fi fi в fl fi 81 apple fl. г fl apple fi в apple (RD): RD(i) = RC(i)=(GRC ; FC(i)) apple GRC ; FC(i) 1: apple в fl fi: RC(i): fi (reference counter) в fl i. fi apple applefi в fl i, fli applefi fi. GRC: fi (global reference counter). п applefi apple fl fl fi. вfi applefl fi. FC(i): fi (fetch counter). г fi fi fl fl fi GRC вfi apple fl i applefi fi. г apple fi вfl LRD apple apple applefl apple- вfi apple вfl apple applefl apple apple fl. г fi fi apple fi applefl fi в в fi fi apple в appleв applefl в fi RC(i) fi (fi apple appleвapplefl в applefi в )., apple fi RC(i) C apple appleвapple N в fi fi. ц fi appleвfi в C N appleapple вfl fl fi apple, appleв apple fl apple apple applefl вfl. вfl в MFU (most frequently used) MRU (most recently used) - apple applefi в fi fl fl apple apple appleapple вfl apple appleapple в. 6.2.3 еapple fl fi fi с apple apple appleapple, вfl - в apple в apple fi fi в applefi.
82 6. fi fi с fi applefi fl fi fi, в applefl apple в в в apple apple appleapple. в fi fl в в fi fi в fi- fi вв fi apple apple appleв 4.2. т в в fl N 1 = 128 в applefl apple 8 fi вв. т applefi apple apple fl fi fi в fi applefl apple 256 fi в fi fi fl 1 MByte. K fi вв apple fl fi в apple fl fi, fi fi applefl в fi apple applefl 4 MBytes., apple applefl fi fi в в fi fl 5 MBytes. в apple applefl fl appleвfi в- LRU, applefl apple fl apple apple fl. в appleв в apple fl apple fl в applefl applefl fl apple applefl вfi apple appleв fi apple 8 fl. с appleflapple appleв fl apple fl apple в LRU. г fi fi applefl apple fl (reserved pages) applefl fl apple. т fl fl apple apple applefl в ввfl, applefl fl apple fl apple apple applefl в ( apple fi ) fi в ( appleapple в в fl, fl apple, apple applefl apple fl fl). г applefl log 2 N в fl applefl fl fi (apple appleв appleв 4.2.2) в applefl apple applefl apple fi вв.
6.2 fi fi в fl fi 83 тfi fi apple apple fl apple в apple fi в TELOS apple fi fi., в apple fi fl fi fi. еapplefl fi fi applefl в fi fi apple apple apple в. т в в в apple fi fi fl N 2 = 32 в apple apple 4 fi fi. appleflapple fi applefi fi apple apple fi fi applefl fl apple. т в в fi apple apple applefi fl fi fi в fi fi fl 1MByte. еapplefi fi fi в fi fi applefl fl fi fl fi fi в в fi ( applefl apple flв fi apple apple в) fl applefl apple в в. еapplefi appleapple apple fi в fi fi fl fi fi в fi-, в apple applefl fl LRD apple appleв appleв. г в fi fi applefl log 2 N 2 fl fl fi fi, apple- apple fi fi вfl fi fl. т fl apple apple apple fl log 2 l log 2 l + log 2 N 2 в fi, apple l fl в bytes в fi ввfi. в в с в в apple 3 fl fl fi fi apple appleв в fi, apple- в в appleв вв. в apple applefl в fl LRU, apple fi fi в в fi. сfi в в applefl fl в в apple applefl apple apple вfi fi apple - fl, fi appleflapple apple fl appleapple apple, apple в
84 6. fi fi в applefl в в fi apple fl apple appleвapplefl appleapple 'fi., в apple в в appleв fi fl apple в fi. apple apple fl в applefl вв в fi- в в fi apple в apple fi. еapplefi apple в в fl apple в fi, в в apple fi fi в в в fl apple fi fi в в fi., в в в fl 3 = 64 в applefl apple 4 fi вв. т appleapple в fl 1бyte в fi fi в appleв 0.5 MBytes в fi fi в вв. To в fi fi в в вв applefl apple вfl apple fl apple в в fi apple в. ц appleв appleвfi вfi 450.000 в apple 40 fl fl fi fi fl 128 fl. г в fi fi в - в в fl fl apple apple в fi fi в fi. т fi в fl fl fi (appleв 5.2.1), fi g(k) в в в (appleв 5.4.1) fi в- в (appleв 5.4.5). 6.2.4 apple apple apple applefl apple fi fi fl apple apple fl в. fl в apple appleв вfl apple, applefl fi fi fl apple apple applefl вfi. fl fi apple fi fi в fi fi вв apple ввfl fi,
6.2 fi fi в fl fi 85 ввfl. с fi fi в fi fi apple fi fi apple apple fi в fl fi. т fi apple apple вfi fi fi apple. с fi fi appleв в fi в в в, apple fi apple в вв fi fi, вfl fl apple в appleв в в вв. г apple в ввfl fl вfl в apple apple apple в. apple вfl в applefi fl fl ( 13 fl fl: в в fi, 6 в fi fi 1 в appleв в fi, apple fl applefl в apple 5 fl applefi), apple в., applefl fi в appleвappleflfi fi applefl в apple applefi fl applefl в вfl fi. г apple fl apple apple fi, applefl applefl apple apple fl apple fi в apple в.
86 6. fi fi
7 в apple fi 7.1 еввfi apple fi fl apple appleв в в fi appleвfi в apple - вfi. ц apple fl appleв в apple (benchmarks) в apple fi, applefl apple в apple apple apple. т appleв в apple apple apple apple appleвapplefl. ц в fi appleв- apple applefl apple appleвapplefi в apple. apple в fi fl, fi в, fl applefi в applefi в- apple, apple applefl appleвfl fi appleв fi apple. г в apple в apple fi fl fl fi apple вfl fl- apple fl apple apple fi. еapplefl в в apple applefl fi (query optimizer) applefl appleapple fi вв. т fi fl apple fl в (engineering applications) apple fl appleвfi (CAD) fi в applefl в (apple appleflapple fi в 87
88 7. в apple fi TELOS apple apple вfl). apple fi apple apple apple fi fl. appleв applefi apple в TELOS fl fi fi apple fl в fi fi в в fi fi apple apple apple apple fi. с apple appleв fi apple OO1 apple appleв вfl [?] applefl apple appleв в в fl. с fi apple applefi в fl fi в TELOS вfl apple apple в fi fl apple вfl. 7.2 пвfi appleв в apple apple fi apple в в apple в apple fl apple applefl fi вfi fi fl fi apple fi в apple apple вfi fi, apple в вfi вfl apple apple в apple в fi. apple applefl apple apple в apple в в apple в apple fi. е apple applefl в вfi apple appleapple apple в. apple apple вfi fi fi apple вfl fi в. еapplefi вfi вfi fl apple fl appleв OO1., appleв OO1 applefl в в apple в вfl apple fl apple в. вfl apple fi apple appleвapple apple fi fl. fi apple ввfi fi-, fifi fi
7.2 пвfi appleв в apple 89. 7.2.1 п H apple applefl в appleв fi apple fl apple apple apple apple apple fi fl. apple в fl apple fi apple apple appleв fi: fi : RECORD[ id :INT,type : STRING, x, y :INT,build-date :DATE] : RECORD[ from : Part-id, to : Part-id, type : STRING, length : INT] г apple fi в [1 ::: 20000]. apple fi 3 apple fi fi apple., apple 80000 (20000 apple fi 60000 apple ). apple apple apple в appleв fl apple fi apple fi. тappleflx, y length applefl [0 ::: 99999] apple appleв fl applefl type applefl [``part-type0'',:::,``part-type9'']. тappleflbuild-date applefl fl apple 10. т applefl from to в apple в apple вfl apple. ц fl, 90 % apple apple fi apple apple fi applefi appleapple 10 % applefl apple applefiapple apple fi. г fi applefi в apple apple fi fl 1 % fi apple fi apple fl apple в. г apple fl (fi вfi) в applefl id fi apple fi. fi в fi fl [1:::20000], apple fi apple apple fi applefi apple fi в 15000 fl в applefi [14900:::15100]. г appleвfi в apple 90 % apple fl apple fl, apple fl apple 1 % 99 % apple apple fi fl apple apple apple fi.
90 7. в apple fi г apple вfl fl appleapplefi fi apple в apple applefl в вfi fi fi. ж fi fl appleapple apple в в apple в. ц в apple appleв fl fi apple applefl apple fi. т apple appleвapple в, applefl applefi fi fl apple apple applefi fi fi. гfiв. fi apple apple apple в fi в. т fi apple apple fi fi apple apple в fi. apple appleвapple в apple (remote) applefi (local). с apple appleflapple apple apple apple apple appleв apple appleвapple- apple apple вfl. с appleflapple applefi, fl apple fl вfl apple appleвapple apple fi. 7.2.2 пвfi apple т appleв fi apple appleвfl apple fi (response time) fl apple fi. fi apple fl в apple apple applefl fi в, applefl applefl apple fl. с в 3 вfl. вfl fl 10 apple fi в applefl fi fl fl. еapplefl apple fl apple appleapple fi fi, fi apple, вfi apple fi apple. вfl в applefl вfl apple fl fi: (1) fi: вfl fi appleapple fi apple fi в 1000 fl appleв в fi apple fi. ц fl fi fl apple вfl x, y type. (2) д : вfl fi apple
7.2 пвfi appleв в apple 91 fi applefl ( fi apple ) apple fi apple appleв fl. г fi fi apple fi apple appleapple, apple - P fi 7. вfl fi apple appleapple 7 i=0 3i = 3280 apple fi. ц fl fi fl, apple applefl 1. г вfl fi appleвapplefl apple applefl from to apple в apple fi apple fl., вfl fi applefl fi, в fi fl. (3) еввfi : еввfi 100 fi apple fi 3 fi apple в apple. г вfl fi в 1000 apple fi 3000 apple fl 10. с appleflapple fi apple applefl fi fl, в fl appleвfl вfl applefl в fl. вfl apple appleвfl fl appleapple в apple appleвapple apple apple в. ц appleв, вfl fl fl apple в fi fi applefi вfi TELOS, вfl fi fl fl fi fi apple apple fi. apple apple apple вfl apple вfi вfl в fl apple fl. fi в apple apple вfl fi fi fi fi (cold start results). с appleapple applefi в, fi fi fl apple fl fl apple fi apple fi fi fi (warm startup results). с apple appleapple. еapplefi fi apple fi в apple в fi fi, fl fl fi appleвfi fl., applefi fi вfl. г fi fi в fi fi.
92 7. в apple fi т apple в fl fl apple- в. fl вв apple fi 3 apple fi applefl to apple apple, applefl from., - apple fi fl fl fi apple apple fi, appleв apple applefl fi fi. т apple в вfl fl apple apple applefi fi apple fi apple. apple вfl appleapple K apple fi t, apple fi в apple fl fi t3280. г fi fi apple apple fl в K, K appleapple 3280 apple fi. 7.3 fi apple в TELOS т apple appleвapple вfl Sun SPARCstation ELC(4/25) 8 Mbytes fi apple fl 60 Mbytes apple apple swap space. fl apple в fi в applefi. apple apple apple apple fl Sun SS-10. fl apple fl apple 99 %. т в apple applefl fl SunOS-4.1.2. apple, fl apple вfl applefl apple fi, apple fl applefi fi apple вfl apple appleвapple apple-. т fl в apple apple apple apple., apple appleвapplefi, applefl applefi apple fi в вfl. fi apple apple 10 % в в apple fl apple в apple appleв apple appleвapple fi appleввfl apple fi apple appleвapplefi. fi fi apple applefi в apple apple appleв appleв. г apple apple fi- apple fi apple в fl apple fl apple,
7.3 fi apple в TELOS 93 applefl apple 90 % fi apple fi apple applefl appleвfi appleв fi apple. apple apple apple applefl apple fi в apple apple fi. ц apple apple apple, apple fi fl fi fi fi, fi fi fi. г fi fl, apple applefl в apple вfiв fl applefl fi fi., fi fi fl apple fi в fi fi fi, fi в fi fi appleв applefi apple. 7.3.1 fi в fi fi в fi fl apple applefl?? apple apple в fi fl apple fi, applefl fl apple вfl apple apple appleвapple fi. fi в fi apple еfl fi fi fi б fi fi 6.777 0.648 0.880 fi д 18.613 2.244 4.613 fl д 96.015 12.391 20.633 fl д (2) 23.789 2.768 3.403 еввfi 10.400 7.540 7.540 с 35.790 10.432 13.033 пfl 7.1: apple apple в fi apple т applefl с applefl fl в applefl fi, fi д еввfi apple fl apple apple applefl, apple applefl в вfl fi fi fl, appleapple apple fi applefl fi fi, applefl appleвapplefl apple apple 1000 appleapple
94 7. в apple fi apple. г fi fi fl apple в, appleapple apple в в apple appleв apple 10 % в 1000 в, в fl fl apple fl fi applefl 1 apple. в fl appleapple 10-15 msecs, apple 100 appleapple fl apple 1-1.5 apple в appleвappleflfi. еapplefl в apple apple apple applefl?? appleapple apple applefl fi fi fi fl 90 %, appleв apple applefl apple fi fi в apple fi fi. д fi в fl fl fl в appleв appleapple, apple' apple fi fi applefi appleapple apple fl apple. г fi fl вв apple вfl fl appleapple applefi fi. т applefi fl fi 10 500 fi., apple apple вfl fi вfl 10 в apple appleв apple fl apple fl, fl в apple apple в appleapple fl. еapplefl apple вfl fl, appleapple applefl appleв apple fi., applefl fl fi apple applefl apple, applefl fi appleapplefi в fi. ц в appleвapplefi applefl fl в -. ц applefl applefi fi. с fi, apple fi applefl applefl to в apple. дfi fi apple. т applefl fl в fi fi appleapplefi apple - fi, apple apple. fi в applefl fl вfi fl д (2) applefl??. apple applefi fi apple apple 20 % apple fi в fi. г fi appleapple applefl в apple в. fi apple apple fi
7.3 fi apple в TELOS 95 fi, apple fl apple fi appleв в вfl apple appleвapple fi. еapplefl, appleв fi apple в вfl fl fl apple appleapple, appleapple appleвapplefl apple в, apple в fi., fi apple fl fl в, apple apple fi (seek time) в. т, appleapple fi apple apple вfl fl appleв apple applefl apple apple apple. apple apple appleв, fi fl fl. fi apple apple apple appleapple, fl fi в ввfi. в fi apple apple вв в в вfi apple fl appleapple, в TELOS applefl applefl apple. еapplefl fl fl apple в apple в fl apple в, applefi fl fl в apple applefl в fi fl. applefl?? apple apple в fi fl apple fi, applefl fl apple apple fl вfl apple appleвapple fi. fi в fi applefi еfl fi fi fi б fi fi 6.426 0.653 0.759 fi д 17.679 2.281 3.131 fl д 65.186 0.849 22.311 fl д (2) 19.201 3.109 4.346 еввfi 8.100 6.470 6.470 с 32.205 9.404 10.360 пfl 7.2: apple apple в fi applefi fi applefl fl apple fi applefl??,
96 7. в apple fi apple в ввfi. apple fl ввfi fl fl appleвapplefl вв apple appleflapple apple. еapplefl apple apple fl fl fi fi fl, appleв apple applefl fl apple apple fl applefl fl apple apple fl apple apple apple. г в fl fl applefi в apple fi fi. г fi fi fl вв apple apple apple appleapple applefl fl fi fi fi, appleв apple applefi в в apple fl 0.25 msecs. fi в fi apple с applefl?? apple fi в fi apple apple apple fiapple fi fl apple fl apple. fi в fi apple еfl fi fi fi б fi fi 6.767 0.644 0.748 fi д 10.561 1.120 2.010 fl д 12.382 1.567 4.028 fl д (2) 14.914 1.075 2.483 еввfi 7.900 5.510 5.510 с 25.228 7.274 8.268 пfl 7.3: apple apple в fi apple apple apple applefi в fi fi, fl appleapplefi- fi в fl apple, apple fi apple fi fl fl в. сfi fl в fi fl apple fi. fl вв apple appleapple fl applefl -
7.3 fi apple в TELOS 97 fl fl fi fi, fl applefl appleвapple в в. еapplefl в fl fl apple в apple в fl fl. г apple fl apple apple apple fl в в apple appleв в fl apple appleapple apple apple applefl????. с applefl?? apple fi в fl, applefl fi в fi applefi еfl fi fi fi б fi fi 5.435 0.643 0.739 fi д 6.134 0.734 1.559 fl д 13.890 1.095 2.686 fl д (2) 14.054 1.069 1.602 еввfi 7.200 4.480 4.480 с 18.769 5.857 6.288 пfl 7.4: apple apple в fi applefi apple fl apple apple fl вfl apple appleвapple fi. fi applefl fl apple fi applefl?? fl fi в ввfi. fl applefi в applefl???? fl, apple apple fl apple. 7.3.2 fi в в ц в fi в apple, apple fl вfl apple appleвapplefi fi fi в в apple. fi appleвapple- в apple apple apple в fi. fi в fi apple fi??. с appleflapple fi
98 7. в apple fi в appleв apple apple appleapple fl в fl fl. fi в в apple еfl fi fi fi б fi fi 46.061 26.433 29.322 fi д 72.420 49.294 61.119 fl д 65.773 44.112 55.811 еввfi 17.100 11.040 11.040 с 135.581 86.767 101.481 пfl 7.5: apple apple в в apple apple-, fi fl apple в, fl fi fi apple вfi apple, fi apple applefl applefl fl apple в apple. г вfl fl appleвapplefl вв apple вfl fi. fl вв вfl fi applefl fi, appleв apple appleapple fi fi вfi apple. в вfl ввfi fl в. т вfl apple вв вfl fi applefl flв appleapple fl applefl apple fi в appleвappleflfi. г fi в appleapple applefl вfl apple в fl apple fi. еapplefl apple apple fi в fi в fl fl appleflapple. пapple applefi applefl в fi applefl apple в.
7.4 св fi apple в fi 99 7.4 св fi apple в fi с fi apple apple fi в вfl appleв в apple OO1 apple вfl [?] fi fl. fi appleвapplefi apple Sun3/260 в вfl Sun3/280 в apple apple apple. г в fi fl Sun O/S 4.0.3 fl apple applefi fl в 892 Mbytes fi (seek time) 15 msecs., вfl apple в TELOS apple fl apple, apple fl fl hardware, apple apple fl. 7.4.1 в apple в fi в в apple fi apple- в apple applefl fl fi fi apple apple apple applefl???? fl. с applefl apple fl fi OODB, RDBMS INDEX. т OODB applefl ``fi'' fi fl-. т RDBMS fl apple apple fl INDEX fl б + fi. т apple apple fi apple- fl, apple вв appleapple fi apple fi. fl apple вfl fl apple fl fi в. с applefl???? apple applefi apple fi в TELOS в вfl ввfi. fl apple fi apple appleвapplefi fi, TELOS apple apple apple apple fl. еapplefl appleapple applefi apple fi в TELOS в fl INDEX, appleв apple fl вв TELOS appleвapplefl
100 7. в apple fi fi в в apple в fi еfl TELOS OODB RDBMS INDEX fi 46 49 49 47 fi д 72 64 135 56 fl д 65 84 212 100 еввfi 17 10 24 20 с 124 127 208 123 пfl 7.6: св apple в fi fi в в apple fi fi fi fi еfl TELOS OODB RDBMS INDEX fi 26 43 24 18 fi д 49 59 107 41 еввfi 11 7 24 18 с 86 110 155 77 пfl 7.7: св apple в fi, вfl apple applefi apple fl apple apple. т, apple fi в OODB в TELOS apple apple fl fi в TELOS в apple вfiв appleвfl, apple applefi appleв fi-. ц fi, fi fl, в apple appleвapple fi. 7.4.2 fi ц appleflapple fi, apple fi INDEX RDBMS, apple apple в 4 apple fi fl. т fi fl : Objectivity/DB, Object Design Objectstore, Ontologic ONTOS VERSANT TM. fi в fi appleвapplefi fi apple fi в
7.4 св fi apple в fi 101 fi INDEX RDBMS fl applefl вfl [?]. т fi fl applefl fi OODB1 OODB4 fl fl fl fi fi. appleflapple fi apple fi вfl, appleвapplefl fi appleв apple apple fl applefi. с applefl?? apple apple в fi apple в в fi apple fi applefi. fi в fi apple fi fl еfl TELOS OODB1 OODB2 OODB3 OODB4 RDBMS INDEX fi 6.7 18 13 22 20 29 7.6 fi д 10.5 27 13 18 17 94 17 fl д 12.4 34 13 16 22 95 23 еввfi 7.9 14 6.7 3.7 3.6 20 8.2 с 25.2 59 33 44 41 143 18 fi в fi applefi fi fl еfl TELOS OODB1 OODB2 OODB3 OODB4 RDBMS INDEX fi 5.4 12 10 10 13 27 5.4 fi д 6.1 18 10 8.3 9.8 90 13 еввfi 7.2 9 5.3 1.9 1.5 22 7.4 с 18.7 39 25 20 24 139 26 пfl 7.8: св apple в fi г в apple в TELOS fi RDBMS INDEX fl fl apple в в apple в TELOS applefl fi RDBMS вfl apple в fl apple INDEX. свfl в TELOS fi, apple apple apple вfl apple вfl fi apple, fl ввfi, apple apple.
102 7. в apple fi 1 в TELOS fl applefl apple fl в fi, fi fl вfl apple в TELOS apple apple. т, applefl?? apple fi в fi applefi, вfl applefi в вfi apple - fl fi fi. fi в fi applefi fi fi fi fi fl еfl TELOS OODB1 OODB2 OODB3 OODB4 RDBMS INDEX fi 0.6 0.1 0.03 1.1 1.0 19 2.4 fi д 0.7 0.7 0.1 1.2 1.2 84 8.4 еввfi 4.5 3.7 3.1 1.0 2.9 20 7.5 с 5.8 4.5 3.2 3.3 5.1 123 18 пfl 7.9: св apple в fi applefi fi fi fi apple fl applefl, в TELOS apple apple apple RDBMS apple apple fi apple вfl ввfi apple fi apple. fl applefi fi в fi в OODB2, applefl fl apple fl fi в fi. т appleв apple appleapple в apple fl fi apple hardware fl fi fi appleвfi apple [?]., appleapple fl apple fl fi fi fi appleвapplefl fi. 7.4.3 apple apple с applefl?? apple в fi в fi apple applefi appleв apple. т в TELOS applefl 18.4 Mbytes fl, apple apple apple, appleapple fi apple apple 3.3 1 в fi, fi ввfi
7.4 св fi apple в fi 103 7 Mbytes. apple в ( Mbytes) TELOS OODB1 OODB2 OODB3 OODB4 RDBMS INDEX с 18.4 5.6 3.4 7.0 3.7 4.5 3.3 пfl 7.10: apple в applefi г в TELOS fl вв fl applefi в в fi. в fi 96 fi, в в fl в вfl apple в., в fl applefi в в в fi fl- 8.6 Mbytes. fl в в applefi fl fl fl. еapplefl, apple appleв fi apple в в вfl, apple applefl apple, в fl 40 %. с appleflapple fi fl fl fl apple apple в в в. apple в fl в apple apple apple вfi в applefl appleвapple fi., в fl apple apple fl 7.3 Mbytes. apple- в в apple fi в в вfi в fl apple apple apple fl 60 %., в 6.5 7.4 Mbytes apple в в fi. т в в apple fi appleвfl apple fi в apple в apple apple fi в в в fi apple.
104 7. в apple fi
8 сapple fi евfl 8.1 сapple с applefl вfl fi applefi apple apple в apple applefi в appleвfi в apple вfl apple в apple TELOS. еapplefl, applefi fl apple appleapple fl apple в. fl fi - fl applefi fl fi fi. с apple appleapple, fi apple fi applefi, applefl в apple apple-. с в TELOS вfi applefi applefl applefl apple fi apple applefl в TELOS., apple вfl fl apple apple fi fl, - apple в в fi fl. т apple fl в fi UNIX, appleapple- в TELOS вfl applefl appleв fi fl fl apple. ц вfl в fi apple apple fl fi. в apple apple в в в applefl - 105
106 8. сapple fi евfl apple apple apple apple в appleвfi в. г fi fl fi applefl б- fi в appleв в в. т fi appleвfi в fl fi. fl apple apple в apple applefl flв. еapplefl, вfl apple apple fi в fi applefi fl. г applefl appleapple вfl fi в apple apple. еapplefl вfi fi ввfi в appleв appleвapplefl apple apple в. applefi apple fl fi appleвfi apple apple fl fi fi. г fi applefl в apple apple apple fi fi appleapple apple appleв в fi., fl fi fi fl applefl, appleapple applefl вfl, в в apple apple apple. т fl fi applefl apple - appleapple apple fl в. fl apple apple apple fi вfl. 8.2 б с appleв fi applefl в fl fi, applefl apple apple apple fi fl apple fi. г apple apple в fi. с applefl, в fi в apple в, appleвapplefl. дfi, apple вfl, applefl apple в fi apple fl fl вв в fi., fi в fi apple вв apple apple fi. е,
8.2 б 107 apple fi в fi apple вв apple apple fi. г applefi fi вfl applefl вв в fi в apple apple fi в fi apple apple apple fi apple в. г apple apple в в. п ввfi в, вfl в. с appleapple, вfl в в вfl apple в в. т вfl fi applefi fi, applefl fl- applefl applefl. т вfl apple apple apple fi, apple fl applefl- applefi в в в., applefl fl в appleв в, в appleв в fi в в в, apple apple вв в в fi apple applefl. applefl fl в fi apple- в, в вfl apple в в appleapple. с appleflapple fi appleв в fi apple вв в appleapple. еapplefl, applefl вfl apple applefi apple applefl apple в вfl fl в. apple в apple apple applefi- в вfl apple apple в apple fl. applefi apple в TELOS apple apple 40 % fi apple apple fl вfl fl в. е apple в apple fi fl apple fi, fl в apple вfl fl. г fl apple apple в applefi-. appleapple вfl fi apple в fi. г fi apple appleapple apple fi apple apple fl apple apple apple apple в appleapple applefl. -, applefl apple apple apple вfi fl fi apple в apple. х apple apple applefl applefl вfi в fi
108 8. сapple fi евfl fi apple в apple, apple fi applefl apple вfi. applefi appleapple fl в в, apple apple в applefi fi, apple fi fi apple. 8.3 fi вfl с appleв fi applefl apple в fi вfl apple - fl fi apple вfi applefi в в. т fl fi: двfl вfi applefl apple appleв. еapplefl applefl applefl в apple apple apple. двfl appleapple apple apple fl. applefl fl fi apple - apple в fl fi. apple appleflapple fl вfl, applefl apple fl applefl fl fl. вfl apple apple apple вfl apple fi fi (remote procedure calls) apple fi fi вfl apple. applefl (object clustering) г fi applefl в applefl apple fi. apple (prefetch mechanism) appleapple apple apple - в appleapple apple appleвapple. applefl вfl apple в вfl fi fi applefl apple fi applefl
8.4 еappleflв 109 fl appleвfi вfl в apple- fi fi, appleвapple apple. 8.4 еappleflв г TELOS fl в apple в apple applefl applefl apple в. с apple вfl вfi в apple fl - apple apple apple в apple appleв в TELOS. apple apple в fl apple в apple apple apple в apple fi fl. г fi apple fl apple fi, fi apple appleвapple- fl apple apple fi. еapplefl fl fi fl, apple в, вfl вfl fl fi fi, applefl fl fl. fl fl apple fi apple apple apple в. в в apple fi applefl вfl apple fi fl apple apple apple apple в apple.
110
п A г g(k) в в с apple apple в в. г fi fl fi в в fi apple 13 fi. д, fl вapple 11 apple fi в. г вfl apple fi в apple applefl apple fi apple fi. 111
# define PRIME1 37 # define PRIME2 1048583 int g(char *k) { register inth=0; /*fi g(k) */ register intl=0; /*в в */ int step = 0; /* * applefi в */ /* appleв applefi в в */ while (k[l++]!= '\0'); /* в apple apple 13 fi, * apple в appleв g(k) */ if(l>13){ step = (l / 11) +1; /* в fl apple */ if(l&1){ for(inti=0;i<(l/step) ; i++ ){ /* apple в apple fi k*/ h=h*prime1 + (k[i*step]-''); /* apple в apple k*/ h=h*prime1 + (k[l - (i*step) -2]-''); } } /* в fl */ else { for(inti=0;i<(l/step) ; i++ ){ /* apple в apple fi k*/ h=h*prime1 + (k[i*step]-''); /* apple в apple k*/ h=h*prime1 + (k[l - (i*step) -1]-''); } } } /* fi в fl apple 13 fi * apple в appleв g(k) */ else { l=0; while (k[l]!= '\0')h=h*PRIME1 + (k[l++]-''); for(;l<11;l++) h = h * PRIME1; } /* apple apple fi fi в g(k) */ return ((h>0)? h:-h); } 112
п B fi в fi с apple apple applefi fi в fi в вfl fi. г apple 80.000 apple applefl 20.000 apple apple fi 60.000 apple apple. apple fl appleвapplefl в. г apple fi apple. г вfi fl apple в appleapple 9 applefi вfl. г fi fi fl fi applefl appleв., apple fl fi fi fi apple apple в applefi, вв appleв fi. ц вfl fl apple fi. г fi в. с appleflapple fi fl. г fi appleвapplefl в fl appleв fl applefi apple. B.1 тapplefi с applefl?? apple fi в applefi. fl apple fl вfl Sun SPARCstation ELC (4/25) fi appleвapple fl вfl. 113
( apple) в applefi вfl fi д fi fl fl (2) 1 6.767 10.561 12.382 14.914 2 0.891 3.842 6.058 4.723 3 0.823 2.713 4.706 3.877 4 0.784 2.517 3.519 3.757 5 0.771 2.104 5.419 2.697 6 0.741 1.358 3.844 1.813 7 0.724 1.834 4.618 1.612 8 0.681 1.328 3.556 1.546 9 0.674 1.278 2.960 1.244 10 0.644 1.120 1.576 1.075 0.748 2.010 4.028 1.075 пfl B.1: fi в applefi B.2 apple с applefl?? apple fi в apple. fi appleвapple вfl Sun SPARCstation ELC (4/25), fl apple fl вfl Sun SS-10. 114
( apple) в apple вfl fi д fi fl fl (2) 1 6.767 10.561 12.382 14.914 2 0.891 3.842 6.058 4.723 3 0.823 2.713 4.706 3.877 4 0.784 2.517 3.519 3.757 5 0.771 2.104 5.419 2.697 6 0.741 1.358 3.844 1.813 7 0.724 1.834 4.618 1.612 8 0.681 1.328 3.556 1.546 9 0.674 1.278 2.960 1.244 10 0.644 1.120 1.576 1.075 0.748 2.010 4.028 2.483 пfl B.2: fi в apple 115
116
бвfl [1] M. J. Bach. The Design of the UNIX Operating System, chapter System Calls for the File System, pages 91--140. Prentice Hall, 1986. [2] R. A. Baeza-Yates and Per-Ake Larson. Analysis of B + -trees with Partial Expansions. Technical Report CS-87-04, University of Waterloo, Computer Science Department, February 1987. [3] R. Bayer and E.M. McCreight. Organization and Maintenance of large ordered indices. Acta Informatica, 1(3), 1972. [4] E. Bertino and L. Martino. Object-Oriented Database Management Systems: Concepts and Issues. IEEE Computer, 24(3), April 1991. [5] P. Butterworth, A. Otis, and J. Stein. The GemStone Object Database Management System. Communications of the ACM, 34(10), 1991. [6] M. J. Carey, D. J. DeWitt, J. E. Richardson, and E. J. Shekita. Storage Management for Objects in EXODUS. In Object-Oriented Concepts, Databases, and Apllications, pages 341--369. ACM Press, 1989. [7] R. G. G. Cattell and J. Skeen. Object Operations Benchmark. ACM Transactions on Database Systems, 17(1), January 1992. [8] H-T Chou, D. J. Dewitt, R. H. Katz, and A. C. Klug. Design and Implementation of the Wisconsin Storage System. Software-Practice and Experience, 15(10), October 1985. [9] Jiang Hsing Chu and Gary D. Knott. An Analysis of B-trees and their Variants. Technical Report CS-TR-238, University of Maryland, November 1986. [10] D. Comer. The Ubiquitous B-Tree. ACM Computing Surveys, 11(2), 1979. [11] C. Dadouris, M.Doerr, S.Kizlaridou, D.Mauroidis, E.Pataki, M.Theodorakis, M.Theodoridou, and G.Yeorgiannakis. Implementation of the SIB System. Technical Report ITHACA.FORTH.92.E2.#7, CSI-FORTH, Jan 24 1992. 117
[12] C. J. Date. Relational Database : selected writings, chapter 7, pages 178--185. Reading Mass: Addison-Wesley Pub. Co., 1986. [13] M. Doerr, P. Klimathianakis, and M. Theodoridou. SIB Data Entry Language User's Manual. Technical report, Institute of Computer Science, FORTH, December 1992. [14] W. Effelsberg and N. Goodman. Principles of Database Buffer Management. ACM Transactions on Database Systems, 9(4), December 1984. [15] R. J. Enbody and H. C. Du. Dynamic Hashing Schemes. ACM Computing Surveys, 20(2), June 1988. [16] O. Deux et al. The Story of O 2. IEEE Trans. on Knowledge and Data Engineering, 2(1), March 1990. [17] O. Deux et al. The O 2 System. Communications of the ACM, 34(10), October 1991. [18] D. H. Fishman, J. Annevelink, E. Chow, T. Connors, J. W. Davis, W. Hasan, C. G. Hoch, W. Kent, S. Leichner P. Lyngbaek, B. Mahbod, M. A. Neimat, T. Risch, M. C. Shan, and W. K. Wilkinson. Iris: An Object-Oriented Database Management System. ACM Transactions on Office Information Systems, 5(1), January 1987. [19] A. R. Hurson, S.H. Pakzad, and J.J Cheng. Object-Oriented Database Management Systems: Evolution and Performance Issues. IEEE Computer, 26(2), February 1993. [20] An Introduction to ObjectStore, Release 1.0. Object Design Inc., Burlington, Massachusets, 1989. [21] W. Kim. Object-Oriented Databases: Definition and Research Directions. IEEE Transactions on Knowledge and Data enginering, 2(3), September 1991. [22] W. Kim, Jorge, F. Garza, Nathaniel Ballou, and Darrell Woelk. Architecture of the ORION Next-Generation Database System. IEEE Trans. on Knowledge and Data Engineering, 2(1), March 1990. [23] M. Koubarakis, J. Mylopoulos, M. Stanley, and A. Borgida. Telos: Features and Formalization. Technical Report FORTH/CSI/TR/1989/018, CSI-FORTH, 1989. [24] C. Lamb, G. Landis, and D. Weinreb. The ObjectStore Database System. Communications of the ACM, 34(10), October 1991. [25] Per-Ake Larson. Dynamic Hash Tables. Communications of the ACM, 31(4), April 1988. 118
[26] W. Litwin. Virtual Hashing: a dynamically changing hashing. In Proceedings of the 4th VLDB Conference, pages 517 -- 523, 1978. [27] W. Litwin. Linear Hashing: a new tool for file and table addressing. In Proceedings of the 6th VLDB Conference, pages 212 -- 223, 1980. [28] D. B. Lomet. A Simple Bounded Disorder File Organization with Good Performance. Technical Report TR-86-13, Wang Institute of Graduate Studies, 1986. [29] J. E. B. Moss. Design of the Mneme Persistent Object Store. ACM Transactions on Information Systems, 8(2), April 1990. [30] K. Ntadouris. Programmatic Query Interface and Query Processing for the TELOS Language. Master's thesis, University Of Crete, 1993. [31] Ontos Release 2.0 Data Sheet. Ontologic Inc., Burlington, Massachusets, 1990. [32] M. V. Ramachrisna and Per Ake Larson. File Organization Using Composite Perfect Hashing. [33] E. Shekita and M. Zwilling. Cricket: A Mapped, Persistent Object Store. Technical report, Computer Sciences Department, University of Wisconsin, August 1990. [34] A. Silberschatz and J. L. Peterson. Operating System Concepts (Alternate Edition), chapter Virtual Memory, pages 277--283. Addison Wesley Publishing Company, 1988. [35] A. J. Smith. Sequentiallity and Prefething in Database Systems. ACM Transactions on Database Systems, 3(3), 1978. [36] A. J. Smith. Cache Memories. ACM Computing Surveys, 14(3), March 1982. [37] M. Stonebraker. The Design of the POSTGRES Storage System. In Proceedings of the 13th VLDB Conference, Brighton, 1987. [38] M. Stonebraker and G. Kemnitz. The POSTGRES Next-Generation Database Management System. Communications of the ACM, 34(10), October 1991. [39] M. Stonebraker, L. A. Rowe, and M. Hirohama. The Implementation of POSTGRES. IEEE Transactions on Knowledge and Data Engineering, 2(1), January 1990. [40] Bjarne Stroustroup. The C++ Programming Language. Addison-Wesley, Reading, Massachusets, 1991. [41] Versant Product Profile. Versant Object Technology, Menlo Park, California, 1990. 119
[42] K. Wilkinson, P. Lyngbaek, and W. Hasan. The Iris Architecture and Implementation. IEEE Transactions on Knowledge and Data enginering, 2(1), March 1990. 120