摘要: ctags在linux下的作用我就不再贅述了,這里是剛剛看到的一篇文章,是一些使用的ctags細節。
轉自: http://blog.chinaunix.net/uid-20874550-id-2412585.html (原帖未知,此鏈接也是轉載 peakflys注)
閱讀全文
《黑客帝國》電影剛出來的時候,曾經有段時間一直嘆服于它所表現出的奇特想象力。作為一個軟件從業者,我之前也一直懷揣一顆屌絲之心在想未來的軟件是什么樣的情況呢?電影里描寫的軟件創造的虛幻世界太過于玄幻,在可預見的未來,例如5年、10年,你認為軟件是個什么樣的結構呢?
既然是討論帖,我就先拋塊“磚”吧。
我從 功能結構 角度來說吧:
5年后:C/S結構軟件份額大幅減少,除個別性能要求比較高的大型軟件外,主流軟件均以B/S結構為主,平板、PC、手機互聯互通,且三者區別逐漸淡化。游戲基本以頁游或者網頁嵌微端形式表現。
10年后:網絡速度飛快增長,云服務日趨完善,只需要一個云服務登陸和運行的沙盒,之后所有操作均在云端執行,結果反饋回來即可。這種結構究竟是屬于B/S或者C/S已經分不清楚了……
摘要: 前段時間研究分布式時寫了一個可擴展的服務器組程序,服務器組之間通信時老是達不到想要的性能。后來抓包排查,原來是TCP滑動窗口引起的問題,本來是很基礎的東西,奈何當初沒有太在意,導致錯誤的產生,現在詳細寫出來,忘不太清楚者警惕!
閱讀全文
摘要: 前段時間在寫《段錯誤造成的常見詭異宕機情況總結(中)》時,分析到 程序中數據寫超時有可能寫到this指針所在的地址里面,導致最終詭異的宕機。其實網絡攻防里常用的緩沖區溢出攻擊也是這個道理,除了使用戶程序甚至計算機掛掉外,還有可能執行攻擊者想執行的任何程序,這篇文章主要詳細剖析一下第二種攻擊的方法以及現在Linux(包括各種修改版本,例如Android)、Windows下常使用的防范措施。
閱讀全文
摘要: 國慶長假終于結束了,從擁堵的噩夢中醒來,該收收心重新回到工作中來了(順便吐槽一下鬧心的長假,平時工作沒時間出去,放了長假了 又不敢出去,路上耗費大量的時間和金錢也算了,弄的整個人也身心疲憊的……)
言歸正傳,接著上回宕機情況說。之前比較難找的宕機錯誤已經在前兩篇隨筆里說過了,這次要說的是前不久一個同事遇到的。他要做一個錄像功能,每次把客戶端的消息轉儲成文件時掛掉。大致代碼如下:
閱讀全文
摘要: 上面一種情況是自己內存寫超了,寫到了用戶態別的結構所在的內存,特點就是core文件顯示 別處對象的內容亂七八糟,且一般是在對象析構時發生,這次講解一下,自己把自己寫壞的情況。
閱讀全文
摘要: 因為內存問題,程序崩潰對于每一個c++程序員而言是很常見的問題,而段錯誤引起的宕機,恐怕是平時遇到的最多的情況,除了常見的指針未判空和野指針問題外,還有不少是比較頭疼的情況,空指針因為定位很直接方便,這里就不說了,野指針因為它的異時異地特性,很難排查,這個以后我會詳細說一下的,這里僅僅介紹一下其他也比較頭疼的段錯誤宕機情況,這是之前自己總結的筆記,前段時間又看到了,感覺對很多人 應該是有用的,于是總結出來供大家參考。
閱讀全文
摘要: 最近在做一個軍團系統的資料片開發,因為策劃提出了很多遍歷某一軍團當前所有在線玩家的操作(例如發公告、拉人、給獎勵),所以就想到了用回調。
脫離實際項目代碼,先看一下示例實現:
閱讀全文
摘要: 前幾天回答一個問題,是關于我們項目中使用的epoll模式的,因為記不大清了,感覺應該使用的就是epoll的高速模式,也就是ET(edge-trigger)模式。這兩天閑暇的時候,打開代碼又看了一下,在epoll事件注冊時并未標記ET模式,看來實際使用的是epoll默認的LT(level-trigger )模式,為什么呢?使用LT意味著 只要 fd 處于 readable/writable 狀態,每次 epoll_wait 時都會返回該 fd,系統開銷不說,自己處理時每次都要把這些fd輪詢一遍,如果fd很多的話,不管這些fd有沒有事件發生,epoll_wait 都會觸發這些fd的輪詢判斷。
閱讀全文
摘要: 最近挺忙的,也沒時間寫點東西,一直在忙下一個資料片的事情,前幾天在群里見有人問關于大小端的事情,這里說一下。
對于跨平臺的程序或者所用數據牽扯到不同平臺的程序(例如網絡編程),大小端字節序是個值得考慮的事情。本文主要討論一下網絡編程方面的大小端問題。(by peakflys)
閱讀全文