Patents
Literature
Hiro is an intelligent assistant for R&D personnel, combined with Patent DNA, to facilitate innovative research.
Hiro

70 results about "Relocation" patented technology

Relocation is the process of assigning load addresses for position-dependent code and data of a program and adjusting the code and data to reflect the assigned addresses. Prior to the advent of multiprocess systems, and still in many embedded systems, the addresses for objects were absolute starting at a known location, often zero. Since multiprocessing systems dynamically link and switch between programs it became necessary to be able to relocate objects using position-independent code. A linker usually performs relocation in conjunction with symbol resolution, the process of searching files and libraries to replace symbolic references or names of libraries with actual usable addresses in memory before running a program.

File system defragmentation technique via write allocation

InactiveUS20050187985A1Improved on-disk layoutReduces unnecessary disk input/output operationDigital data information retrievalData processing applicationsDisk layoutFile system fragmentation
A defragmentation technique determines the extent to which data blocks of a file are fragmented on disks of a computer and, in response, efficiently relocates those blocks if such relocation improves the on-disk layout of the file. Each indirect block of the file is examined and the current layout of the range of pointers referencing the data blocks is determined. In addition, the number of operations needed to retrieve those data blocks from disks is calculated. A potential new layout is then estimated based on an average fullness of the file system. If the potential new layout improves the fragmentation of the current layout, then the data blocks for that range are relocated, if there is sufficient free space on disk. Otherwise, the blocks are not relocated and the current on-disk layout of the file is maintained.
Owner:NETWORK APPLIANCE INC

Method of instruction location randomization (ILR) and related system

A method and system for relocating executable instructions to arbitrary locations are disclosed. The instruction relocation may be arbitrary or random, and may operate on groups of instructions or individual instructions. Such relocation may be achieved through hardware or software, and may use a virtual machine, software dynamic translators, interpreters, or emulators. Instruction relocation may use or produce a specification governing how to relocate the desired instructions. Randomizing the location of instructions provides defenses against a variety of security attacks. The disclosed embodiments provide many advantages over other instruction relocation techniques, such as low runtime overhead, no required user interaction, applicability post-deployment, and the ability to operate on arbitrary executable programs.
Owner:UNIV OF VIRGINIA ALUMNI PATENTS FOUND

Application loading method and device

The invention discloses an application loading method and device. The method comprises specific steps of selecting storage space for storing preset data segments in executable files of applications in a programmable read-only memory; copying the preset data segments to the memory and relocating the preset data segments based on an initial address of the storage space; copying the relocated preset data segments to the storage space by means of the method and the device, code ports of the executable files are relocated in the memory, the relocated code portions are then written back into the programmable read-only memory, and accordingly relocation of the code portions can be completed only through once erasing operation on storage blocks, and system overheads and loss of the programmable read-only memory in the application loading process are reduced.
Owner:BAIDU ONLINE NETWORK TECH (BEIJIBG) CO LTD

Efficient reference classification and quick memory reuse in a system that supports concurrent garbage collection

The disclosed embodiments facilitate reusing both the physical and virtual memory in a garbage-collected computing environment immediately after a relocated memory area has been emptied, without using special hardware or operating system extensions. This system uses load barrier to perform fast checks to determine if a reference might point into a relocated memory area. If so, the load barrier performs further actions to remap pointers that actually point into the relocated memory area, without the need to read that memory. Because the system neither follows pointers into relocated memory areas nor protects relocated memory areas, the system can immediately reuse the virtual memory areas. The load barrier ensures that references pointing into a relocated memory area will be caught and handled, and references pointing into the newly allocated memory will pass through the barrier without further actions.
Owner:ORACLE INT CORP

Apparatus and method for transferring information between platforms

A method and apparatus for relocating application programs, settings, menus, files and documents from a source computer to a target computer. The method and apparatus function properly regardless of whether the source and target computers have the same hardware or operating system. The method includes scanning the source and target machines for all applications programs, settings, menus, files, and documents in order to create a relocation strategy. The relocation strategy is created in view of pre-programmed selection rules or selection rules created by the user. The strategy is then implemented by copying, replacing or merging data from the source machine to the target machine.
Owner:EISENWORLD +1

