嵌入式作業系統核心原理和開發(記憶體配置演算法)

【 聲明:著作權,歡迎轉載,請勿用於商業用途。  聯絡信箱:feixiaoxing @163.com】        記憶體配置是作業系統必須面對的一個環節,除非這個系統本身不需要記憶體安排,所有業務可以通過全域資料和堆棧搞定。記憶體配置其實不困難,但是由記憶體引申出來的東西就比較複雜了。早前沒有MMU,系統本身的空間和使用者空間沒有優先順序之分,所以不同的程式之間的記憶體都是共用的,相互影響也是不可避免的。所以,一般來說,除了記憶體配置之外,還需要一些日誌資訊、檢測資訊協助我們進行調試和分析。

嵌入式作業系統核心原理和開發(固定記憶體配置演算法)

【 聲明:著作權,歡迎轉載,請勿用於商業用途。  聯絡信箱:feixiaoxing @163.com】      固定記憶體方式是最簡單的方法,也是最容易想到的方法。所謂的固定記憶體,就是所有分配的記憶體單元都是一致的。不管你申請的記憶體大小是多少,它都有一個最小的記憶體。因此,你申請的記憶體都會轉化為單元記憶體的倍數。所以,演算法會根據申請的記憶體計算出一個合適的申請記憶體,int get_best_fit_size(int size){ int bestSize =

嵌入式作業系統核心原理和開發(線程切換)

【 聲明:著作權,歡迎轉載,請勿用於商業用途。  聯絡信箱:feixiaoxing @163.com】   

嵌入式作業系統核心原理和開發(基於鏈表節點的記憶體配置演算法)

【 聲明:著作權,歡迎轉載,請勿用於商業用途。  聯絡信箱:feixiaoxing @163.com】     連結節點的記憶體配置方法,其實就是一種按需分配的記憶體配置方法。簡單一點說,就是你需要多少記憶體,我就給你多少記憶體。當然,為了把分配的記憶體都連起來,我們還需要對分配節點進行管理記錄。就比如下面這個資料結構,typedef struct _MNG_NODE{ struct _MNG_NODE* next; unsigned int size;}MNG_NODE;   

如何區分分布式/叢集/並行檔案系統?

Distributed File System、叢集檔案系統、並行檔案系統,這三種概念很容易混淆,實際中大家也經常不加區分地使用。總是有人問起這三者的區別和聯絡,其實它們之間在概念上的確有交叉重疊的地方,但是也存在顯著不同之處。 Distributed File System自然地,“分布式”是重點,它是相對與本地檔案系統而言的。Distributed File

資料相似性檢測演算法

1、引言  "資料同步演算法研究"一文研究了在網路上高效同步資料的方法,其中有個前提是檔案A和B非常相似,即兩者之間存在大量相同的資料。如果兩個檔案相似性很低,雖然這種方法依然可以正常工作,但資料同步效能卻不會得到提高,甚至會有所降低。因為會產生部分中繼資料和網路通訊消耗,這在兩個檔案完全不相關時尤為明顯。因此,同步資料前需要計算種子檔案(seed

嵌入式作業系統核心原理和開發(最快、最優、最差記憶體配置演算法)

【 聲明:著作權,歡迎轉載,請勿用於商業用途。  聯絡信箱:feixiaoxing @163.com】     

嵌入式作業系統核心原理和開發(任務建立和堆疊溢位檢查)

【 聲明:著作權,歡迎轉載,請勿用於商業用途。  聯絡信箱:feixiaoxing @163.com】    雖然寫作業系統的部落格要比寫普通的技術點要麻煩一些,但是心中還是挺開心的。一方面,通過幾行代碼就可以說明一些問題,把理論實踐化,這本身就很具有挑戰性;另外一方面還鍛煉自己的溝通能力,讓更多的人明白你的想法,認可你的想法。   

隨想錄(png的讀取和顯示)

【 聲明:著作權,歡迎轉載,請勿用於商業用途。  聯絡信箱:feixiaoxing @163.com】      之前在閱讀FTK代碼的時候,發現工程本身用到了PNGLIB的代碼。雖然網上關於pnglib的描述檔案很多,但是真正好用、可以用的卻沒有多少。所以,為了學習的方便,我自己做了一個png的工程,其中的pnglib、zlib庫、win32檔案全部來自網上,這裡只是做一個整合,可以使得這些代碼順利在windows上面編譯和運行。 (1)原理   

嵌入式作業系統核心原理和開發(多線程輪轉)

【 聲明:著作權,歡迎轉載,請勿用於商業用途。  聯絡信箱:feixiaoxing @163.com】     之前我們也談到了線程建立,基本上簡單的系統就可以跑起來了,但是還沒有到多線程啟動並執行地步。所以,我們下面試圖所要做的工作就是建立更多的線程,讓更多的線程運行起來。為了做好這一點,首先我們需要對task_init重新修整一下,void task_init(int index, UINT32 data[], int size, void (*func)()){ UINT32

隨想錄(讀書和選書)

【 聲明:著作權,歡迎轉載,請勿用於商業用途。  聯絡信箱:feixiaoxing @163.com】   

儲存學習之路

 從學生時做研究時起,我就算進入了儲存領域,那時我的研究方向是網路儲存、分散式運算,業餘還研究點資料採礦。畢業後進入儲存行業的公司,差不多又有兩年的時間了。前後算起來,我搞儲存也有好幾年的時間了,然而儲存博大精深,我現在仍然行走在儲存學習之路上。不過,我覺得自己還是有些東西(或者可以稱之為經驗)與儲存同行分享一下,如果能對那麼幾個人有所協助,我就覺得值得了。 0、儲存入門 領路人的作用很大,這個人可能是你做研究生的導師,或者工作中的tutor,或者是朋友、同事。指點迷津,學習和研究過程中將少走很

嵌入式作業系統核心原理和開發(通用優先順序調度)

【 聲明:著作權,歡迎轉載,請勿用於商業用途。  聯絡信箱:feixiaoxing @163.com】    相比較其他調度演算法而言,時間片的輪轉更多的注重公平性。但是,任務與任務之間也是有先後之分的,有的任務我們希望多安排一些時間片,而有的任務我們則希望少安排一些時間片。比較說,如果我們在上網的話,我們就希望上網的操作響應的更快一些;如果我們在進行GUI操作,我們當然就希望圖形響應更快一些。這些都是可以理解的,下面我們就緒要對資料結構進行一些修改。typedef struct

嵌入式作業系統核心原理和開發(中斷)

【 聲明:著作權,歡迎轉載,請勿用於商業用途。  聯絡信箱:feixiaoxing @163.com】    在我個人看來,中斷是cpu最重要的特色。從某種意義上來說,沒有中斷就沒有嵌入式作業系統。一旦你明白了中斷的真正含義,你對作業系統的瞭解就算真正入門了。什麼是中斷呢?我們可以看看單片機下面是怎麼做的。#include <REG51.h>sbit LED = P1 ^ 6;unsigned int led_enable = 0;void Delay(unsigned int a)

嵌入式作業系統核心原理和開發(改進型優先順序調度)

【 聲明:著作權,歡迎轉載,請勿用於商業用途。  聯絡信箱:feixiaoxing @163.com】   

嵌入式作業系統核心原理和開發(地址空間)

【 聲明:著作權,歡迎轉載,請勿用於商業用途。  聯絡信箱:feixiaoxing @163.com】   

深入理解Bloom Filter

 Bloom Filter是1970年由Bloom提出的,最初廣泛用於拼字檢查和資料庫系統中。近年來,隨著電腦和互連網技術的發展,資料集的不斷擴張使得 Bloom filter獲得了新生,各種新的應用和變種不斷湧現。Bloom filter是一個空間效率很高的資料結構,它由一個位元組和一組hash映射函數組成。Bloom

Distributed File System名字空間實現研究

1、名字空間概述  名字空間(Namespace)即檔案系統檔案目錄的組織方式,是檔案系統的重要組成部分,為使用者提供可視化的、可理解的檔案系統視圖,從而解決或降低人類與電腦之間在資料存放區上的語義間隔。目前樹狀結構的檔案系統組織方式與現實世界的組織圖最為相似,被人們所廣泛接受。因此絕大多數的檔案系統皆以Tree方式來組織檔案目錄,包括各種磁碟檔案系統(EXTx, XFS, JFS, Reiserfs, ZFS, Btrfs, NTFS, FAT32等)、網路檔案系統(NFS, AFS,

嵌入式作業系統核心原理和開發(基礎)

【 聲明:著作權,歡迎轉載,請勿用於商業用途。  聯絡信箱:feixiaoxing @163.com】     在編寫我們的作業系統之前,我們需要明確一些事情。比如說,這個系統的運行環境是什嗎?怎麼編譯?基本中斷環境是什嗎?上下文怎麼切換?準備實現那些內容?基礎資料型別 (Elementary Data Type)是什嗎?等等。(1)你的嵌入式作業系統準備叫什麼名稱?運行環境是什嗎?可以在實際環境上面運行嗎?    我們準備把這個嵌入式作業系統稱之為MiniOS。雖然這個作業系統實現的功能不多,

隨想錄(怎麼閱讀代碼)

【 聲明:著作權,歡迎轉載,請勿用於商業用途。  聯絡信箱:feixiaoxing @163.com】   

總頁數: 61357 1 .... 18793 18794 18795 18796 18797 .... 61357 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.