RU2015144322A - Способ начальной загрузки компьютерной системы с множеством центральных процессоров - Google Patents

Способ начальной загрузки компьютерной системы с множеством центральных процессоров Download PDF

Info

Publication number
RU2015144322A
RU2015144322A RU2015144322A RU2015144322A RU2015144322A RU 2015144322 A RU2015144322 A RU 2015144322A RU 2015144322 A RU2015144322 A RU 2015144322A RU 2015144322 A RU2015144322 A RU 2015144322A RU 2015144322 A RU2015144322 A RU 2015144322A
Authority
RU
Russia
Prior art keywords
tasks
task
cpus
cpu
tdc
Prior art date
Application number
RU2015144322A
Other languages
English (en)
Other versions
RU2630171C2 (ru
Inventor
Шайори ДАС
Аман ШАХИ
Original Assignee
Хуавей Текнолоджиз Ко., Лтд.
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 Хуавей Текнолоджиз Ко., Лтд. filed Critical Хуавей Текнолоджиз Ко., Лтд.
Publication of RU2015144322A publication Critical patent/RU2015144322A/ru
Application granted granted Critical
Publication of RU2630171C2 publication Critical patent/RU2630171C2/ru

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/177Initialisation or configuration control
    • 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/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4405Initialisation of multiprocessor systems

Landscapes

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

Claims (32)

1. Способ начальной загрузки компьютерной системы с множеством центральных процессоров (CPU), содержащий этапы, на которых
инициируют по меньшей мере два CPU из множества CPU при запуске процесса начальной загрузки;
получают с помощью каждого из указанных по меньшей мере двух инициализированных CPU доступ к таблице описания задач (TDC), хранимой в компьютерной системе, причем TDC включает в себя информацию по меньшей мере о двух задачах процесса начальной загрузки; и
выбирают с помощью каждого из указанных по меньшей мере двух инициализированных CPU задачу по меньшей мере из двух задач , информации о выборе указанных по меньшей мере двух задач в TDC;
получают с помощью каждого из указанных по меньшей мере двух инициализированных CPU выбранную задачу, согласно адресной информации выбранной задачи в TDC; и
исполняют с помощью каждого из указанных инициализированных CPU выбранные задачи по меньшей мере частично параллельно.
2. Способ по п. 1, в котором, когда первым CPU из инициализированных CPU получен доступ к TDC, указанный первый CPU выполнен с возможностью блокировки TDC, при этом заблокированная TDC не является доступной для CPU, отличающихся от первого CPU.
3. Способ по п. 2, в котором информация о выборе дополнительно содержит поле приоритета, указывающее приоритет каждой из указанных по меньшей мере двух задач, и задачу с более высоким приоритетом из указанных по меньшей мере двух задач выбирают сначала первым CPU.
4. Способ по п. 2, в котором информация о выборе дополнительно содержит поле зависимости, указывающее вторую задачу, от которой зависит первая задача из указанных по меньшей мере двух задач, при этом первая задача является выбираемой первым CPU, когда вторая задача помечена в качестве завершенной.
5. Способ по п. 2, в котором информация о выборе дополнительно содержит поле блокировки, указывающее, заблокирована ли каждая из указанных по меньшей мере двух задач инициализированным CPU, причем после выбора первым CPU третьей задачи из указанных по меньшей мере двух задач, согласно информации о выборе, первый CPU выполнен с возможностью пометки поля блокировки третьей задачи как «заблокированная», при этом третья задача, помеченная в качестве заблокированной, не является выбираемой инициализированными CPU, отличными от первого CPU.
6. Способ по п. 2, в котором информация о выборе дополнительно содержит поле состояния, указывающее, завершена ли каждая из указанных по меньшей мере двух задач, при этом, после завершения исполнения четвертой задачи из указанных по меньшей мере двух задач, первый CPU выполнен с возможностью пометки поля состояния четвертой задачи как «завершенная», причем четвертая задача, помеченная в качестве завершенной, не является выбираемой инициализированными CPU.
7. Компьютерная система, содержащая
множество центральных процессоров (CPU) соединенных с памятью, причем по меньшей мере два CPU из множества CPU подвергнуты инициации при запуске процесса начальной загрузки;
память выполнена с возможностью хранения таблицы описания задач (TDC) и первой команды, причем TDC включает в себя информацию по меньшей мере о двух задачах процесса начальной загрузки; а
по меньшей мере два инициализированных CPU из множества CPU выполнены с возможностью, согласно первой команде, доступа каждого из них к TDC, выбора каждым из них задачи из указанных по меньшей мере двух задач, согласно информации о выборе указанных по меньшей мере двух задач в TDC, получения каждым из них выбранной задачи, согласно адресной информации выбранной задачи в TDC; и исполнения выбранных задач по меньшей мере частично параллельно.
8. Компьютерная система по п. 7, в которой первый CPU из инициализированных CPU дополнительно выполнен с возможностью блокировки TDC после доступа к TDC, согласно первой команде, при этом заблокированная TDC не является доступной для CPU, отличных от первого CPU.
9. Компьютерная система по п. 8, в которой информация о выборе дополнительно содержит поле приоритета, указывающее приоритет каждой из указанных по меньшей мере двух задач, при этом первый CPU дополнительно выполнен с возможностью выбора сначала задачи с более высоким приоритетом из указанных по меньшей мере двух задач, согласно первой команде.
10. Компьютерная система по п. 8, в которой информация о выборе дополнительно содержит поле зависимости, указывающее вторую задачу, от которой зависит первая задача из указанных по меньшей мере двух задач, при этом первый CPU дополнительно выполнен с возможностью выбора первой задачи, когда вторая задача помечена в качестве завершенной, согласно первой команде.
11. Компьютерная система по п. 8, в которой информация о выборе дополнительно содержит поле блокировки, указывающее, заблокирована ли каждая из указанных по меньшей мере двух задач инициализированным CPU, причем первый CPU дополнительно выполнен с возможностью пометки поля блокировки третьей задачи из указанных по меньшей мере двух задач, согласно первой команде после выбора первым CPU третьей задачи, при этом третья задача, помеченная в качестве заблокированной, не является выбираемой инициализированными CPU, отличными от первого CPU.
12. Компьютерная система по п. 8, в которой информация о выборе дополнительно содержит поле состояния, указывающее, завершена ли каждая из указанных по меньшей мере двух задач, причем первый CPU дополнительно выполнен с возможностью пометки поля состояния четвертой задачи из указанных по меньшей мере двух задач как «завершенная», согласно первой команде после завершения исполнения четвертой задачи, при этом четвертая задача, помеченная в качестве завершенная, не является выбираемой инициализированными CPU.
13. Компьютерная система по п. 8, в которой первый CPU дополнительно выполнен с возможностью разблокировки TDC, согласно первой команде после окончания выбора первым CPU.
14. Компьютерная система по п. 8, дополнительно содержащая схему инициализации, выполненную с возможностью инициализации CPU из множества CPU как CPU начальной загрузки; при этом CPU начальной загрузки выполнен с возможностью инициализации других CPU из множества CPU , согласно второй команде, хранимой в памяти.
15. Компьютерная система по п. 7, в которой указанные по меньшей мере две задачи включают в себя задачи, исполняемые параллельно инициализированными CPU, и происходят из процесса начальной загрузки компьютерной системы, включающей в себя модуль базовой системы ввода-вывода (BIOS), модуль начального загрузчика и модуль ядра.
16. Компьютерная система по п. 15, в которой этапы BIOS-модуля, модуля начального загрузчика и модуля ядра модуляризованы в этапы, включающие в себя независимые или асинхронные этапы, при этом модуляризованные этапы выделены для образования задач из указанных по меньшей мере двух задач.
17. Компьютерная система по п. 16, в которой этапы инициализации периферийных устройств в BIOS-модуле разделены на этапы инициализации устройства, отличной от модификации регистра конфигурации, и этапы регистра для модификации регистра конфигурации на основе указанных этапов инициализации, а этапы инициализации и этапы регистра выделены для образования различных задач из указанных по меньшей мере двух задач.
18. Компьютерная система по п. 8, в которой информация о выборе дополнительно содержит поле размера, указывающее размер каждой из указанных по меньшей мере двух задач, при этом
первый CPU дополнительно выполнен с возможностью определения, исполнять ли пятую задачу из указанных по меньшей мере двух задач, согласно доступной памяти для исполнения задач и полей размеров пятой задачи и задач, исполняемых в доступной памяти.
19. Компьютерная система по п. 7, в которой указанные по меньшей мере два инициализированных CPU выполнены с возможностью продолжения выбора и исполнения задач, согласно TDC, пока не исполнены все задачи, чья информация находится в TDC.
20. Энергонезависимый машиночитаемый носитель данных, содержащий коды для начальной загрузки компьютерной системы с множеством центральных процессоров (CPUs), вызывающие, при исполнении множеством инициализированных CPU из множества CPU, выполнения этапов, на которых: получают доступ каждым из инициализированных CPU к таблице описания задач (TDC), хранимой в компьютерной системе, причем TDC включает в себя информацию по меньшей мере о двух задачах процесса начальной загрузки; и
выбирают с помощью каждого из указанных по меньшей мере двух инициализированных CPU задачу по меньшей мере из двух задач, согласно информации о выборе указанных по меньшей мере двух задач в TDC;
получают с помощью каждого из указанных по меньшей мере двух инициализированных CPU выбранную задачу, согласно адресной информации выбранной задачи в TDC; и
исполняют с помощью каждого из указанных инициализированных CPU выбранные задачи по меньшей мере частично параллельно.
RU2015144322A 2013-03-15 2013-03-15 Способ начальной загрузки компьютерной системы с множеством центральных процессоров RU2630171C2 (ru)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2013/072764 WO2014139177A1 (en) 2013-03-15 2013-03-15 Booting method for computer system with multiple central processing units

Publications (2)

Publication Number Publication Date
RU2015144322A true RU2015144322A (ru) 2017-04-24
RU2630171C2 RU2630171C2 (ru) 2017-09-05

Family

ID=51535854

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2015144322A RU2630171C2 (ru) 2013-03-15 2013-03-15 Способ начальной загрузки компьютерной системы с множеством центральных процессоров

Country Status (8)

Country Link
US (1) US9690595B2 (ru)
EP (1) EP2972819B1 (ru)
JP (1) JP2016513839A (ru)
KR (1) KR101766695B1 (ru)
CN (1) CN105190550B (ru)
AU (1) AU2013382615B2 (ru)
RU (1) RU2630171C2 (ru)
WO (1) WO2014139177A1 (ru)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
BR112016026264B1 (pt) 2014-05-09 2022-01-18 Huawei Technologies Co., Ltd Método implementado por computador para otimizar um tempo de inicialização de um sistema de computador e sistema de computador
KR20160105657A (ko) * 2015-02-27 2016-09-07 한국전자통신연구원 멀티코어 프로그래밍 장치 및 방법
US10977092B2 (en) * 2015-10-16 2021-04-13 Qualcomm Incorporated Method for efficient task scheduling in the presence of conflicts
JP6832291B2 (ja) * 2015-10-23 2021-02-24 オラクル・インターナショナル・コーポレイション アプリケーションサーバを並列起動するためのシステムおよび方法
US9846583B2 (en) * 2015-12-15 2017-12-19 Xilinx, Inc. Hardware power-on initialization of an SoC through a dedicated processor
CN107203429A (zh) * 2016-03-18 2017-09-26 阿里巴巴集团控股有限公司 一种基于分布式锁加载分布式任务的方法以及装置
US10025587B2 (en) * 2016-08-17 2018-07-17 American Megatrends Inc. Method of bootup and installation, and computer system thereof
CN107368255B (zh) * 2017-07-25 2019-04-12 Oppo广东移动通信有限公司 解锁方法、移动终端及计算机可读存储介质
WO2019035660A1 (en) * 2017-08-16 2019-02-21 Samsung Electronics Co., Ltd. METHOD AND APPARATUS FOR MANAGING SERVICE PLANNING DURING STARTING
CN107704270B (zh) * 2017-09-21 2020-10-20 卡斯柯信号有限公司 基于二取二架构的μC/OS-II系统启动引导方法及装置
JP6942601B2 (ja) * 2017-10-18 2021-09-29 キヤノン株式会社 情報処理装置、その制御方法、及びプログラム
CN108153553A (zh) * 2018-01-23 2018-06-12 郑州云海信息技术有限公司 一种高端服务器启动方法、系统、装置及计算机存储介质
US11108996B1 (en) 2020-07-28 2021-08-31 Bank Of America Corporation Two-way intercept using coordinate tracking and video classification
CN112799729A (zh) * 2021-01-29 2021-05-14 苏州浪潮智能科技有限公司 多核片上系统的uboot启动方法、装置、设备及存储介质
US12056497B2 (en) * 2021-02-03 2024-08-06 Ampere Computing Llc Multi-socket computing system employing a parallelized boot architecture with partially concurrent processor boot-up operations, and related methods
CN114691594B (zh) * 2022-03-11 2023-05-23 珠海海奇半导体有限公司 一种基于非对称双核mcu设计的芯片架构及其实现方法
US20230418620A1 (en) * 2022-06-24 2023-12-28 Ampere Computing Llc Generalized boot operation for disaggregated, multiple (multi-) die computing systems, and related methods
CN115827079B (zh) * 2023-01-09 2023-07-28 深流微智能科技(深圳)有限公司 启动图形处理器的控制方法、控制装置和电子设备

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6158000A (en) * 1998-09-18 2000-12-05 Compaq Computer Corporation Shared memory initialization method for system having multiple processor capability
US6336185B1 (en) * 1998-09-24 2002-01-01 Phoenix Technologies Ltd. Use of other processors during BIOS boot sequence to minimize boot time
US6401202B1 (en) * 1999-06-18 2002-06-04 Phoenix Technologies Ltd. Multitasking during BIOS boot-up
US6732264B1 (en) 1999-12-14 2004-05-04 Intel Corporation Multi-tasking boot firmware
US7181609B2 (en) 2003-08-15 2007-02-20 Intel Corporation System and method for accelerated device initialization
JP4840605B2 (ja) * 2007-10-24 2011-12-21 日本電気株式会社 Osの起動方法
US8683213B2 (en) * 2007-10-26 2014-03-25 Qualcomm Incorporated Progressive boot for a wireless device
US8191073B2 (en) * 2008-03-04 2012-05-29 Fortinet, Inc. Method and system for polling network controllers
US7987336B2 (en) 2008-05-14 2011-07-26 International Business Machines Corporation Reducing power-on time by simulating operating system memory hot add
US8307198B2 (en) * 2009-11-24 2012-11-06 Advanced Micro Devices, Inc. Distributed multi-core memory initialization
JP2011232791A (ja) * 2010-04-23 2011-11-17 Seiko Epson Corp 情報処理装置、及び情報処理方法

Also Published As

Publication number Publication date
RU2630171C2 (ru) 2017-09-05
CN105190550A (zh) 2015-12-23
KR20150132343A (ko) 2015-11-25
EP2972819A4 (en) 2016-03-30
JP2016513839A (ja) 2016-05-16
AU2013382615A1 (en) 2015-10-08
US20160004542A1 (en) 2016-01-07
EP2972819A1 (en) 2016-01-20
KR101766695B1 (ko) 2017-08-09
EP2972819B1 (en) 2020-01-01
CN105190550B (zh) 2018-11-16
WO2014139177A1 (en) 2014-09-18
US9690595B2 (en) 2017-06-27
AU2013382615B2 (en) 2016-06-30

Similar Documents

Publication Publication Date Title
RU2015144322A (ru) Способ начальной загрузки компьютерной системы с множеством центральных процессоров
US11782688B2 (en) Target architecture determination
US8615766B2 (en) Hybrid operating system
US9652410B1 (en) Automated modification of configuration settings of an integrated circuit
US20150356049A1 (en) Assigning processors to memory mapped configuration
CN102646045A (zh) 多处理器系统及其并行启动方法
TW201723811A (zh) 於指令集架構中排序資料及合併經排序資料之技術
US11768691B2 (en) Boot process for early display initialization and visualization
US9003174B2 (en) Method for boosting an electronic device with multiple processing units, and electronic device for implementing the same
US10871970B1 (en) Memory channel storage device detection
US10558468B2 (en) Memory channel storage device initialization
US9250919B1 (en) Multiple firmware image support in a single memory device
US8510543B1 (en) Firmware supporting multiple boot paths
CN102930903A (zh) 一种内存测试方法及设备
JP2018501559A5 (ru)
US9792042B2 (en) Systems and methods for set membership matching
US10628309B1 (en) Loading a serial presence detect table according to jumper settings
US8881093B2 (en) Apparatus and method for reconstructing embedded software development environment
US10552376B1 (en) Accessing files stored in a firmware volume from a pre-boot application
JP2017520875A (ja) 複数メモリからのアプリケーション起動
CN111492350A (zh) 用于实现年龄平均化的在启动时的伪随机的逻辑-物理核心指派
CN110618794B (zh) 一种SSD固件访问NandFlash的方法和系统
US20170052799A1 (en) Integrated Circuit Device With Selectable Processor Core
US11061654B1 (en) Synchronization of concurrent computation engines
CN110858184B (zh) 一种pci总线设备枚举方法和装置