Program dynamic loading method, program dynamic loading device and storage medium

The invention provides a program dynamic loading method, a program dynamic loading device and a storage medium. The method comprises the following steps: compiling: employing compiling parameters to compile a source code into an address-independent program file; performing relocation preprocessing: calculating a relocation address and a logic address needing to be filled into the relocation address for the program file according to the relocation item type after compiling is completed, and downloading the preprocessed program file to any position of FLASH; and loading: loading data required byprogram operation based on the calculated relocation address and the logic address needing to be filled into the relocation address, and directly operating the program file in FLASH. The method avoids the process of copying the APP file from the FLASH to the RAM, increases the application starting speed, reduces the program size, does not limit the application starting address, does not limit theapplication storage address, realizes direct operation of the APP on FLASH, is suitable for being operated on small devices such as an MCU, and supports debugging of the dynamically loaded APP.
Owner:北京翼辉信息技术有限公司

Garbage collection of non-pinned objects within heap

Garbage collection of objects within the heap of a computing system, and movement of adjacent sets of live objects as a whole in order to perform compaction. The compaction may be performed even if there are adjacent sets of live objects that include one or more pinned objects that should not be moved by the garbage collector. The garbage collector uses gaps to include relocation information with respect to sets of adjacent objects of the same pinned status. Some gaps may be formulated by writing over the live objects themselves, in which case that written over data is saved off prior to formulating the gap. When compaction is performed, the saved off data is used to fully integrate the adjacent objects of the same pinned status in the process of compaction.
Owner:MICROSOFT TECH LICENSING LLC

Dynamic and static fusion binary translation method and system based on dynamic link library

The invention belongs to the field of software transplantation, and particularly relates to a dynamic and static fusion binary translation method and system based on a dynamic link library. The methodincludes: dividing a program by taking a function as a unit, and if the function is a third-party library function, executing the program in a local library replacement mode; if the indirect jump branch instruction exists in the function, placing the function in a dynamic translator part for translation execution, and if the indirect jump branch instruction does not exist in the function, statically translating the function by taking a basic block as a unit, recording relocation information translated by the function, and generating a function relocation information table; analyzing and optimizing the translated target code according to the static analysis information and the relocation information, and generating a dynamic link library for calling the target program in the dynamic execution process; and during dynamic execution, preferentially executing the optimized function according to the relocation information table and the dynamic link library. According to the method, the advantages of static binary translation offline optimization are fully utilized, codes needing to be translated and optimized in the dynamic execution period are statically executed, translation expenditure is reduced, and execution efficiency is improved.
Owner:PLA STRATEGIC SUPPORT FORCE INFORMATION ENG UNIV PLA SSF IEU

Data query method, loading component, search component and storage medium

The invention discloses a data query method, a loading component, a search component and a storage medium. The data query method comprises the following steps: finding a corresponding to-be-loaded address of a to-be-recycled block in a first-level mapping table from a second-level mapping table by the loading component; loading first-level mapping data from a to-be-loaded address of the first-level mapping table to serve as to-be-searched data, and allocating the to-be-searched data to the plurality of search components according to a preset capacity, concurrently processing the received to-be-searched data by the plurality of search components to obtain all effective physical address information, and providing an output data register for a CPU to read the effective physical address information so as to complete migration of the effective data. According to the embodiment of the invention, the query part of a relocation-type GC scheme is realized through the loading component and the search components, and the participation of the CPU is reduced through the cooperative processing of the loading component and the plurality of search components at the same time, so that the effect ofconcurrence of the loading component, the search components and the CPU is achieved, and the data relocation efficiency is greatly improved.
Owner:BIWIN STORAGE TECH CO LTD

Reducing synchronization reliance in garbage collection marking

