BR112014022764A8 - Método de atribuição de memória e sistema para controle de atribuição de memória para memória que é acessível em um ambiente de sistema operacional de um processador multicore - Google Patents
Método de atribuição de memória e sistema para controle de atribuição de memória para memória que é acessível em um ambiente de sistema operacional de um processador multicoreInfo
- Publication number
- BR112014022764A8 BR112014022764A8 BR112014022764A BR112014022764A BR112014022764A8 BR 112014022764 A8 BR112014022764 A8 BR 112014022764A8 BR 112014022764 A BR112014022764 A BR 112014022764A BR 112014022764 A BR112014022764 A BR 112014022764A BR 112014022764 A8 BR112014022764 A8 BR 112014022764A8
- Authority
- BR
- Brazil
- Prior art keywords
- memory
- allocation
- memory elements
- memory allocation
- accessible
- Prior art date
Links
- 238000000034 method Methods 0.000 title abstract 4
- 230000000903 blocking effect Effects 0.000 abstract 4
Classifications
-
- 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation 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/5016—Allocation 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0806—Multiuser, multiprocessor or multiprocessing cache systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/382—Information transfer, e.g. on bus using universal interface adapter
- G06F13/385—Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
-
- 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
-
- 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
-
- 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/46—Multiprogramming arrangements
- G06F9/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0631—Configuration or reconfiguration of storage systems by allocating resources to storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0644—Management of space entities, e.g. partitions, extents, pools
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Multi Processors (AREA)
- Memory System (AREA)
- Storage Device Security (AREA)
Abstract
MÉTODO E SISTEMA PARA GERENCIAR A ATRIBUIÇÃO DE UMA PLURALIDADE DE ELEMENTOS DE MEMÓRIA E MEIO DE ARMAZENAMENTO LEGÍVEL POR COMPUTADOR. A invenção refere-se a sistemas e técnicas de gerenciamento da atribuição de uma pluralidade de elementos de memória armazenados dentro de uma pluralidade de estruturas de lista sem bloqueio que são apresentados. Estas estruturas de lista sem bloqueio (tal como Slists) podem ser acessíveis dentro de um ambiente de sistema operacional de um processador multicore - e podem ser particionadas dentro do sistema. Os elementos de memória também podem ser particionados entre estas estruturas de lista sem bloqueio. Quando um processador core (ou outro elemento de processamento) faz uma solicitação para a atribuição de um elemento de memória para si mesmo, o sistema e/ou método pode pesquisar entre as estruturas de lista sem bloqueio para um elemento de memória disponível. Quando um elemento de memória adequado e/ou disponível for encontrado, o sistema pode alocar o elemento de memória disponível para solicitar o processador core. Dinamicamente, o equilíbrio dos elementos de memória pode ocorrer de acordo com uma métrica de equilíbrio adequado, tal como manter a igualdade numérica substancial dos elementos de memória ou evitar o excesso de atribuição de recursos.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/458,355 | 2012-04-27 | ||
US13/458,355 US9652289B2 (en) | 2012-04-27 | 2012-04-27 | Systems and methods for S-list partitioning |
PCT/US2013/037266 WO2013163008A1 (en) | 2012-04-27 | 2013-04-19 | Systems and methods for partitioning of singly linked lists for allocation memory elements |
Publications (3)
Publication Number | Publication Date |
---|---|
BR112014022764A2 BR112014022764A2 (pt) | 2017-06-20 |
BR112014022764A8 true BR112014022764A8 (pt) | 2017-12-12 |
BR112014022764B1 BR112014022764B1 (pt) | 2021-10-13 |
Family
ID=48289638
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
BR112014022764-0A BR112014022764B1 (pt) | 2012-04-27 | 2013-04-19 | Método de atribuição de memória e sistema para controle de atribuição de memória para memória que é acessível em um ambiente de sistema operacional de um processador multicore |
Country Status (8)
Country | Link |
---|---|
US (2) | US9652289B2 (pt) |
EP (1) | EP2842032B1 (pt) |
JP (1) | JP6275119B2 (pt) |
CN (1) | CN104254839B (pt) |
BR (1) | BR112014022764B1 (pt) |
RU (1) | RU2639944C2 (pt) |
TW (1) | TWI605340B (pt) |
WO (1) | WO2013163008A1 (pt) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9652289B2 (en) | 2012-04-27 | 2017-05-16 | Microsoft Technology Licensing, Llc | Systems and methods for S-list partitioning |
US9372825B1 (en) * | 2013-02-27 | 2016-06-21 | Netapp, Inc. | Global non-volatile solid-state cache in a network storage system |
US9377954B2 (en) * | 2014-05-09 | 2016-06-28 | Advanced Micro Devices, Inc. | System and method for memory allocation in a multiclass memory system |
US9870328B2 (en) * | 2014-11-14 | 2018-01-16 | Cavium, Inc. | Managing buffered communication between cores |
US10564865B2 (en) | 2016-03-22 | 2020-02-18 | Seagate Technology Llc | Lockless parity management in a distributed data storage system |
WO2018032519A1 (zh) * | 2016-08-19 | 2018-02-22 | 华为技术有限公司 | 一种资源分配方法、装置及numa系统 |
CN107944297B (zh) * | 2017-12-11 | 2020-11-24 | 北京奇虎科技有限公司 | 一种访问文件的控制方法及装置 |
EP3756092A4 (en) * | 2018-05-04 | 2021-04-14 | Samsung Electronics Co., Ltd. | APPARATUS AND METHOD FOR MANAGING A SHARED RESOURCE IN A MULTI-CORE PROCESSOR |
CN111143058A (zh) * | 2019-12-17 | 2020-05-12 | 长沙新弘软件有限公司 | 一种基于后备列表的内存管理方法 |
Family Cites Families (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02162439A (ja) * | 1988-12-15 | 1990-06-22 | Fujitsu Ltd | 共有メモリのフリーリスト管理方式 |
US6058460A (en) * | 1996-06-28 | 2000-05-02 | Sun Microsystems, Inc. | Memory allocation in a multithreaded environment |
US6785888B1 (en) * | 1997-08-29 | 2004-08-31 | International Business Machines Corporation | Memory allocator for a multiprocessor computer system |
US6643754B1 (en) * | 2000-02-15 | 2003-11-04 | International Business Machines Corporation | System and method for dynamically allocating computer memory |
US6986015B2 (en) | 2001-12-10 | 2006-01-10 | Incipient, Inc. | Fast path caching |
US7111289B2 (en) | 2001-12-21 | 2006-09-19 | Agere Systems, Inc. | Method for implementing dual link list structure to enable fast link-list pointer updates |
US7016923B2 (en) | 2002-11-05 | 2006-03-21 | Sun Microsystems, Inc. | Multi-threaded garbage collector employing cascaded memory arrays of task identifiers to implement work stealing queues for task identification and processing |
US7069394B2 (en) | 2002-12-05 | 2006-06-27 | International Business Machines Corporation | Dynamic data routing mechanism for a high speed memory cloner |
US7587566B2 (en) | 2004-02-20 | 2009-09-08 | Microsoft Corporation | Realtime memory management via locking realtime threads and related data structures |
US7844973B1 (en) | 2004-12-09 | 2010-11-30 | Oracle America, Inc. | Methods and apparatus providing non-blocking access to a resource |
US10769215B2 (en) | 2005-07-14 | 2020-09-08 | Conversant Wireless Licensing S.A R.L. | Method, apparatus and computer program product providing an application integrated mobile device search solution using context information |
US7904688B1 (en) * | 2005-12-21 | 2011-03-08 | Trend Micro Inc | Memory management unit for field programmable gate array boards |
EP1936498A1 (en) * | 2006-12-21 | 2008-06-25 | International Business Machines Corporation | A method and system to manage memory accesses from multithread programs on multiprocessor systems |
US8700823B2 (en) * | 2007-03-15 | 2014-04-15 | Broadcom Corporation | Software driver interconnect framework |
US8495641B2 (en) * | 2007-06-29 | 2013-07-23 | International Business Machines Corporation | Efficiently boosting priority of read-copy update readers while resolving races with exiting and unlocking processes |
RU2406127C2 (ru) | 2007-09-18 | 2010-12-10 | Виктор Анатольевич Кущенко | Цифровой процессор кущенко в.а. |
US7941688B2 (en) | 2008-04-09 | 2011-05-10 | Microsoft Corporation | Managing timers in a multiprocessor environment |
US20090259780A1 (en) | 2008-04-10 | 2009-10-15 | Weistech Technology Co., Ltd. | Portable electronic device for controlling under-controlled devices |
US8190827B2 (en) * | 2009-02-27 | 2012-05-29 | Red Hat, Inc. | Memory sharing among computer programs |
US8078825B2 (en) * | 2009-03-11 | 2011-12-13 | Oracle America, Inc. | Composite hash and list partitioning of database tables |
US20100251250A1 (en) * | 2009-03-30 | 2010-09-30 | Microsoft Corporation | Lock-free scheduler with priority support |
TW201112125A (en) | 2009-09-16 | 2011-04-01 | Ibm | Method and system for operating an instance of a data structure |
US20110296437A1 (en) * | 2010-05-28 | 2011-12-01 | Devendra Raut | Method and apparatus for lockless communication between cores in a multi-core processor |
US9652289B2 (en) | 2012-04-27 | 2017-05-16 | Microsoft Technology Licensing, Llc | Systems and methods for S-list partitioning |
-
2012
- 2012-04-27 US US13/458,355 patent/US9652289B2/en active Active
-
2013
- 2013-04-15 TW TW102113317A patent/TWI605340B/zh not_active IP Right Cessation
- 2013-04-19 JP JP2015509034A patent/JP6275119B2/ja active Active
- 2013-04-19 BR BR112014022764-0A patent/BR112014022764B1/pt active IP Right Grant
- 2013-04-19 EP EP13720655.3A patent/EP2842032B1/en active Active
- 2013-04-19 CN CN201380022199.1A patent/CN104254839B/zh active Active
- 2013-04-19 WO PCT/US2013/037266 patent/WO2013163008A1/en active Application Filing
- 2013-04-19 RU RU2014143063A patent/RU2639944C2/ru active
-
2017
- 2017-05-15 US US15/595,088 patent/US10223253B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
EP2842032B1 (en) | 2020-05-06 |
BR112014022764B1 (pt) | 2021-10-13 |
RU2014143063A (ru) | 2016-05-20 |
EP2842032A1 (en) | 2015-03-04 |
US20170249243A1 (en) | 2017-08-31 |
TWI605340B (zh) | 2017-11-11 |
JP2015515076A (ja) | 2015-05-21 |
US20130290667A1 (en) | 2013-10-31 |
BR112014022764A2 (pt) | 2017-06-20 |
US10223253B2 (en) | 2019-03-05 |
CN104254839A (zh) | 2014-12-31 |
US9652289B2 (en) | 2017-05-16 |
CN104254839B (zh) | 2018-10-12 |
RU2639944C2 (ru) | 2017-12-25 |
WO2013163008A1 (en) | 2013-10-31 |
JP6275119B2 (ja) | 2018-02-07 |
TW201405308A (zh) | 2014-02-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
BR112014022764A8 (pt) | Método de atribuição de memória e sistema para controle de atribuição de memória para memória que é acessível em um ambiente de sistema operacional de um processador multicore | |
WO2014028109A3 (en) | Memory sharing via a unified memory architecture | |
WO2014088967A8 (en) | Service allocation in a distributed computing platform | |
WO2014033606A3 (en) | Systems and methods of memory and access management | |
WO2015108708A3 (en) | Unified memory systems and methods | |
BR112016020148A2 (pt) | método, produto de programa de computador e sistema para gerenciamento de recursos com base em perfis de utilização de recurso específicos para dispositivo ou específicos para usuário". | |
BR112012032060A2 (pt) | método e sistema para modelos de simulação paralela. | |
BR112018013438A2 (pt) | tecnologias de rede | |
BR112014031579A2 (pt) | gerenciamento de tarefa de máquina virtual intermediário | |
BR112016023577A2 (pt) | aparelho e método para configurar solução de redundância em arquitetura de computação de nuvem | |
BR112015003786A2 (pt) | redimensionamento de uma instância de máquina virtual | |
BR112016010291A8 (pt) | sistema de computação para atender solicitações de uma pluralidade de clientes e método | |
BR112015019570A8 (pt) | método, sistema e meio de armazenamento por computador para manter compatibilidade de aplicativo com base em restrições de conjunto de atribuições | |
GB2504411A (en) | Shared resource and virtual resource management in a networked environment | |
JP2017528846A5 (pt) | ||
BRPI0708338A8 (pt) | Migração de uma máquina virtual que possui um recurso tal como um dispositivo de hardware | |
EP2687991A3 (en) | Methods And Structure For Improved Flexibility In Shared Storage Caching By Multiple Systems Operating As Multiple Virtual Machines | |
MY184551A (en) | Systems and methods for server cluster application virtualization | |
WO2012134431A4 (en) | Dynamic power management of cache memory in a multi-core processing system | |
DK2223214T3 (da) | Identificering af virtuel topologi af en computerkonfiguration | |
BR112015032790A2 (pt) | sistema e método para fornecimento de controle de acesso a uma unidade de processamento gráfica | |
BR112013029296A8 (pt) | Propagação de contador de referência | |
BR112017001850A2 (pt) | reatribuição de carga de trabalho distribuída após falha de comunicação | |
BR112016007205A2 (pt) | sistemas e métodos para mapeamento dinâmico quanto à localidade e equilíbrio | |
BR112015008373A2 (pt) | método, mídia de armazenamento legível por computador e sistema para gerenciamento de energia por meio de partição dinâmica de funcionalidade |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
B25A | Requested transfer of rights approved |
Owner name: MICROSOFT TECHNOLOGY LICENSING, LLC (US) |
|
B06F | Objections, documents and/or translations needed after an examination request according [chapter 6.6 patent gazette] | ||
B06U | Preliminary requirement: requests with searches performed by other patent offices: procedure suspended [chapter 6.21 patent gazette] | ||
B09A | Decision: intention to grant [chapter 9.1 patent gazette] | ||
B16A | Patent or certificate of addition of invention granted [chapter 16.1 patent gazette] |
Free format text: PRAZO DE VALIDADE: 20 (VINTE) ANOS CONTADOS A PARTIR DE 19/04/2013, OBSERVADAS AS CONDICOES LEGAIS. |