System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本申請涉及內存,具體涉及一種芯片及其內存管理方法。
技術介紹
1、連續內存分配器(contiguous?memory?allocator,cma)與內存管理單元(memorymanagement?unit,mmu)是linux系統中常見的兩種內存分配和/或管理手段。連續內存分配器適用于分配連續且大塊的內存,但其缺點是容易造成內存碎片。
2、內存管理單元提供虛擬的內存地址與實體的內存地址之間的映射。然而,保留給內存管理單元的內存區塊只能給設備(device)使用,但無法給系統的應用程序(application)使用,大大降低內存的使用彈性。
3、因此,需要一種更好的內存管理方法。
技術實現思路
1、本申請的目的之一在于提供一種芯片及其內存管理方法,以改善現有技術的不足。
2、本申請的一實施例提供一種芯片。所述芯片耦接一內存。所述內存包括一內存區段。所述內存區段包括多個內存塊。所述芯片包括一內存管理電路及一計算電路。計算電路耦接所述內存及所述內存管理電路,用來運行一內存管理驅動程序以執行以下步驟:接收一內存請求;根據一內存區域鏈表在一內存區域中搜尋至少一閑置的內存塊,其中,所述內存區域鏈表包括一節點,所述節點對應于所述內存區域,且所述內存區域是所述內存區段的一部分;以及,使用所述內存管理電路對搜尋到的所述至少一閑置的內存塊進行內存映射。
3、本申請的另一實施例提供一種內存管理方法,應用于一內存。所述內存包括一內存區段。所述內存區段包括多個
4、本申請的實施例所體現的技術手段可以改善現有技術的缺點的至少其中之一,因此本申請相較于現有技術可以更有效地使用內存。
5、有關本申請的特征、實作與功效,現配合附圖作實施例詳細說明如下。
本文檔來自技高網...【技術保護點】
1.一種芯片,其特征在于,耦接一內存,所述內存包括一內存區段,所述內存區段包括多個內存塊,所述芯片包括:
2.如權利要求1所述的芯片,其特征在于,所述節點為一第一節點,所述內存區域為一第一內存區域,所述計算電路還執行以下步驟:
3.如權利要求2所述的芯片,其特征在于,所述總大小為一第一總大小,且所述第一總大小與所述已分配的內存塊的一第二總大小的和等于所述所請求的內存大小。
4.如權利要求2所述的芯片,其特征在于,所述第一內存區域及所述第二內存區域由一連續內存分配器分配。
5.如權利要求1所述的芯片,其特征在于,所述節點包括一閑置內存塊的列表,且所述閑置內存塊的列表指向搜尋到的所述至少一閑置的內存塊。
6.如權利要求5所述的芯片,其特征在于,所述根據所述內存區域鏈表在所述內存區域中搜尋所述至少一閑置的內存塊的步驟為訪問所述閑置內存塊的列表。
7.如權利要求5所述的芯片,其特征在于,所述內存區域包括多個已分配的內存塊,所述計算電路還執行以下步驟:
8.如權利要求7所述的芯片,其特征在于,所述計算電路還
9.如權利要求8所述的芯片,其特征在于,所述節點包括一引用計數,所述計算電路還執行以下步驟:
10.如權利要求1所述的芯片,其特征在于,所述內存區域為一最小分配大小的整數倍,且當搜尋到的所述至少一閑置的內存塊的一總大小大于等于所述內存請求的一所請求的內存大小時,不將所述所請求的內存大小調整為所述最小分配大小的整數倍。
11.一種內存管理方法,其特征在于,應用于一內存,所述內存包括一內存區段,所述內存區段包括多個內存塊,所述方法包括:
12.如權利要求11所述的方法,其特征在于,所述節點為一第一節點,所述內存區域為一第一內存區域,所述方法還包括:
13.如權利要求12所述的方法,其特征在于,所述總大小為一第一總大小,且所述第一總大小與所述已分配的內存塊的一第二總大小的和等于所述所請求的內存大小。
14.如權利要求11所述的方法,其特征在于,所述節點包括一閑置內存塊的列表,訪問所述閑置內存塊的列表以在所述內存區域中搜尋所述至少一閑置的內存塊。
15.如權利要求14所述的方法,其特征在于,所述內存區域包括多個已分配的內存塊,所述方法還包括:
16.如權利要求15所述的方法,其特征在于,還包括:
17.如權利要求16所述的方法,其特征在于,所述節點包括一引用計數,所述方法還包括:
18.如權利要求11所述的方法,其特征在于,所述內存區域為一最小分配大小的整數倍,且當搜尋到的所述至少一閑置的內存塊的一總大小大于等于所述內存請求的一所請求的內存大小時,不將所述所請求的內存大小調整為所述最小分配大小的整數倍。
...【技術特征摘要】
1.一種芯片,其特征在于,耦接一內存,所述內存包括一內存區段,所述內存區段包括多個內存塊,所述芯片包括:
2.如權利要求1所述的芯片,其特征在于,所述節點為一第一節點,所述內存區域為一第一內存區域,所述計算電路還執行以下步驟:
3.如權利要求2所述的芯片,其特征在于,所述總大小為一第一總大小,且所述第一總大小與所述已分配的內存塊的一第二總大小的和等于所述所請求的內存大小。
4.如權利要求2所述的芯片,其特征在于,所述第一內存區域及所述第二內存區域由一連續內存分配器分配。
5.如權利要求1所述的芯片,其特征在于,所述節點包括一閑置內存塊的列表,且所述閑置內存塊的列表指向搜尋到的所述至少一閑置的內存塊。
6.如權利要求5所述的芯片,其特征在于,所述根據所述內存區域鏈表在所述內存區域中搜尋所述至少一閑置的內存塊的步驟為訪問所述閑置內存塊的列表。
7.如權利要求5所述的芯片,其特征在于,所述內存區域包括多個已分配的內存塊,所述計算電路還執行以下步驟:
8.如權利要求7所述的芯片,其特征在于,所述計算電路還執行以下步驟:
9.如權利要求8所述的芯片,其特征在于,所述節點包括一引用計數,所述計算電路還執行以下步驟:
10.如權利要求1所述的芯片,其特征在于,所述內存區域為一最小分配大小的整數倍,且當搜尋到的所述...
【專利技術屬性】
技術研發人員:葉學麟,席文帥,
申請(專利權)人:星宸科技股份有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。