Memory reclamation is tailored to avoid certain synchronization instructions, speeding concurrent garbage collection while preserving data integrity and availability. Garbage collection reclaims objects no longer in use, or other unused areas of memory. Pointers are partitioned into address portions holding address values and garbage collection portions having a special bit. Marking code writes only the garbage collection portions, setting the special bit as a mark reference, relocation candidate, etc. Mutator threads may concurrently mutate the entire pointer to update the address, but mutation does not cause incorrect reclamations or failure of operations such as relocation. Execution speed is increased by avoiding certain synchronization instructions in the garbage collector, and using different atomic writes instead. Mutators run in user or kernel address spaces. The garbage collector may enclose partitioned pointers and their use, to avoid runtime errors by code that expects references to be in a canonical nonpartitioned form.
Owner:MICROSOFT TECH LICENSING LLC

Systems and methods for avoiding base address collisions using alternate components

Processes are monitored as components are loaded into memory. Relocation of a component to an alternate base address instead of its preferred base address, causes an alternate component to be created corresponding to the relocated component. The alternate component is a copy of the relocated component, but the preferred base address of the alternate component is reset to be the alternate base address of the relocated component. Additional alternate components may be created for each relocated component, with each additional alternate component being optimized in a different manner. Alternate components may be implemented as alternate data stream of the corresponding relocated components. In response to subsequent requests to load a selected component into memory, it is determined whether the selected component has at least one corresponding alternate component. If so, one of the corresponding alternate components is loaded into memory instead of the selected component.
Owner:RTO SOFTWARE

Equipment relocation error recovery method and device, computer equipment and storage medium

The invention relates to an equipment relocation error recovery method and device, computer equipment and a storage medium, and the method comprises the steps: when a relocation function needs to be started, caching a global map before relocation as a backup, and enabling the equipment to work according to a position determined by relocation, and continuously detecting whether the previous relocation position has an error or not in the operation process, if so, deleting the updated global map based on the position after relocation, restoring to the backup global map before relocation, relocating again according to the global map before relocation, and updating the position of the equipment so as to recover the relocation error of the equipment.
Owner:GREE ELECTRIC APPLIANCES INC

Software upgrading method, device and equipment based on OpenCPU

The invention relates to the technical field of OpenCPU software. The embodiment of the invention provides a software upgrading method, device and equipment based on an OpenCPU. The software upgrading method based on the OpenCPU comprises the steps of acquiring a source file comprising an upgrading program source code; declaring all system functions needing to be called in the source file as an extern type to obtain a new source file; compiling the new source file to generate an intermediate file, wherein a plurality of relocatable compiling parameters are adopted in the compiling process; adding a function library required by operation to the intermediate file, and generating an upgrading file through a link; and upgrading by adopting the upgrading file. According to the embodiment, the upgrading efficiency and the upgrading stability can be improved.
Owner:UNIONMANTECH

Hot patch generation method and device and server

The invention provides a hot patch generation method and device, and a server. A comparison file generated based on a comparison result obtained in advance comprises a target structure variable associated with a changed _jump_table segment in the _jump_table segment of a second target file, and relocation information of a specified address in the target structure variable; and based on the comparison file, generating a hot patch file containing the relocation information of the specified address. According to the method, a comparison file comprises a target structural body variable associatedwith a changed _jump_table segment and relocation information of a related specified address; the hot patch file generated on the basis of the comparison file also contains the correct relocation information of the specified address, the incidence relation between the hot patch file and the original module can be kept through the relocation information, and the correctness of code logic in the hotpatch file is guaranteed.
Owner:BEIJING KINGSOFT CLOUD NETWORK TECH CO LTD

Equipment relocation operation recovery method and device, computer equipment and storage medium

ActiveCN113180557AShort timeImprove the efficiency of relocation operationsAutomatic obstacle detectionTravelling automatic controlPathPingVirtual cell
The invention relates to an equipment relocation operation recovery method and device, computer equipment and a storage medium. The method comprises the following steps: when the method detects that the equipment moves, recording an old operation virtual unit where the equipment moves and an original position point, starting a relocation function, determining a new operation virtual unit where the equipment is currently located, and restarting operation on the whole operation area from the new operation virtual unit; in the continuous operation process, if operation on the adjacent operation virtual unit of the old operation virtual unit is completed, acquiring the path cost of moving from the current position to a preset driving-in point and an original position point in the old operation virtual unit; and selecting a point with the minimum path cost as the starting point, recovering the operation in the old operation virtual unit. The point with the minimum path cost is selected as the starting point for re-switching into the operation in the old operation virtual unit, so that the time consumed for recovering the operation of the old operation virtual unit can be remarkably reduced, and the equipment relocation operation efficiency is improved.
Owner:GREE ELECTRIC APPLIANCES INC

