位移有三種:<< >> >>>,只有無符號右移,沒有左移。
有兩個規則:
減去再移動的意思:
int a=8;
// 此時a為int32
a>>1;
a>>31;
a>>32;
// 當移動位數=32位,32-32=0,不移位
a>>33;
// 33-32=1,移動1位
單精度浮點數表示法為科學計數法,分為:符號位|指數字|有效數字位,共32位
符號位1位,指數字8位,有效數字位23位
單精度位階偏移:127,即指數部分的真實值+127後儲存在指數部分裡
其實就是想讓指數部分為正數,做了乙個偏移,這樣方便比較大小,不用考慮符號位
如0.35在浮點數中的表示為:0011-1110-1011-0011-0011-0011-0011-0011
計算方法:
由於linux系統的操作都是操作的檔案,所以很多時候系統的資源或者服務都與fd的數量有關,如tcp連線,fd的數量決定了系統能建立多少連線,連線不足就會報:open too many files錯誤,無法建立連線。
ulimit -n
:檢視單個程序所允許開啟檔案的數量
lsof -n | awk '' | sort | uniq -c | sort -nr | more
:檢視當前系統各程序產生了多少個fd
在tcp斷開時機,有兩個地方需要被動等待:time_wait & close_wait
當線上伺服器大量出現這兩種狀態時,會加重機器的負載,也會影響有效性·有效連線的建立。
2msl預設為2分鐘,目前網路速度大大提高,可以依據自身硬體水平調整該時間。由於time_wait狀態無法釋放控制代碼資源,本地的埠無法被再次利用,會極大限制有效鏈結的建立數量,成為效能瓶頸,建議調小。
為啥要等待2msl呢?如果不等待直接進入closed則對方機器如果沒收到你發的ack,可能會重發fin,而你已經關閉了,導致對方無法進入關閉狀態。同時該時間不宜過長,可以有效過濾失效的請求。close_wait和time_wait不同,該狀態過多很有可能是程式自身的問題,比如對方關閉連線後,自身為檢測到,或者忘了關閉連線。
修改檔案:/etc/sysctl.conf
中引數:net.ipv4.tcp_fin_timeout = 30
建議小於30秒為為宜,該檔案還有其他連線引數調優tcp連線能力。
立即生效:/sbin/sysctl -p
檢視當前連線狀態計數情況:netstat -n | awk '/^tcp/ end '
計算機網路相關知識點
http中瀏覽器乙個url的流程,這個過程中瀏覽器做了什麼,url 統一資源定位符 包括哪三個部分?getpost 可見性資料在url中對所有人可見 資料不會顯示在url中 安全性與post相比,get的安全性較差,因為所傳送的資料是url的一部分 安全,因為引數不會被儲存在瀏覽器歷史或web伺服器...
計算機基礎知識點
使用udp tcp協議的各種應用和應用層協議 常用的熟知埠號 常用埠 ftp 21 snmp 161 按照拓撲結構形式不同,通訊網可以劃分為 線形 環形 星形 網形和復合形 五種基本結構形式。注意 沒有所謂的樹形網路。優點 1 適用於大規模的網路 2 複雜的網路拓撲結構,負責共享和最優路徑 3 能更...
計算機相關知識
一 常用的介面協議 http協議 超文字傳輸協議 https協議 安全超文字傳輸協議 ftp協議 檔案傳輸協議 tcp協議 傳輸控制協議 ip協議 網際網路協議 udp協議 使用者資料協議 二 osi open system interconnection 七層模型 1.物理層 2.資料鏈路層 3....