CN109656720B - Address space allocation method and device - Google Patents

Address space allocation method and device Download PDF

Info

Publication number
CN109656720B
CN109656720B CN201811615559.XA CN201811615559A CN109656720B CN 109656720 B CN109656720 B CN 109656720B CN 201811615559 A CN201811615559 A CN 201811615559A CN 109656720 B CN109656720 B CN 109656720B
Authority
CN
China
Prior art keywords
space
address
address space
kernel
end memory
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201811615559.XA
Other languages
Chinese (zh)
Other versions
CN109656720A (en
Inventor
赵雪峰
李强
李超
王玉龙
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Loongson Technology Corp Ltd
Original Assignee
Loongson Technology Corp Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Loongson Technology Corp Ltd filed Critical Loongson Technology Corp Ltd
Priority to CN201811615559.XA priority Critical patent/CN109656720B/en
Publication of CN109656720A publication Critical patent/CN109656720A/en
Application granted granted Critical
Publication of CN109656720B publication Critical patent/CN109656720B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

The invention provides an address space distribution method and a device, wherein the method comprises the following steps: acquiring an initial address space transmitted to a kernel according to a preset specification; the initial address space comprises a low-end memory space and a high-end memory space; dividing an address space with a preset size from a low-end memory space to serve as a firmware reserved space; taking the residual memory space except the firmware reserved space in the high-end memory space and the low-end memory space as a kernel address space, and transmitting the kernel address space to a kernel for use; the firmware is reserved as a private address space for runtime services. Therefore, the parameter transmission problem between the UEFI and the Linux kernel can be solved on the premise of not modifying the kernel of the operating system, so that the MIPS can use the corresponding functions of the Runtime Services under the condition that the Runtime Services are incompletely supported.

Description

Address space allocation method and device
Technical Field
The present invention relates to the field of computer technologies, and in particular, to an address space allocation method and apparatus.
Background
UEFI acts as an interface between the operating system and the hardware, the most important function being to prepare software and hardware resources for the operating system loader.
Currently, UEFI is provided for use by operating systems and UEFI applications in the form of Boot Services (Boot Services) and Runtime Services (Runtime Services). Therein, Runtime Services and their related data structures are initialized from the Driver Execution Environment (DXE) phase to the operating system end, existing and providing Services to upper layers (operating system, operating system loader, UEFI application or UEFI Driver). In order to use Runtime Services, the operating system is required to add corresponding functions. However, the existing Linux kernel does not add a related Microprocessor with interlocked pipeline stages (MIPS) architecture to support Runtime Services, so that a corresponding architecture needs to be added under the kernel to support Runtime Services.
However, adding a corresponding architecture under the kernel requires modifying the kernel of the operating system, which results in a large workload and easily affects other architecture functions of the kernel.
Disclosure of Invention
The invention provides an address space distribution method and device, which can solve the problem of transmission parameter between UEFI and a Linux kernel on the premise of not modifying an operating system kernel, so that an MIPS framework can use corresponding functions of running Services under the condition that the running Services are incompletely supported.
In a first aspect, an embodiment of the present invention provides an address space allocation method, including:
acquiring an initial address space transmitted to a kernel according to a preset specification; the initial address space comprises a low-end memory space and a high-end memory space;
dividing an address space with a preset size from the low-end memory space to serve as a firmware reserved space;
taking the residual memory space except the firmware reserved space in the high-end memory space and the low-end memory space as a kernel address space, and transmitting the kernel address space to a kernel for use;
and taking the firmware reserved space as a special address space of the runtime service.
In one possible design, dividing an address space of a predetermined size from the low-end memory space as a firmware reserved space includes:
determining an address range of the low-end memory space;
and taking the highest address in the address range as an initial address, and dividing an address space with a preset size as a firmware reserved space according to the direction of a low address.
In one possible design, when the low-side memory space is 256MB, and the address range is 0x0000_ 0000-0 x0FFF _ FFFF; the space with the address range of 0x0F00_ 0000-0 x0FFF _ FFFF is divided into a firmware reserved space.
In one possible design, taking the firmware reserved space as a private address space for runtime services, includes:
dividing the firmware reserved space into a plurality of subspaces, wherein the subspaces are used for storing functional codes executed by the runtime service and relevant data of the runtime service; the relevant data includes: the SMBIOS system comprises a related structure list of a system management basic input and output system SMBIOS, data required to be stored in power management and kernel transfer parameters; the function code includes: operating system shutdown code and restart code.
In one possible design, the firmware reservation space further includes: debugging address space, function expansion space and shared address space; wherein the shared address space receives access by the kernel and the BIOS.
In a second aspect, an embodiment of the present invention provides an address space allocation apparatus, including:
the acquisition module is used for acquiring an initial address space transmitted to the kernel according to a preset specification; the initial address space comprises a low-end memory space and a high-end memory space;
the dividing module is used for dividing an address space with a preset size from the low-end memory space to be used as a firmware reserved space;
the processing module is used for taking the residual memory space except the firmware reserved space in the high-end memory space and the low-end memory space as a kernel address space and transmitting the kernel address space to a kernel for use; and taking the firmware reserved space as a special address space of the runtime service.
In one possible design, the dividing module is specifically configured to:
determining an address range of the low-end memory space;
and taking the highest address in the address range as an initial address, and dividing an address space with a preset size as a firmware reserved space according to the direction of a low address.
In one possible design, when the low-side memory space is 256MB, and the address range is 0x0000_ 0000-0 x0FFF _ FFFF; the space with the address range of 0x0F00_ 0000-0 x0FFF _ FFFF is divided into a firmware reserved space.
In one possible design, the processing module is specifically configured to:
dividing the firmware reserved space into a plurality of subspaces, wherein the subspaces are used for storing functional codes executed by the runtime service and relevant data of the runtime service; the relevant data includes: a related structure list of a System Management Basic Input Output System (SMBIOS), data required to be saved in power Management and kernel transmission parameters; the function code includes: operating system shutdown code and restart code.
In one possible design, the firmware reservation space further includes: debugging address space, function expansion space and shared address space; wherein the shared address space receives access by the kernel and the BIOS.
In a third aspect, an embodiment of the present invention provides an address space allocation system, including: the device comprises a memory and a processor, wherein the memory stores executable instructions of the processor; wherein the processor is configured to perform the address space allocation method of any one of the first aspect via execution of the executable instructions.
In a fourth aspect, the present invention provides a computer-readable storage medium, on which a computer program is stored, which when executed by a processor implements the address space allocation method according to any one of the first aspect.
According to the address space allocation method and device provided by the invention, the initial address space transmitted to the kernel is obtained according to the preset specification; the initial address space comprises a low-end memory space and a high-end memory space; dividing an address space with a preset size from the low-end memory space to serve as a firmware reserved space; taking the residual memory space except the firmware reserved space in the high-end memory space and the low-end memory space as a kernel address space, and transmitting the kernel address space to a kernel for use; and taking the firmware reserved space as a special address space of the runtime service. Therefore, the problem of parameter transmission between the UEFI and the Linux kernel can be solved on the premise of not modifying the kernel of the operating system, so that the MIPS can use the corresponding functions of the Runtime Services under the condition that the Runtime Services are incompletely supported.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings needed to be used in the description of the embodiments or the prior art will be briefly introduced below, and it is obvious that the drawings in the following description are some embodiments of the present invention, and for those skilled in the art, other drawings can be obtained according to these drawings without creative efforts.
FIG. 1 is a diagram illustrating address space distribution in an application scenario of the present invention;
fig. 2 is a flowchart of an address space allocation method according to an embodiment of the present invention;
FIG. 3 is a diagram illustrating the distribution of firmware reserved space according to an embodiment of the present invention;
fig. 4 is a schematic structural diagram of an address space allocation apparatus according to a second embodiment of the present invention;
fig. 5 is a schematic structural diagram of an address space allocation system according to a third embodiment of the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the embodiments of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are some, but not all, embodiments of the present invention. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
The terms "first," "second," "third," "fourth," and the like in the description and in the claims, as well as in the drawings, if any, are used for distinguishing between similar elements and not necessarily for describing a particular sequential or chronological order. It is to be understood that the data so used is interchangeable under appropriate circumstances such that the embodiments of the invention described herein are, for example, capable of operation in sequences other than those illustrated or otherwise described herein. Furthermore, the terms "comprises," "comprising," and "having," and any variations thereof, are intended to cover a non-exclusive inclusion, such that a process, method, system, article, or apparatus that comprises a list of steps or elements is not necessarily limited to those steps or elements expressly listed, but may include other steps or elements not expressly listed or inherent to such process, method, article, or apparatus.
The technical solution of the present invention will be described in detail below with specific examples. The following several specific embodiments may be combined with each other, and details of the same or similar concepts or processes may not be repeated in some embodiments.
In the following, some terms in the present application are explained to facilitate understanding by those skilled in the art:
1) the Basic Input Output System (BIOS) is one of software having the closest relationship with hardware in computer System software, and includes the most Basic interrupt service routine, System setup routine, power-on self-test routine, and System boot bootstrap routine. The BIOS program is a program that is first started to be executed after the computer is powered on, completes hardware detection and basic setting functions, and provides an interface for development and loading of an operating system and other self-starting programs, and is the most basic system software in a computer system.
2) PMON is an open source software with both BIOS and boot loader functions.
Fig. 1 is a schematic diagram of address space distribution in an application scenario of the present invention, as shown in fig. 1, including: a high-side memory space 10 and a low-side memory space 20; the high-end memory space 10 includes: a high-end System Random Access Memory (System RAM), a Reserved space (Reserved), a pci (peripheral Component interface) device storage space, a window configuration Memory, an inter-core interrupt related register, an IO and a chip configuration register. Optionally, the size of the low-end memory space 20 may be set to 256 MB; and divides an address space with a preset size in the low-end memory space 20 as a firmware reserved space 21 of the runtime service. Further, the firmware reserved space can be divided into a plurality of subspaces, and the subspaces are used for storing the functional codes executed by the runtime service and the related data of the runtime service; the relevant data includes: the SMBIOS system comprises a related structure list of a system management basic input and output system SMBIOS, data required to be stored in power management and kernel transfer parameters; the function code includes: operating system shutdown code and restart code.
By setting the address space distribution, the address space with the preset size divided from the low-end memory space 20 can be used to implement the Runtime Services related functions. Therefore, on the premise of not modifying the kernel of the operating system, the problem of parameter transmission between UEFI and the Linux kernel when the running Services support of the MIPS framework is incomplete is effectively solved, and normal use of various functions such as power management and the like is ensured.
The following describes the technical solutions of the present invention and how to solve the above technical problems with specific embodiments. The following several specific embodiments may be combined with each other, and details of the same or similar concepts or processes may not be repeated in some embodiments. Embodiments of the present invention will be described below with reference to the accompanying drawings.
Fig. 2 is a flowchart of an address space allocation method according to an embodiment of the present invention, and as shown in fig. 2, the method in this embodiment may include:
s101, acquiring an initial address space transmitted to a kernel according to a preset specification; the initial address space includes a low-end memory space and a high-end memory space.
In this embodiment, when the PMON is used as the BIOS, the address space specification used by the kernel is passed to. Namely, the PMON is used to transmit the address space distribution specification of the kernel, and the initial address space transmitted to the kernel is obtained.
S102, an address space with a preset size is divided from the low-end memory space and used as a firmware reserved space.
In an alternative embodiment, the address range of the low-end memory space may be determined; and dividing an address space with a preset size as a firmware reserved space according to a low-order address direction by taking a highest-order address in an address range as an initial address.
Specifically, when the low-end memory space is 256MB, and the address range is 0x0000_ 0000-0 x0FFF _ FFFF; the space with the address range of 0x0F00_ 0000-0 x0FFF _ FFFF is divided into a firmware reserved space.
It should be noted that the present embodiment does not limit the usage manner of the low-end memory space. For example, in PMON, native code may be stored in a firmware reserved space in the low-end memory space. Specifically, when the low-end memory space is 256MB, the native code of PMON is stored in the high 16M space of the low-end memory space. In UEFI, the self code can be stored in the residual 240M space of the low-end memory space and the 2M space of the high-end memory space; and, the code of the UEFI itself is restricted from using the firmware reserved space.
It should be noted that, in this embodiment, the size of the divided firmware reserved space and the address range of the divided firmware reserved space are not limited, and the address space may be a continuous space or a discontinuous space.
S103, taking the residual memory space except the firmware reserved space in the high-end memory space and the low-end memory space as a kernel address space, and transmitting the kernel address space to a kernel for use.
In this embodiment, the address space distribution passed to the kernel by PMON is followed, and a firmware reserved space is reserved in the low-end memory space. Specifically, the 16M high address space of the 256M memory in the low memory space can be selected as the firmware reserved space. Thereby ensuring that the 16M address is not within the address range of the firmware's own allocable operation and that the 16M address is not passed to the kernel for use, i.e. the 16M address is not within the address range of the kernel's own allocable operation.
Specifically, with reference to fig. 1, the low 256MB space of the address range 0x0000 — 0x0FFF _ FFFF may be set as the low-end memory space, where 0x 0000000 — 0x001F FFFF is the 2M address space reserved for the compatible old version firmware; 0x0F00_ 0000-0 x0FFF _ FFFF is a 16M address space reserved for firmware. In addition, setting an address range 0x1000_ 0000-0 x1FFF _ FFFF as an IO device space such as PCI and a part of chip configuration register space; the address range 0x3000_ 0000-0 x3FFF _ FFFF is a space range of the window configuration register; the address range 0x4000_ 0000-0 x7FFF _ FFFF is the PCI device memory space range; the address range 0x2000_ 0000-0 x2FFF _ FFFF and the address range 0x8000_ 0000-high memory base address-0 x0000_0001 are reserved spaces. The address range constraint of the high-end memory base address is as follows: 2n+0x10000000, where n has a value in the range [31,40 ].
And S104, taking the reserved firmware space as a special address space of the runtime service.
In an alternative embodiment, the firmware reserved space may be divided into a plurality of subspaces, and the subspaces are used for storing the functional codes executed by the runtime service and the related data of the runtime service; the relevant data includes: the SMBIOS system comprises a related structure list of a system management basic input and output system SMBIOS, data required to be stored in power management and kernel transfer parameters; the function code includes: operating system shutdown code and restart code.
In another alternative embodiment, the firmware reservation space further comprises: debugging address space, function expansion space and shared address space; wherein the shared address space receives access by the kernel and the BIOS. That is, both the kernel and the BIOS may access data in the shared address space; the shared address space is typically used to store data that is MIPS architecture related and needs to be saved.
Specifically, fig. 3 is a schematic distribution diagram of the firmware reserved space according to an embodiment of the present invention, and as shown in fig. 3, the firmware reserved space 21 includes: shutdown/restart function code storage space, kernel transfer parameter storage space, SMBIOS related structure list storage space, power management required storage data storage space, shared address space, debugging address space, and function extension space.
It should be noted that the number of partitions of the subspace of the firmware reserved space and the size of each subspace are not limited in the present embodiment. The number of subspaces and the size of each subspace can be adjusted by those skilled in the art according to actual conditions.
In this embodiment, an initial address space transmitted to a kernel is obtained according to a preset specification; the initial address space comprises a low-end memory space and a high-end memory space; dividing an address space with a preset size from a low-end memory space to serve as a firmware reserved space; taking the residual memory space except the firmware reserved space in the high-end memory space and the low-end memory space as a kernel address space, and transmitting the kernel address space to a kernel for use; the firmware is reserved as a private address space for runtime services. Therefore, the problem of parameter transmission between the UEFI and the Linux kernel can be solved on the premise of not modifying the kernel of the operating system, so that the MIPS can use the corresponding functions of the Runtime Services under the condition that the Runtime Services are incompletely supported.
Fig. 4 is a schematic structural diagram of an address space allocation apparatus according to a second embodiment of the present invention, and as shown in fig. 4, the apparatus in this embodiment may include:
an obtaining module 31, configured to obtain an initial address space transmitted to the kernel according to a preset specification; the initial address space comprises a low-end memory space and a high-end memory space;
a dividing module 32, configured to divide an address space with a preset size from a low-end memory space to serve as a firmware reserved space;
the processing module 33 is configured to use the remaining memory space excluding the firmware reserved space in the high-end memory space and the low-end memory space as a kernel address space, and transmit the kernel address space to the kernel for use; the firmware is reserved as a private address space for runtime services.
In one possible design, the partitioning module 32 is specifically configured to:
determining an address range of a low-end memory space;
and dividing an address space with a preset size as a firmware reserved space according to a low-order address direction by taking a highest-order address in an address range as an initial address.
In one possible design, when the low-side memory space is 256MB, and the address range is 0x0000_ 0000-0 x0FFF _ FFFF; the space with the address range of 0x0F00_ 0000-0 x0FFF _ FFFF is divided into a firmware reserved space.
In one possible design, the processing module 33 is specifically configured to:
dividing a firmware reserved space into a plurality of subspaces, wherein the subspaces are used for storing functional codes executed by the runtime service and relevant data of the runtime service; the relevant data includes: the SMBIOS system comprises a related structure list of a system management basic input and output system SMBIOS, data required to be stored in power management and kernel transfer parameters; the function code includes: operating system shutdown code and restart code.
In one possible design, the firmware reservation space further includes: debugging address space, function expansion space and shared address space; wherein the shared address space receives access by the kernel and the BIOS.
The allocation apparatus for display memory of this embodiment may execute the technical solution in the method shown in fig. 2, and for the specific implementation process and the technical principle, reference is made to the relevant description in the method shown in fig. 2, which is not described herein again.
In this embodiment, an initial address space transmitted to a kernel is obtained according to a preset specification; the initial address space comprises a low-end memory space and a high-end memory space; dividing an address space with a preset size from a low-end memory space to serve as a firmware reserved space; taking the residual memory space except the firmware reserved space in the high-end memory space and the low-end memory space as a kernel address space, and transmitting the kernel address space to a kernel for use; the firmware is reserved as a private address space for runtime services. Therefore, the problem of parameter transmission between the UEFI and the Linux kernel can be solved on the premise of not modifying the kernel of the operating system, so that the MIPS can use the corresponding functions of the Runtime Services under the condition that the Runtime Services are incompletely supported.
Fig. 5 is a schematic structural diagram of an address space allocation system according to a third embodiment of the present invention, and as shown in fig. 5, the control system 40 according to this embodiment may include: a processor 41 and a memory 42.
A memory 42 for storing a computer program (such as an application program, a functional module, and the like implementing the above-described address space allocation method), a computer instruction, and the like;
the computer programs, computer instructions, etc. described above may be stored in one or more memories 42 in partitions. And the above-mentioned computer program, computer instructions, data, etc. can be called by the processor 41.
A processor 41 for executing the computer program stored in the memory 42 to implement the steps of the method according to the above embodiments.
Reference may be made in particular to the description relating to the preceding method embodiment.
The processor 41 and the memory 42 may be separate structures or may be integrated structures integrated together. When the processor 41 and the memory 42 are separate structures, the memory 42 and the processor 41 may be coupled by a bus 43.
The server in this embodiment may execute the technical solution in the method shown in fig. 2, and for the specific implementation process and the technical principle, reference is made to the relevant description in the method shown in fig. 2, which is not described herein again.
In addition, embodiments of the present application further provide a computer-readable storage medium, in which computer-executable instructions are stored, and when at least one processor of the user equipment executes the computer-executable instructions, the user equipment performs the above-mentioned various possible methods.
Computer-readable media includes both computer storage media and communication media including any medium that facilitates transfer of a computer program from one place to another. A storage media may be any available media that can be accessed by a general purpose or special purpose computer. An exemplary storage medium is coupled to the processor such the processor can read information from, and write information to, the storage medium. Of course, the storage medium may also be integral to the processor. The processor and the storage medium may reside in an ASIC. Additionally, the ASIC may reside in user equipment. Of course, the processor and the storage medium may reside as discrete components in a communication device.
Those of ordinary skill in the art will understand that: all or a portion of the steps of implementing the above-described method embodiments may be performed by hardware associated with program instructions. The program may be stored in a computer-readable storage medium. When executed, the program performs steps comprising the method embodiments described above; and the aforementioned storage medium includes: various media that can store program codes, such as ROM, RAM, magnetic or optical disks.
Finally, it should be noted that: the above embodiments are only used to illustrate the technical solution of the present invention, and not to limit the same; while the invention has been described in detail and with reference to the foregoing embodiments, it will be understood by those skilled in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some or all of the technical features may be equivalently replaced; and the modifications or the substitutions do not make the essence of the corresponding technical solutions depart from the scope of the technical solutions of the embodiments of the present invention.

