原创 LINUX性能優化--cpu基礎概念

cpu是計算機系統的大腦,這個重要性不可置否。 在性能優化的過程中,指標是很重要的。那麼cpu需要關注哪幾個方面的指標呢? 有以下幾個指標是需要關注的: 1 使用率 2 平均負載 3 上下文切換 分別談一下上面的幾個指標是什麼意思

原创 linux性能調優(工具篇)--vmstat

vmstat - 虛擬內存統計工具 vmstat工具報告進程,內存,頁面,IO,中斷,硬盤和CPU活動的信息。 第一行會輸出從啓動到現在的平均值。其他行輸出的是採樣時間間隔的信息。在這兩種情況下,進程和內存輸出都是即時的 使用方法

原创 linux性能調優(工具篇)--pidstat

pidstat是sysstat工具的一個命令,用於監控全部或指定進程的cpu、內存、線程、設備IO等系統資源的佔用情況。 在Debian/Ubuntu系統中可以使用下面的命令來安裝 apt-get install sysstat

原创 服務器端高併發IO的keep alilve方案

案例一、服務器端高併發IO的keep alilve方案,滿足一下幾個需求1. 每個IO都有自己的時間戳2. 每個IO收到自己的beat後,重置自己的定時器3. 若IO定時沒有收到,則執行IbeatO的回調函數,並重

原创 cocos3.1源碼分析(2)渲染流程分析

上一篇分析啓動流程的時候,看到了最後是進入了一個循環,在裏面有一個函數是drawScene,實現如下 // Draw the Scene void Director::drawScene() {     // calculate "glo

原创 linux 0.11 fork

當調用fork的時候,因爲是系統調用,所以會調用_syscall0這個函數 #define _syscall0(type,name) \ type name(void) \ { \ long __res; \ __asm__

原创 根據客戶端IP地址,通過DNS解析合適的服務器IP

DNS基本概念: DNS是屬於應用層的協議,因爲網絡通信是要採用IP地址來進行通信的,但人類對於這些IP地址不容易記住。於是乎就使用方便記住的域名來進行訪問網站。而DNS就是進行域名與IP地址轉換的。可以稱爲網絡世界的地址薄。 域名系統的

原创 《Linux程序設計》套接字筆記

套接字:一種通信機制,通過套接字可以進行本地和網絡的鏈接。明確的講客戶和服務器區分開來(cs架構),是系統分配給服務器進程的類似與文件描述符的資源,不能與其他進程共享。 本地的名字是Linux的文件名,一般放在/tmp(/usr

原创 cocostudio Scrollview的使用

cocostudio是觸控出品的UI編輯器,數據編輯器,動畫編輯器以及場景編輯器的結合體。 使用cocostudio可以少寫很多的代碼,使遊戲開發更加簡單和快速。 這次我使用了cocostudio自帶的Scrollview來做了一個界面,

原创 設計一個線程或者進程的運行體R與運行體調度器S的結構體

設計一個線程或者進程的運行體R與運行體調度器S的結構體1. 運行體R:包含運行狀態{新建,準備,掛起{IO等待讀,IO等待寫,睡眠,延時}, 退出},運行體回調函數,回調參數2. 調度器S:包含棧指針,棧大小,當前運行體3

原创 安裝GITLAB

1 dpkg -i XXX.deb安裝軟件包 2 初始化配置 gitlab-ctl reconfigure 3 檢查狀態 gitlab-ctl status 4 修改創建項目後git地址gitlab.example.com爲ip地

原创 CAP Confusion Problems with partition tolerance

The ‘CAP’ theorem is a hot topic in the design of distributed data storage systems. However, it’s often widely misu

原创 U3D從legacy轉爲humanoid出現的若干問題

1 動畫控制器不能拖入動畫    解決方案:把legacy的動畫轉爲humanoid的,在rig標籤裏面選擇humaniod.點擊apply. 2 轉爲humanoid動畫的時候出現U3D默認動畫    解決方案:動畫預覽窗口發現了一個a

原创 有限狀態機(使用狀態模式C++實現)

   最近在研究怪物的AI,由於怪物的AI是使用有限狀態機來實現的。所以就查看關於有限狀態機的東西。根據這幾天的查看資料,知道了有限狀態機是計算機科學中一個很重要的概念。而且有限狀態機是一個抽象的概念,具體實現是多種多樣的。根據維基百科的

原创 分析cocos緩存管理的實現

今天看了一下cocos的緩存管理類,首先緩存管理類是一個單例對象,獲得該對象的實例必須通過導演類Dirctor的Director::getInstance()->getTextureCache();其實這是一種挺不錯的架構方式,