RU2015144322A - Способ начальной загрузки компьютерной системы с множеством центральных процессоров - Google Patents
Способ начальной загрузки компьютерной системы с множеством центральных процессоров Download PDFInfo
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations 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/177—Initialisation or configuration control
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4405—Initialisation 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 выбранные задачи по меньшей мере частично параллельно.
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)
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)
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 | 情報処理装置、及び情報処理方法 |
-
2013
- 2013-03-15 RU RU2015144322A patent/RU2630171C2/ru active
- 2013-03-15 CN CN201380074736.7A patent/CN105190550B/zh active Active
- 2013-03-15 AU AU2013382615A patent/AU2013382615B2/en active Active
- 2013-03-15 EP EP13878140.6A patent/EP2972819B1/en active Active
- 2013-03-15 WO PCT/CN2013/072764 patent/WO2014139177A1/en active Application Filing
- 2013-03-15 KR KR1020157028909A patent/KR101766695B1/ko active IP Right Grant
- 2013-03-15 JP JP2015561896A patent/JP2016513839A/ja active Pending
-
2015
- 2015-09-15 US US14/855,328 patent/US9690595B2/en active Active
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总线设备枚举方法和装置 |