摘要:
Management of datastream construction prior to transmission of the datastream across a channel of a communications system by providing for data blocking while reducing movement or copying of the data improves the performance in a communications system. Multiple header segments received from a higher layer in the communications stack are copied into the datastream header area of a datastream such that the header segments are sequentially stored in the datastream header area. A datastream buffer list having entries referencing the datastream header area is generated. Buffer list entries referencing data segments received from higher layers in the communications stack are also stored in the datastream buffer list. The data segments are not physically moved or copied into the datastream during processing by the communications stack. Rather, a "virtual" datastream is generated by the communications stack for transmission without physically moving or copying the data segment. The datastream is transmitted across the channel by the system input/output interface by first writing the datastream header area referenced by the datastream buffer list directly into the channel, and the data segments directly from their original storage location into the channel of the communications system using the datastream buffer list entries.
摘要:
Management of the processing of relatively large data objects in a communications stack having multiple layers improves the performance in a communications system in preparing relatively large data objects for transmission across a communications network. This reduces or eliminates data movement and copying during segmentation of the relatively large data objects into relatively small data objects, and appendage of headers to the relatively small data object segments during processing in the communications stack. A shared storage manager creates and controls multiple tokens representing multiple images of portions of the relatively large data objects to enable separate scheduling of the multiple images from the same storage unit or buffer to be passed from one layer in a communications stack to the next lower layer in the communications stack. The large data object is segmented into a plurality of relatively small data object segments at one or more of the layers in the communications stack. When dictated by the communications stack, header segments are also created for each relatively small data object segment. Each header segment contains specific information for the relatively small data object segment to which the header corresponds. A separate buffer list is generated by the communications stack for each relatively small data object segment and for each corresponding header segment.
摘要:
Effective memory management maximizes the use of main memory in a computing system by avoiding the issuance of operating system primitives which result in overhead and increased processing time. This allows an applications program to change the state of a storage unit such as a buffer or page without requiring the issuance of an operating system primitive to change the physical state of the storage unit. A storage manager is provided for controlling the movement of data between storage units in secondary storage and storage units in main memory. A storage unit state indicator or flag is associated with each storage unit in main memory. In addition, a system state indicator for indicating the physical state of a storage unit is also associated with each storage unit. The system state indicator may be set to one of the states of fixed or pageable while the storage unit state indicator may be set to one of the states of fixed, pageable or don't care. The storage manager monitors the usage of memory to determine whether a fixed storage constraint may occur. Upon a determination that a fixed storage constraint may occur, the storage manager notifies the applications programs of the fixed storage constraint. In response, applications programs can temporarily change the state of a storage unit containing data which temporarily may not be needed by the applications program from fixed to don't care by changing the storage unit state indicator from fixed to don't care. Thus, the storage unit is available to the storage manager if needed without the need to have the storage manager issue an operating system primitive to change the system state indicator for the storage unit from fixed to pageable.
摘要:
Transmission control improves the performance in a communications system relating to transferring large data objects between domains or applications. This reduces or eliminates data movement between domains by transferring ownership of the "container" containing the data as opposed to moving the contents of the container from one domain to another domain resulting in copying the large data object. Thus, transmission control provides for control of the transmission of relatively large data objects between domains in a communications system which otherwise only allows efficient transmission of relatively small data objects between domains in a communications system. Tokens are assigned and associated with buffers containing the data to be shared. The token is not an address, but rather an identifier for the buffer which can be transferred from one domain to a second domain without requiring the copying of the data. The domain which originally requests the buffer is assigned a primary token and secondary tokens are assigned to each subsequent domain which also requests access to the buffer.