Claims (8)

1. An address space allocation method, comprising:
acquiring an initial address space transmitted to a kernel according to a preset specification; the initial address space comprises a low-end memory space and a high-end memory space;
dividing an address space with a preset size from the low-end memory space to serve as a firmware reserved space;
taking the residual memory space except the firmware reserved space in the high-end memory space and the low-end memory space as a kernel address space, and transmitting the kernel address space to a kernel for use;
taking the firmware reserved space as a special address space of a runtime service;
the using the firmware reserved space as a private address space of a runtime service includes:
dividing the firmware reserved space into a plurality of subspaces, wherein the subspaces are used for storing functional codes executed by the runtime service and relevant data of the runtime service; the relevant data includes: the SMBIOS system comprises a related structure list of a system management basic input and output system SMBIOS, data required to be stored in power management and kernel transfer parameters; the function code includes: operating system shutdown code and restart code.
2. The method of claim 1, wherein partitioning a predetermined size of address space from the low-end memory space as a firmware reserved space comprises:
determining an address range of the low-end memory space;
and taking the highest address in the address range as an initial address, and dividing an address space with a preset size as a firmware reserved space according to the direction of a low address.
3. The method of claim 1 or 2, wherein the firmware reserving space further comprises: debugging address space, function expansion space and shared address space; wherein the shared address space receives access by the kernel and the BIOS.
4. An address space allocation apparatus, comprising:
the acquisition module is used for acquiring an initial address space transmitted to the kernel according to a preset specification; the initial address space comprises a low-end memory space and a high-end memory space;
the dividing module is used for dividing an address space with a preset size from the low-end memory space to be used as a firmware reserved space;
the processing module is used for taking the residual memory space except the firmware reserved space in the high-end memory space and the low-end memory space as a kernel address space and transmitting the kernel address space to a kernel for use; taking the firmware reserved space as a special address space of a runtime service;
the processing module is specifically configured to:
dividing the firmware reserved space into a plurality of subspaces, wherein the subspaces are used for storing functional codes executed by the runtime service and relevant data of the runtime service; the relevant data includes: the SMBIOS system comprises a related structure list of a system management basic input and output system SMBIOS, data required to be stored in power management and kernel transfer parameters; the function code includes: operating system shutdown code and restart code.
5. The apparatus according to claim 4, wherein the partitioning module is specifically configured to:
determining an address range of the low-end memory space;
and taking the highest address in the address range as an initial address, and dividing an address space with a preset size as a firmware reserved space according to the direction of a low address.
6. The apparatus of claim 4 or 5, wherein the firmware reservation space further comprises: debugging address space, function expansion space and shared address space; wherein the shared address space receives access by the kernel and the BIOS.
7. An address space allocation system, comprising: the memory stores executable information of the processor; wherein the processor is configured to perform the address space allocation method of any of claims 1-3 via execution of the executable information.
8. A computer-readable storage medium, on which a computer program is stored, which, when being executed by a processor, carries out the address space allocation method of any one of claims 1 to 3.
CN201811615559.XA 2018-12-27 2018-12-27 Address space allocation method and device Active CN109656720B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811615559.XA CN109656720B (en) 2018-12-27 2018-12-27 Address space allocation method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811615559.XA CN109656720B (en) 2018-12-27 2018-12-27 Address space allocation method and device