Computing method for ELF file mapping base address, and device

The invention discloses a computing method for an ELF file mapping base address. The method comprises: obtaining information of an ELF file, according to the information, determining the type of the ELF file, wherein the type of the ELF file includes an EXE file and a DYN file; when the type of the ELF file is the EXE file, obtaining program headers of the EXE file in sequence; determining whether the program headers satisfy a preset position condition and a section header condition; if yes, setting a virtual address of the program header as a mapping base address of the EXE file. The method distinguishes according to the type of the ELF file in an ELF base address computational process, and base addresses of two types of files of EXE and DYN are respectively calculated. The method can improve calculation precision for positions of dynamic symbol tables and relocation link process tables, greatly accelerates interception process and processing efficiency of API, and ensures accuracy for API to intercept related data.
Owner:BEIJING KINGSOFT SECURITY MANAGEMENT SYST TECH CO LTD

Application loading method and apparatus, computer device and storage medium

The invention discloses an application loading method and apparatus, a computer device and a storage medium, and belongs to the technical field of computers. The method comprises the steps of mappingan application to a memory buffer area, wherein the value of each bit of the memory buffer area is a first value; changing the value of the corresponding bit for mapping a re-positioned address in a re-positioned table of the application to the memory buffer area to a second value; during application loading, when the value of the corresponding bit for mapping the address of the application to thememory buffer area is the first value, loading the application according to the address; and when the value of the corresponding bit for mapping the address of the application to the memory buffer area is the second value, after the address is re-positioned, loading the application according to the re-positioned address. During application loading, whether the address needs to be re-positioned can be judged quickly, so that the consumed time is greatly reduced, and the efficiency is improved obviously.
Owner:SHENZHEN TENCENT NETWORK INFORMATION TECH CO LTD

Systems and methods for function pointer protection by function symbol encryption

An apparatus, method, and computer program product are provided for encrypting a function symbol with relocation. The apparatus includes a compiler module, a static linker module, and an encryptor module. The compiler module inserts sequences of instructions to decrypt function symbols to be randomized at runtime before indirect function calls. The compiler module inserts an instruction sequence at compile time to encrypt an operand register that receives a local function symbol in position-independent code (PIC), where a call or store instruction uses the register as an operand. The static linker module inserts an encoding section at link time. The encoding section includes two columns representing the sizes of function symbols in bits or bytes and the locations storing the function symbols to be encrypted at runtime. The encryptor module encrypts at runtime the function symbols whose sizes and stored memory locations are identified in the encoding section.
Owner:ZEUS SW DEFENDER LLC

Embedded system starting method based on BootRom function extension

The invention discloses an embedded system starting method based on BootRom function extension, and relates to the technical field of chips, the method comprises the steps that an extension module is read from an external memory through BootRom and loaded into a memory, and the extension module internally comprises an operation instruction of an extension program; analyzing the extension module, running the operation instruction, and executing an extension program contained in the extension module; and after the extension program contained in the extension module is executed, returning to continue to execute the BootRom program. According to the method, an extension program is compiled into a module to be stored in an external storage device through a software relocatable code compiling technology, function extension of the BootRom is achieved in a mode of loading and running the program module, configuration information can be replaced to achieve more complex logic, dynamic adjustment of the BootRom execution process can be achieved, and the execution efficiency of the BootRom is improved. And the function expansion can be realized more flexibly in a program writing mode.
Owner:无锡沐创集成电路设计有限公司

Jump table lookup method and device, electronic equipment and storage medium

