由於node緣由,研究v8已經有段時間了,可是一直也沒有抽空寫點什麼,如今想一想有好多當時清晰的東西又模糊了。哎,傷心的很啊。可是一時又想不起什麼章法,因此只能隨手胡亂寫了。node
下載、編譯:git
https://github.com/v8/v8-git-mirrorgithub
https://github.com/v8/v8-git-mirror/blob/master/DEPSshell
http://www.chromium.org/developers/how-tos/install-depot-tools工具
最近在看的是v8-4.2.77的代碼,真的是不想和之前同樣下載cygwin這些第三方工具,後來經過修改gyp生成的[js2c.vcxproj、v8_snapshot.vcxproj、cctest(resources.vcxproj)],能夠只須要[icu]這一個第三方工具,就編譯生成v八、cctest、process和shell等程序。this
---------------------------------------------------------------------------------------------------線程
源碼:v8
third-party: {源碼
fdlibm: { it
[ FDLIBM (Freely Distributable LIBM) is a C math library for machines that support IEEE 754 floating-point arithmetic ]
}
}
tools: {
thread-sanitizer: {
[include: zone.cc]
[ThreadSanitizer又叫TSan,是一個檢查線程Data Race的C/C++工具。它集成在新版的gcc和clang中,經過編譯時加-fsanitize=thread,能夠在運行時檢測出Data Race的問題。]
}
}
Isolate::Init {
[call]:
[CHECK]Max(Min(base::SysInfo::NumberOfProcessors(), 4), 1)
optimizing_compiler_thread_ = new OptimizingCompilerThread(this);
optimizing_compiler_thread_->Start();
}