using memory mapping for writing at first place would require too much io,
every written page would have to be paged in first from disk, use a dedicaed write buffers for this (not completely finished)
This commit is contained in:
parent
dd276a9057
commit
1b49f7163c
3 changed files with 131 additions and 54 deletions
|
|
@ -1,18 +0,0 @@
|
|||
window_sizes 1274 775 300 964 633 60
|
||||
diagrams
|
||||
active classdiagram_ref 128181 // File Mapping
|
||||
964 633 68 4 0 0
|
||||
end
|
||||
show_stereotypes
|
||||
open
|
||||
|
||||
package_ref 128645 // codegen
|
||||
|
||||
package_ref 129285 // ProcessingLayer
|
||||
class_ref 128181 // File
|
||||
class_ref 128693 // FileHandle
|
||||
class_ref 129333 // FileProvider
|
||||
class_ref 128225 // FrameReference
|
||||
class_ref 128778 // FileReference
|
||||
end
|
||||
end
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
format 38
|
||||
format 40
|
||||
"design" // BackendLayer::design
|
||||
revision 6
|
||||
revision 8
|
||||
modified_by 10 "ct"
|
||||
// class settings
|
||||
//class diagram settings
|
||||
|
|
@ -8,7 +8,7 @@ format 38
|
|||
//use case diagram settings
|
||||
package_name_in_tab default show_context default auto_label_position default draw_all_relations default shadow default
|
||||
//sequence diagram settings
|
||||
show_full_operations_definition default write_horizontally default drawing_language default draw_all_relations default shadow default
|
||||
show_full_operations_definition default write_horizontally default class_drawing_mode default drawing_language default draw_all_relations default shadow default
|
||||
//collaboration diagram settings
|
||||
show_full_operations_definition default show_hierarchical_rank default write_horizontally default drawing_language default package_name_in_tab default show_context default draw_all_relations default shadow default
|
||||
//object diagram settings
|
||||
|
|
@ -34,7 +34,7 @@ format 38
|
|||
//object diagram settings
|
||||
write_horizontally default package_name_in_tab default show_context default auto_label_position default draw_all_relations default shadow default
|
||||
//sequence diagram settings
|
||||
show_full_operations_definition default write_horizontally default drawing_language default draw_all_relations default shadow default
|
||||
show_full_operations_definition default write_horizontally default class_drawing_mode default drawing_language default draw_all_relations default shadow default
|
||||
//state diagram settings
|
||||
package_name_in_tab default show_context default auto_label_position default write_trans_label_horizontally default show_trans_definition default draw_all_relations default shadow default
|
||||
show_activities default region_horizontally default drawing_language default
|
||||
|
|
@ -305,6 +305,22 @@ ${inlines}
|
|||
classrelation 128522 // mapping (<aggregation>)
|
||||
relation_ref 128266 // <aggregation>
|
||||
end
|
||||
|
||||
classrelation 129674 // <aggregation>
|
||||
relation 129290 o---
|
||||
a role_name "" multiplicity "" protected
|
||||
cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value};
|
||||
"
|
||||
classrelation_ref 129674 // <aggregation>
|
||||
b role_name "" multiplicity "" protected
|
||||
cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value};
|
||||
"
|
||||
classrelation_ref 129802 // <aggregation>
|
||||
end
|
||||
|
||||
classrelation 130058 // write_buffer (<association>)
|
||||
relation_ref 129418 // <association>
|
||||
end
|
||||
end
|
||||
|
||||
class 128949 "FrameDescriptor"
|
||||
|
|
@ -459,10 +475,65 @@ ${inlines}
|
|||
classrelation_ref 128778 // <realization>
|
||||
b multiplicity "" parent class_ref 128906 // SmartPointer
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
activity 128010 "get frame"
|
||||
end
|
||||
|
||||
class 129034 "WriteBufferPool"
|
||||
visibility package
|
||||
cpp_decl "${comment}${template}class ${name}${inherit}
|
||||
{
|
||||
${members} };
|
||||
${inlines}
|
||||
"
|
||||
java_decl ""
|
||||
idl_decl ""
|
||||
explicit_switch_type ""
|
||||
|
||||
classrelation 130186 // <association>
|
||||
relation 129546 ----
|
||||
a role_name "" multiplicity "" protected
|
||||
cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value};
|
||||
"
|
||||
classrelation_ref 130186 // <association>
|
||||
b role_name "" multiplicity "" protected
|
||||
cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value};
|
||||
"
|
||||
classrelation_ref 130314 // <association>
|
||||
end
|
||||
end
|
||||
|
||||
class 129162 "WriteBuffer"
|
||||
visibility package
|
||||
cpp_decl "${comment}${template}class ${name}${inherit}
|
||||
{
|
||||
${members} };
|
||||
${inlines}
|
||||
"
|
||||
java_decl ""
|
||||
idl_decl ""
|
||||
explicit_switch_type ""
|
||||
|
||||
classrelation 129802 // <aggregation>
|
||||
relation_ref 129290 // <aggregation>
|
||||
end
|
||||
|
||||
classrelation 129930 // frame (<association>)
|
||||
relation 129418 ----
|
||||
a role_name "frame" multiplicity "0..1" protected
|
||||
cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value};
|
||||
"
|
||||
classrelation_ref 129930 // frame (<association>)
|
||||
b role_name "write_buffer" multiplicity "0..1" protected
|
||||
cpp default " ${comment}${static}${mutable}${volatile}${const}${type}* ${name}${value};
|
||||
"
|
||||
classrelation_ref 130058 // write_buffer (<association>)
|
||||
end
|
||||
|
||||
classrelation 130314 // <association>
|
||||
relation_ref 129546 // <association>
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
format 38
|
||||
format 40
|
||||
|
||||
classcanvas 128010 class_ref 128778 // FileReference
|
||||
draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default
|
||||
|
|
@ -10,11 +10,11 @@ classcanvas 128053 class_ref 128181 // File
|
|||
end
|
||||
classcanvas 128181 class_ref 128309 // FileHandleCache
|
||||
draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default
|
||||
xyz 482 146 2000
|
||||
xyz 666 51 2000
|
||||
end
|
||||
classcanvas 128309 class_ref 128437 // FileMapCache
|
||||
draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default
|
||||
xyz 662 397 2000
|
||||
xyz 694 253 2000
|
||||
end
|
||||
classcanvas 128394 class_ref 128906 // SmartPointer
|
||||
draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default
|
||||
|
|
@ -22,15 +22,15 @@ classcanvas 128394 class_ref 128906 // SmartPointer
|
|||
end
|
||||
classcanvas 128565 class_ref 128565 // FileMap
|
||||
draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default
|
||||
xyz 510 401 2000
|
||||
xyz 597 253 2000
|
||||
end
|
||||
classcanvas 128693 class_ref 128693 // FileHandle
|
||||
draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default
|
||||
xyz 508 287 2000
|
||||
xyz 473 59 2000
|
||||
end
|
||||
classcanvas 128821 class_ref 128821 // Frame
|
||||
draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default
|
||||
xyz 516 549 2000
|
||||
xyz 505 660 2000
|
||||
end
|
||||
classcanvas 128949 class_ref 128949 // FrameDescriptor
|
||||
draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default
|
||||
|
|
@ -44,7 +44,7 @@ fragment 129589 "public interfaces"
|
|||
xyzwh 232 6 1995 198 803
|
||||
end
|
||||
fragment 129717 "implementation details"
|
||||
xyzwh 437 5 1995 391 805
|
||||
xyzwh 437 8 1975 387 798
|
||||
end
|
||||
fragment 131338 "References hold by others"
|
||||
xyzwh 1 7 1990 225 802
|
||||
|
|
@ -53,28 +53,42 @@ classcanvas 131553 class_ref 128225 // FrameReference
|
|||
draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default
|
||||
xyz 48 549 2000
|
||||
end
|
||||
note 133002 "mmaped files are used for reading"
|
||||
color transparent xyzwh 509 159 1990 304 221
|
||||
note 133130 "temporary cache and normal io for writing"
|
||||
color transparent xyzwh 507 399 1980 303 210
|
||||
classcanvas 133514 class_ref 129034 // WriteBufferPool
|
||||
draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default
|
||||
xyz 657 446 2000
|
||||
end
|
||||
classcanvas 133642 class_ref 129162 // WriteBuffer
|
||||
draw_all_relations default hide_attributes default hide_operations default show_members_full_definition default show_members_visibility default show_members_stereotype default show_parameter_dir default show_parameter_name default package_name_in_tab default class_drawing_mode default drawing_language default show_context_mode default auto_label_position default show_infonote default shadow default
|
||||
xyz 543 520 2005
|
||||
end
|
||||
relationcanvas 128138 relation_ref 128138 // <unidirectional association>
|
||||
from ref 128010 z 1999 to ref 128053
|
||||
role_a_pos 251 279 3000 no_role_b
|
||||
multiplicity_a_pos 246 321 3000 no_multiplicity_b
|
||||
relationcanvas 128266 relation_ref 128266 // <aggregation>
|
||||
from ref 128565 z 1999 to ref 128821
|
||||
role_a_pos 545 525 3000 role_b_pos 545 455 3000
|
||||
multiplicity_a_pos 532 524 3000 multiplicity_b_pos 529 455 3000
|
||||
from ref 128565 z 1999 to point 450 388
|
||||
line 133258 z 1999 to point 450 594
|
||||
line 133386 z 1999 to ref 128821
|
||||
role_a_pos 437 620 3000 role_b_pos 499 316 3000
|
||||
multiplicity_a_pos 486 632 3000 multiplicity_b_pos 578 301 3000
|
||||
relationcanvas 128353 relation_ref 128225 // <directional aggregation>
|
||||
from ref 128053 z 1999 to ref 128693
|
||||
role_a_pos 442 279 3000 no_role_b
|
||||
multiplicity_a_pos 463 321 3000 no_multiplicity_b
|
||||
role_a_pos 497 115 3000 no_role_b
|
||||
multiplicity_a_pos 448 115 3000 no_multiplicity_b
|
||||
relationcanvas 128481 relation_ref 128353 // <directional aggregation>
|
||||
geometry HVr
|
||||
from ref 128821 z 1999 to point 541 741
|
||||
from ref 128821 z 1999 to point 529 741
|
||||
line 131978 z 1999 to ref 128949
|
||||
role_a_pos 396 714 3000 no_role_b
|
||||
role_a_pos 406 713 3000 no_role_b
|
||||
no_multiplicity_a no_multiplicity_b
|
||||
relationcanvas 128609 relation_ref 128481 // <directional aggregation>
|
||||
from ref 128053 z 1999 to ref 128565
|
||||
role_a_pos 424 382 3000 no_role_b
|
||||
multiplicity_a_pos 488 424 3000 no_multiplicity_b
|
||||
role_a_pos 521 232 3000 no_role_b
|
||||
multiplicity_a_pos 584 274 3000 no_multiplicity_b
|
||||
relationcanvas 128650 relation_ref 128522 // <realization>
|
||||
from ref 128010 z 1999 to ref 128394
|
||||
no_role_a no_role_b
|
||||
|
|
@ -84,27 +98,37 @@ relationcanvas 129034 relation_ref 128650 // <realization>
|
|||
no_role_a no_role_b
|
||||
no_multiplicity_a no_multiplicity_b
|
||||
relationcanvas 129121 relation_ref 128609 // <directional aggregation by value>
|
||||
from ref 128181 z 1999 stereotype "<<list>>" xyz 523 229 3000 to ref 128693
|
||||
role_a_pos 552 259 3000 no_role_b
|
||||
multiplicity_a_pos 539 259 3000 no_multiplicity_b
|
||||
from ref 128181 z 1999 stereotype "<<list>>" xyz 584 63 3000 to ref 128693
|
||||
role_a_pos 568 51 3000 no_role_b
|
||||
multiplicity_a_pos 568 93 3000 no_multiplicity_b
|
||||
relationcanvas 129290 relation_ref 128778 // <aggregation>
|
||||
from ref 129461 z 1999 to ref 128053
|
||||
role_a_pos 347 246 3000 no_role_b
|
||||
multiplicity_a_pos 311 246 3000 no_multiplicity_b
|
||||
relationcanvas 129930 relation_ref 128906 // <directional aggregation by value>
|
||||
from ref 128309 z 1999 stereotype "<<list>>" xyz 719 372 3000 to point 714 361
|
||||
line 130314 z 1999 to point 643 361
|
||||
from ref 128309 z 1999 stereotype "<<list>>" xyz 690 225 3000 to point 750 218
|
||||
line 132746 z 1999 to point 627 217
|
||||
line 130058 z 1999 to ref 128565
|
||||
role_a_pos 638 337 3000 no_role_b
|
||||
multiplicity_a_pos 575 381 3000 no_multiplicity_b
|
||||
role_a_pos 648 192 3000 no_role_b
|
||||
multiplicity_a_pos 614 225 3000 no_multiplicity_b
|
||||
relationcanvas 131425 relation_ref 129121 // <directional aggregation by value>
|
||||
from ref 128309 z 1999 to point 714 473
|
||||
line 130186 z 1999 stereotype "<<list>>" xyz 720 455 3000 to point 644 473
|
||||
line 130570 z 1999 to ref 128565
|
||||
role_a_pos 649 483 3000 no_role_b
|
||||
multiplicity_a_pos 573 440 3000 no_multiplicity_b
|
||||
from ref 128309 z 1999 stereotype "<<list>>" xyz 688 298 3000 to point 748 336
|
||||
line 130570 z 1999 to point 629 337
|
||||
line 132874 z 1999 to ref 128565
|
||||
role_a_pos 690 336 3000 no_role_b
|
||||
multiplicity_a_pos 611 310 3000 no_multiplicity_b
|
||||
relationcanvas 131681 relation_ref 129249 // <unidirectional association>
|
||||
from ref 131553 z 1999 to ref 128821
|
||||
role_a_pos 459 542 3000 no_role_b
|
||||
multiplicity_a_pos 473 584 3000 no_multiplicity_b
|
||||
from ref 131553 z 1999 to point 331 570
|
||||
line 132106 z 1999 to point 331 683
|
||||
line 132234 z 1999 to ref 128821
|
||||
role_a_pos 455 653 3000 no_role_b
|
||||
multiplicity_a_pos 469 695 3000 no_multiplicity_b
|
||||
relationcanvas 134794 relation_ref 129418 // <association>
|
||||
from ref 133642 z 1999 to ref 128821
|
||||
role_a_pos 553 632 3000 role_b_pos 584 575 3000
|
||||
multiplicity_a_pos 507 632 3000 multiplicity_b_pos 538 575 3000
|
||||
relationcanvas 135306 relation_ref 129546 // <association>
|
||||
from ref 133514 z 1999 to ref 133642
|
||||
no_role_a no_role_b
|
||||
no_multiplicity_a no_multiplicity_b
|
||||
end
|
||||
|
|
|
|||
Loading…
Reference in a new issue