原创 Linux:擴大文件句柄

centos5.3 中 ulimit -n 爲1024, 當Nginx連接數超過1024時,error.log中就出現以下錯誤: [alert] 12766#0: accept() failed (24: Too many open

原创 CentOS6.8內核快捷升級

採用Linux三大安裝源中的elrepo和yum: ELREPO:側重硬件相關的安裝包; 第一步:更新Key rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org 查看Ce

原创 在CentOS上更新GCC

1.我的機器原始是CentOS6.8 , 內核2.6.32. 在上一篇文章中已經簡單更新升級內核;Redhat下需要自己手動編譯安裝內核,網上資料很多,就不詳細描述了;【點擊打開鏈接】 2.升級完內核就準備升級GCC了。 在安裝GCC之前

原创 反彙編

00401028   push        edi                                                        00401027   push        esi  

原创 C++ - _T含義 C++語言中“_T”是什麼意思

_T("Hello")是一個宏,他的作用是讓你的程序支持Unicode編碼,因爲Windows使用兩種字符集ASCII和UNICODE,前者就是通常

原创 C語言中的volatile

 一個定義爲volatile的變量是說這個變量可能會被意想不到的改變,這樣,編譯器就不會去假設這個變量的值了。精確的說,就是優化器在用到這個變量時,必須每次都小心的重新從地址中讀取這個變量的值,而不是使用保存在寄存器裏的備份。  下面是v

原创 面向對象的基本概念

敘述之前先來做道題:如何不用第三變量來交換兩個數的值。 通過異或,我們可以得出 a=a^b^b, 所以假設a,b兩個變量, 那麼 1 a=a^b, 2 b=a^b, 3 a=a^b。如果只能用與或非的話,我們已知a^b=(a+b)*(!a

原创 面向對象設計原則

一、單一職責原則(SRP)  就一個類而言,應該僅有一個引起它變化的原因。軟件設計真正要做的許多內容,就是發現職責並把那些職責相互分離。測試驅動的開發實踐常常會在設計出現臭味之前就迫使我們分離職責。 二、開閉原則(OCP) 軟件實體

原创 boost::algorithm學習

#include <boost/algorithm/string.hpp> using namespace std; using namespace boost; 一:大小寫轉換 1 to_upper() 將字符串轉爲大寫  Examp

原创 Linux性能分析的前60秒

在 Netflix 我們有一個龐大的 EC2 Linux 集羣,還有非常多的性能分析工具來監控和調查它的性能。其中包括用於雲監控的Atlas,用於實例按需分析的 Vector。即使這些工具幫助我們解決了大多數問題,我們有時還是得登入 Li

原创 Virtual表

//在頭文件中 #ifndef __CBASE_H__ #define __CBASE_H__ #include <iostream> using std::cout; using std::endl; class CBase { pu

原创 AT&T與INTER彙編格式解析

一、AT&T 格式Linux 彙編語法格式 在 AT&T 彙編格式中,寄存器名要加上 '%' 作爲前綴;而在 Intel 彙編格式中,寄存器名不需要加前綴。例如: AT&T 格式 Intel 格式 pushl %eax

原创 GDB跟蹤調試

GDB 調試 要進行調試程序首先要生成一個含有調試信息的執行程序命令如下: gcc(g++) -g -o 文件名 源文件.c(源文件.cpp)gcc(g++) -ggdb3 -o 文件名 源文件.c(源文件.cpp) 此時便會生成一個

原创 編譯型語言、解釋型語言、靜態類型語言、動態類型語言概念與區別

最近在研究Python和Erlang。反覆提到動態類型語言、動態語言、解釋型語言這些概念。這些概念很生澀,在這裏做一個總結。 編譯型語言和解釋型語言 1、編譯型語言 需通過編譯器(compiler)將源代碼編譯成機器碼,之後才能執行的語

原创 “What's wrong with Object-Oriented Programming and Functional Programming”

我不理解爲什麼人們會對面向對象編程和函數式編程做無休無止的爭論。就好象這類問題已經超越了人類智力極限,所以你可以幾個世紀的這樣討論下去。經過這些年對編程語言的研究,我已經清楚的看到了問題的答案,所以,我經常的發現,人們對這些問題做的都是