*Nix and Win32 Kernel
重做了RFC 3522的patch
还在老地方。RFC 3522 (Eifel Detection)是一项用于避免TCP中不必要的重传的技术。
关于FreeBSD近期希望完成的网络协议栈方面改进,请参见 Wiki。
参与评论ZFS hits -HEAD
Pawel今天正式import了ZFS——Sun Solaris 10引入的新文件系统。
参与评论Giant被替换为Midget
这是SMPng Project的最后一步。
阅读全文…Log: Final stage of SMP pushdown: rename the Giant lock to the Midget lock.
FreeBSD 1.x时代的CVS
由于Caldera已经将32/V开源,目前FreeBSD 1.x时代的CVS已经可以重见天日。特设立此cvsweb以供世人观看。
FreeBSD 1.x受到AT&T诉讼的影响,曾在1994年6月和解并发布1.1.5.1-RELEASE之后,不得不重建了CVS库(这也是为什么FreeBSD的src/代码库的目录名是/home/ncvs而不是/home/cvs的原因)。随后,经过数月的努力,基于可自由再发布的4.4BSD-Lite代码系的FreeBSD 2.0于1994年11月正式发布。
阅读全文…提名了一位src committer
昨天 Robert代表core team回信说他们将投票决定我对一位 ports/ committer 增加 src/ bit 权限的提名。祝这位同学闯关顺利 :-)
参与评论PRS_NEW: Check it or not?
It seems that I have caught a race condition which can be triggered by renice(1), and we need to take PRS_NEW into account when we need to access several attributes of a process object.
Robert has pointed out that we may want to just initialize the attribute early to avoid the race condition. After reading some old 4.4BSD code it seems that the process object is linked into allproc list *before* everything is initialized.
阅读全文…ULE 2.0 hits -HEAD
Today, Jeff Roberson has committed his version 2.0 ULE scheduler. This new version has addressed several design issues as well as several bugs.
The new scheduler has adopted a circular queue, instead of the double-queue structure which is also found in the Linux O(1) scheduler. The latter has lead to difficulty implementing nice correctly.
For uniprocessor case, ULE is now faster.
MP algorithm has been simplified a bit.
A lot of bugfixes, etc.
To quote the original commit message:
ULE 2.0:
- Remove the double queue mechanism for timeshare threads. It was slow due to excess cache lines in play, caused suboptimal scheduling behavior with niced and other non-interactive processes, complicated priority lending, etc.
- Use a circular queue with a floating starting index for timeshare threads. Enforces fairness by moving the insertion point closer to threads with worse priorities over time.
- Give interactive timeshare threads real-time user-space priorities and place them on the realtime/ithd queue.
- Select non-interactive timeshare thread priorities based on their cpu utilization over the last 10 seconds combined with the nice value. This gives us more sane priorities and behavior in a loaded system as compared to the old method of using the interactivity score. The interactive score quickly hit a ceiling if threads were non-interactive and penalized new hog threads.
- Use one slice size for all threads. The slice is not currently dynamically set to adjust scheduling behavior of different threads.
- Add some new sysctls for scheduling parameters.
Bug fixes/Clean up:
- Fix zeroing of td_sched after initialization in sched_fork_thread() caused by recent ksegrp removal.
- Fix KSE interactivity issues related to frequent forking and exiting of kse threads. We simply disable the penalty for thread creation and exit for kse threads.
- Cleanup the cpu estimator by using tickincr here as well. Keep ticks and ltick/ftick in the same frequency. Previously ticks were stathz and others were hz.
- Lots of new and updated comments.
- Many many others.
Tested on: up x86/amd64, 8way amd64.
阅读全文…给tarsier上了RC2
附加了一系列自己的patch,reboot。
[delphij@tarsier] ~> uname -a
FreeBSD tarsier.delphij.net 6.2-RC2 FreeBSD 6.2-RC2 #0: Sat Dec 30 01:18:20 CST 2006 delphij@tarsier.delphij.net:/usr/obj/usr/src/sys/TARSIER i386
招商银行新版本与64-位 Windows不兼容
\SystemRoot\SysWow64\Drivers\KBWatch.SYS has been blocked from loading due to incompatibility with this system. Please contact your software vendor for a compatible version of the driver.
真是无话可说了。
参与评论ZFS成功完成在FreeBSD上的第一阶段移植
在Pawel Jakub Dawidek的不懈努力之下,目前ZFS在FreeBSD -CURRENT上已经处于主体功能可运行状态了。尽管目前其性能还不如UFS,并且在高负载情况下会出现panic,但patch已经处于可用状态。
参与评论