最近試著用vi來改binary
加 -b
$> vi -b BINARY_FILE
打開binary後
:%!xxd
就會看到byte 跟ascii
像ultraedit看到的那樣
不過沒像ultraedit方便 左邊到哪 右邊就到哪
改完後
:%!xxd -r
然後就存檔啦
一開始不加-b的話 vi最後會幫你加上eol 所以會多一個byte
少這一步就蝦忙很久了.....
Friday, June 12, 2009
Tuesday, June 9, 2009
Chromium上也有zygote了
繼Android後
chromium上也放zygote了
http://src.chromium.org/viewvc/chrome?view=rev&revision=17909
不過還沒研究兩者的差別就是了
chromium上也放zygote了
http://src.chromium.org/viewvc/chrome?view=rev&revision=17909
不過還沒研究兩者的差別就是了
Saturday, June 6, 2009
V8 javascript engine
http://code.google.com/events/io/sessions/V8BuildingHighPerfJavascriptEngine.html
在V8 Memory Model 那頁
他用了tagged pointers
因為object都是4 byte aligned 的 所以bit 0 1都沒有東西
所以這兩個bit就會被設為01 來代表這是個pointer
而如果是一般的integer時 bit 0會被設為0
只有31bit來代表 signed integer
所以integer 就是 2^30 - 1 ~ -2^30
不過這ok嗎????
然後Elements Pointer是在幹嘛的?
-----------------------------------
接下來在Hidden class的介紹
Properties的pointer 指到一個buffer 這buffer是多大呢???
然後在p2 construct的時候
使用hidden class的design decision? 90%的數據是怎麼來的
會不會這時class 0 1已經被GC掉了? 如果被GC重新construct的話 最後p2還會指到class 2嗎
還是會指到class 3 但class 3跟class 2的content 是一樣的
在video最後面有人問到說如果p2 是先constuct y再x的話 p2 跟p1會是一樣的嗎?
答案是不一樣的 雖然他們的內容是一樣 只是順序不同
他們還是兩個不同的class
-----------------------------------
接下來在Monomorphic load inline cache
好像是intel syntax?
一開始 compare 這是個pointer or integer
然後比這class的pointer
如果都一樣的話就load properties 來達到fast property access的功能
不過megamorphic好像沒講到太多
------------------------------------
接下來講GC
generational
但又分三種
另外與其他JavaScriptCore or Java的GC有什麼不同呢
每個人的GC都說是棒呆了
----------------------------------
RE
Webkit跟V8在String 上的 implementation哪不一樣造成JSCRE 的performance不好
The implementation of automaton to recognize RE
在V8 Memory Model 那頁
他用了tagged pointers
因為object都是4 byte aligned 的 所以bit 0 1都沒有東西
所以這兩個bit就會被設為01 來代表這是個pointer
而如果是一般的integer時 bit 0會被設為0
只有31bit來代表 signed integer
所以integer 就是 2^30 - 1 ~ -2^30
不過這ok嗎????
然後Elements Pointer是在幹嘛的?
-----------------------------------
接下來在Hidden class的介紹
Properties的pointer 指到一個buffer 這buffer是多大呢???
然後在p2 construct的時候
使用hidden class的design decision? 90%的數據是怎麼來的
會不會這時class 0 1已經被GC掉了? 如果被GC重新construct的話 最後p2還會指到class 2嗎
還是會指到class 3 但class 3跟class 2的content 是一樣的
在video最後面有人問到說如果p2 是先constuct y再x的話 p2 跟p1會是一樣的嗎?
答案是不一樣的 雖然他們的內容是一樣 只是順序不同
他們還是兩個不同的class
-----------------------------------
接下來在Monomorphic load inline cache
好像是intel syntax?
一開始 compare 這是個pointer or integer
然後比這class的pointer
如果都一樣的話就load properties 來達到fast property access的功能
不過megamorphic好像沒講到太多
------------------------------------
接下來講GC
generational
但又分三種
- Scanenge
- Full non-compact GC
- Full compact GC
另外與其他JavaScriptCore or Java的GC有什麼不同呢
每個人的GC都說是棒呆了
----------------------------------
RE
Webkit跟V8在String 上的 implementation哪不一樣造成JSCRE 的performance不好
The implementation of automaton to recognize RE
Subscribe to:
Posts (Atom)