Publications (2)

Publication Number Publication Date
CN109656720A CN109656720A (en) 2019-04-19
CN109656720B true CN109656720B (en) 2021-03-05

Family

ID=66117265

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811615559.XA Active CN109656720B (en) 2018-12-27 2018-12-27 Address space allocation method and device

Country Status (1)

Country Link
CN (1) CN109656720B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113806244B (en) * 2021-11-18 2022-02-08 深圳比特微电子科技有限公司 Memory management method for system on chip and device based on system on chip

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107045436B (en) * 2016-02-05 2019-09-10 龙芯中科技术有限公司 Access processing method and device

Also Published As

Publication number Publication date
CN109656720A (en) 2019-04-19

Similar Documents

Publication Publication Date Title
CN109478135B (en) Computer system and method for rebooting a computer system
RU2435200C2 (en) Fast booting operating system from off state
RU2630171C2 (en) Method of initialization of computer system with plurality of central processors
CN110134446B (en) Method for starting PCIE equipment scanning
US7493435B2 (en) Optimization of SMI handling and initialization
CN111095205A (en) Multi-core framework for pre-boot environment of system-on-chip
US7840792B2 (en) Utilizing hand-off blocks in system management mode to allow independent initialization of SMBASE between PEI and DXE phases
CN115357310A (en) System starting method and device, electronic equipment and storage medium
CN113282342A (en) Deployment method, device, system, electronic equipment and readable storage medium
JP2020030812A (en) Retrieving updated firmware code
JP2002288104A (en) Computer system, and method and program for its resource assigning
CN110297726B (en) Computer system with serial presence detection data and memory module control method
EP3724757B1 (en) Firmware publication of multiple binary images
CN109656720B (en) Address space allocation method and device
EP3719645A1 (en) Extension application mechanisms through intra-process operation systems
US7234047B1 (en) Method for managing memory space during system initialization
CN107911816B (en) Starting method for multi-mode IoT device, multi-mode IoT device and storage medium
EP4187374A1 (en) Kernel restarting method
EP1524597A1 (en) Method for managing threads in a memory-constrained system
CN115291951A (en) UEFI (unified extensible firmware interface) starting method and device, electronic equipment and storage medium
US11372792B1 (en) Automatic bus resource adjustment in a multiple root bridge computing system
CN109408407B (en) Display memory allocation method and device
CN112817749A (en) Storage partitioning method and device applied to embedded system and storage medium
US20230161600A1 (en) Kernel reboot method
CN102156653A (en) Manageable extension method, device and system thereof for system firmware

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information
CB02 Change of applicant information

Address after: 100095 Building 2, Longxin Industrial Park, Zhongguancun environmental protection technology demonstration park, Haidian District, Beijing

Applicant after: Loongson Zhongke Technology Co.,Ltd.

Address before: 100095 Building 2, Longxin Industrial Park, Zhongguancun environmental protection technology demonstration park, Haidian District, Beijing

Applicant before: LOONGSON TECHNOLOGY Corp.,Ltd.

GR01 Patent grant
GR01 Patent grant