2013年10月17日 星期四

檢查某個 process 的記憶體使用量

在 Linux 下檢查某個 process 記憶體用量的方法。
基本原則是檢視 /proc/$pid/smaps 的內容,以下提供一個簡單的Script。

 1 #!/bin/bash
 2 
 3 pid=$1
 4 if [ -f /proc/$pid/smaps ]; then
 5       echo "* Mem usage for PID $pid"
 6       echo "-- Size:"
 7       cat /proc/$pid/smaps | grep -m 1 -e ^Size: | awk '{print $2}'
 8       echo "-- Rss:"
 9       cat /proc/$pid/smaps | grep -m 1 -e ^Rss: | awk '{print $2}'
10       echo "-- Pss:"
11       cat /proc/$pid/smaps | grep -m 1 -e ^Pss: | awk '{print $2}'
12       echo "Shared Clean"
13       cat /proc/$pid/smaps | grep -m 1 -e '^Shared_Clean:' | awk '{
14       print $2}'
15       echo "Shared Dirty"
16       cat /proc/$pid/smaps | grep -m 1 -e '^Shared Dirty:' | awk '{
17       print $2}'
18 fi

參考資料:

2013年10月16日 星期三

TimeZone 介紹

為了要判斷所收到的 timezone 是否是一個合法的 timezone,故將 timezone 格式整理如下,以利快速參考。

在一個 POSIX 系統,Timezone 會儲存於 TZ 環境變數,並且定義三種格式以表示 timezone。但 POSIX.1 標準只描述了前兩種表示方法。

如何由收到的封包得知是 unicast 或是 multicast ?

ONVIF 使用 WS-Discovery 作為其尋找設備的規範,並且對Discovery作了點小修改。
其中主要的差異便是針對 unicast/multicast probe,其錯誤處理不同。 

  • 當收到 multicast probe時,若發現此封包有任何錯誤時,都不回錯誤。 
  • 當收到 unicast probe時,若發現此封包的 MatchBy 有錯誤時,需回錯誤。 

2013年10月14日 星期一

[轉] The C10K problem 翻譯

原文地址:The C10K problem翻译 作者:bjpiao
The C10K problem翻译
The C10K problem
如今的web服务器需要同时处理一万个以上的客户端了,难道不是吗?毕竟如今的网络是个big place了。
现在的计算机也很强大了,你只需要花大概$1200就可以买一个1000MHz的处理器,2G的内存, 1000Mbit/sec的网卡的机器。让我们来看看--20000个客户,每个为50KHz,100Kbyes和 50Kbit/sec,那么没有什么比为这两万个客户端的每个每秒从硬盘读取4千字节然后发送到网络上 去更消耗资源的了。可以看出硬件不再是瓶颈了。 (That works out to $0.08 per client, by the way. Those $100/client licensing fees some operating systems charge are starting to look a little heavy!)
在1999年最繁忙的ftp站点,cdrom.com,尽管有G比特的网络带宽,却也只能同时处理10000个 客户端。在2001年,同样的速度可以被几个ISP服务商所提供,他们预期该趋势会因为大量的商业 用户而变得越来越普遍。
目前的瘦客户端模型也开始又变得流行起来了--服务器运行在Internet上,为数千个客户端服务。
基于以上一些考虑,这里就配置操作系统或者编写支持数千个网络客户端的代码问题提出一些 注意点,该论题是基于类Unix操作系统的--该系统是我的个人爱好,当然Windows也有占有一席之地。

2013年10月1日 星期二

H.264 sps/pps online parser

Input SPS/PPS in base64 encoded form, and press go.Then you can get the detail information of SPS/PPS.


Test Now
SPS:
PPS:

H.264 sps/pps parser

I write a simple javascript to parse sps/pps.

If you are interested the implementation, you can find the source code in my github.

Usage
  1. Download the html from here 
  2. Use browser to open the html
  3. Input sps and pps
  4. Press go and then the result will show in the same pages