The embodiment of the invention provides a jump table searching method and device, electronic equipment and a storage medium, and relates to the technical field of electronics. The method comprises the steps of determining functions included in a target file, recognizing instructions in the functions according to an execution sequence of the instructions, recording a recognition sequence, searching and determining a target instruction corresponding to a register read by the dynamic jump instruction according to a reverse sequence of the recognition sequence when the dynamic jump instruction is recognized, and executing the dynamic jump instruction according to the target instruction. And obtaining relocation information of the target instruction and relocation information of other instructions from the target file, and determining a storage area of the jump table based on the relocation information of the target instruction and the relocation information of other instructions. When the jump table is searched, the target instruction is determined by combining the register used by the dynamic jump instruction and the execution sequence of the instruction, and the position of the jump table in the target file is determined according to the relocation information of the target instruction, so that the storage area of the jump table of the dynamic jump instruction in the target file can be rapidly determined.
Owner:龙芯中科(成都)技术有限公司

Instruction address self-adaptive relocation method and program compiling method

The invention provides an instruction address self-adaptive relocation method and a program compiling method, an executable target file generated in a link stage of a program compiling process is usedas a source file, and the relocation method comprises the following steps: reading the executable target file and configuration information; scribing a code segment and a data segment in the executable target file; after the executable target file is divided, dividing a corresponding memory space according to the size of each segment; calculating an actual target value; and when the actual targetvalue is smaller than the set target value, performing address re-positioning on each section in the executable target file, finally performing target linking, and outputting the optimized executabletarget file.
Owner:INSPUR SUZHOU INTELLIGENT TECH CO LTD

Application program encasing method

The invention discloses an application program encasing method, which comprises the following steps: copying an executable file into a memory, splitting sections to extract a resource table, modifyinga PE head, integrating other sections into one section, placing the sections together and encrypting, adding three sections A, B and C, wherein the later two are used for storing encasing codes and repairing repositioning tables thereof, and the first is used for storing a code checking module; the second one is used for repairing the running environment of the shelled program; and the third oneis used for decompressing each segment, organizing the data of the segment A into a dll file and loading the dll file.
Owner:广州锦行网络科技有限公司

A Method of Injection Code Generation for On-orbit Maintenance of Spacecraft Based on Secondary Link

The invention provides a spacecraft on-orbit maintenance injection code generation method based on secondary linking. The method comprises the steps that (1) the state of spacecraft on-orbit running software is restored, and an on-orbit state target file is generated; (2) an on-orbit maintenance source code is written; (3) a compiler is used to independently compile the written on-orbit maintenance source code, and a to-be-uploaded target file is generated; (4) a script file for secondary linking is newly created; (5) the on-orbit state target file and the to-be-uploaded target file are linked based on the established script file for secondary linking, and a new executable file is generated; and (6) the new executable file is converted into a linking instruction file or a BIN file, and an injection code instruction with a designated initial address is directly extracted from the linking instruction file or the BIN file. Through the method, on the premise of guaranteeing that an original on-orbit software binary code does not change, a relocation process of all address relevant items in on-orbit maintenance software is automatically realized, and therefore the generation efficiency and correctness of a spacecraft on-orbit maintenance injection code are greatly improved.
Owner:BEIJING INST OF CONTROL ENG

A method of dynamic loading of program modules

ActiveCN107391190BReduce consumptionImprove the efficiency of dynamic loadingProgram controlSoftware deploymentData segmentLoader
The invention provides a dynamic loading method of a program module. The method comprises the steps that 1, a compiling system is provided and is used for compiling a program source code into a program module which can be dynamically loaded, and the program module comprises a binary system code segment and a data segment; 2, a dynamic loader is provided, and comprises an installation module which is used for installing the program module into a memory space of the program module and a loading module which is used for loading the program module into a runtime data storage space in running; 3, the binary system code segment of the program module calculates a global variable address in the program source code through a data segment base address mapping table of the program module in the runtime data storage space; 4, a global variable corresponding to the global variable address is read and written and referenced. According to the dynamic loading method, the operation, namely back-up, erasure and merging writing, on the memory space in repositioning can be avoided, and the dynamic loading efficiency is improved.
Owner:C SKY MICROSYST CO LTD
Who we serve
  • R&D Engineer
  • R&D Manager
  • IP Professional
Why Patsnap Eureka
  • Industry Leading Data Capabilities
  • Powerful AI technology
  • Patent DNA Extraction
Social media
Patsnap Eureka Blog
Learn More
PatSnap group products