Friday Oct 24, 2008

AnandTech: Apple's Redesigned MacBook and MacBook Pro: Thoroughly Reviewed

I now become a fan of this anandtech site and hopefully I will learn a thing or two on how to write a good review.

华尔街日报:微软“黑屏”反盗版在华惹争议-搜狐IT

What a great opportunity for OpenSolaris adoption. If you are not into games, OpenSolaris with OpenOffice can fulfill all of your computing needs, and it is stable, virus-free, money-free and black-screen-free. Go to opensolaris.org and have a try.


Now I wish I am in Marketing.


Monday Oct 13, 2008

俺家领导一向自诩锐意进取,aka 有冲劲。今天她谈到创业:"如果我失败了,就像被狗咬了一口,没啥。” 人能被狗咬几口呢?

Friday Oct 10, 2008

Finally I am able to configure the account. It turns out I have to use my sun email address as the account name and old BSC password(as opposed to my LDAP password).

Thursday Oct 09, 2008

既然是101, 那就先从概念讲起吧.

固态硬盘(Solid State Disk),大概分两种:基于FLASH的和基于DRAM的。基于FLASH的,基本都采用NAND FLASH,属于non-volatile, 断电后能保持数据,不许电池保护。DRAM则相反,volatile memory,内部电池和备份存储都是必要的,否则突然断电数据会丢失或败坏。现在SSD主流是NAND FLASH。

NAND FLASH, 就两种:SLC 和MLC。SLC 是single level cell的缩写。根据阿南德同学的描述,一个cell就是一个N-channel MOSFET 的晶体管。SLC的FLASH,一个cell存一比特(bit)数据。MLC 就是multi-level cell,一个cell存两比特数据。由于MLC和SLC的cell都用一种晶体管,实际上MLC就比SLC多存一倍的数据。

数据如何写进cell的呢? 简单的讲,就是给cell加不同的电压。MLC存两比特,有四个电压要控制。SLC只要控制两个电压。因此SLC比MLC要快。(好像越简单才能越快的道理在存储上也越来越普遍,比如传统的parallel SCSI现在都要被SAS取代) FLASH上的数据,由一堆cell组成page, page是对NAND FLASH device写操作的最小单位。大部分MLC上page大小是4KB。一堆page,组成一个block。block 是flash上进行erase操作的最小单位。Intel MLC上一个block有128page,一个block就有512KB.
由于写和擦除在最小单位上的不对称性(4K VS。512K),SSD 一般避免频繁擦除。想删除数据时只设标志(some kind of invalid),只有当一个block里面invalid标志超过一定限度,才把有效数据拷到新page, 然后删除该block.
flash 写和擦除是有限度的:MLC--10000 erase cycles;SLC--100000 erase cycles。超过这个限度,你就没法再写和擦了。尽管该限度是物理特性, 对一整块flash来说还是有算法来延长其寿命的,比如说wear leveling. wear leveling 实际上就是让一块flash上所有的cell来共同承担erase. 如果没有wear leveling, flash 上的某些cell可能很快就到达10000次的极限:尽管其他大部分cell还没怎么wear, 这块flash也就不能用了。wear leveling 通过“均贫富”的方式来延长flash 的寿命。 关于SSD的基本概念就这么多了。我后面的博客会讲Solaris对SSD的支持。


References:
  • http://www.anandtech.com/cpuchipsets/intel/showdoc.aspx?i=3403
    • This one is very informative despite its pro-intel stance.  If the data shown is true then the intel X25-M is really a good buy for consumer-grade MLC SSD.

  • http://en.wikipedia.org/wiki/Solid_state_disk
    • One of the interesting things mentioned is that StorageTek (now part of Sun) developed the first modern type of solid state drive, back in 1978. That is 30 years ago, with a mere capacity of 1MB.

Tuesday Sep 23, 2008

Congratulations, Nikko. Great upgrade!



Mrs. Xin(辛)" dc:identifier="http://blogs.sun.com/tauger/entry/nikko_mrs_xin_%E8%BE%9B" dc:subject="Personal" dc:description="Nikko --> Mrs. Xin(辛)" dc:creator="tauger" dc:date="2008-09-22 23:46:52.0" /> -->

Thursday Sep 18, 2008

In case you haven't noticed, we've integrated a nice little feature into open Solaris Build 97: a more user-friendly [s]sd-config-list. The detailed feature description can be found in PSARC 2008/465


What is sd-config-list?


sd-config-list has been a private property in [s]sd.conf for [s]sd driver since 1999. The original intention for this property was just for internal development/field diagnosis, as the name "private" suggests. As time flies, many people in/outside Sun started using it to tune its disk systems. Doing a google search on sd-config-list gives you a long list of storage vendors who tell you how to use sd-config-list on their disk storage, like this, this and this.


But using sd-config-list is painful and error prone. Here is an example:



  ssd-config-list= "SUN     T4", "t4-data";
t4-data=1,0x20000,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1;

Basically it is based on a bit-mask system and each bit represents a different tunable. Over the years the number of bits has grown to 18!!! I don't think anybody can figure out what the above ssd-config-list is trying to configure, without looking up the bit map table. In case you are curious, it is trying to enable LOGICAL LUN RESET.

So what are the changes?


A picture is worth a thousand words and an example should counts at least five hundreds. The new sd-config-list looks like this:


  ssd-config-list =
"SUN T4", "delay-busy:600, retries-timeout:6",
"SUN StorEdge_3510", "retries-timeout:3";


Much more elegant than the previous one, right? Furthermore, the new sd-config-list is JSON-compliant. Using JSON gives us not only a language independent format but also a familiar C style conventions. Backward compatibility is maintained: the old bitmask way still works but I am sure you will prefer the new format.

One more thing, the sd-retry-count tunable is back to Solaris. Of course, you have to use sd-config-list to configure sd-retry-count(now called "retries-timeout", the retries to perform on an IO timeout) on a per device type basis.



Future works?



There are two fronts of future works:



  • Providing generic interfaces in Solaris libnvpair to convert between nvlist and JSON text

  • Adopting more driver properties to use the JSON format. A quick target would be tape-config-list in st.conf.


Kudos to Chris and Nikko who make this happen!

Thursday Mar 20, 2008


  • ATA:AT 嵌入式接口

  • SCSI:Small Computer System Interface 小型计算机系统接口

  • SATA: Serial ATA, 串行ATA

  • eSATA: External SATA, 扩展型SATA

  • NAS:Network Attached Storage-网络附加存储

  • DAS:Direct Attached Storage-直接附加存储

  • SAN:Storage Area Network-存储局域网络

  • Array:阵列

  • Cache Policy :高速缓存策略

  • Capacity Expansion :容量扩展

  • Format:格式化

  • SAS: Serial Attached SCSI, 串行SCSI

  • iSCSI: Internet SCSI

  • iSNS: Internet Storage Name Service, Internet 存储名称服务

  • iBFT:

  • EFI: 扩展固件接口

  • UEFI: Unified EFI

  • VTOC:

  • Fibre Channel: 光纤通道

  • Data De-duplication: 重复数据删除

  • CDP: Continuous Data Protection, 持续数据保护

  • Virtual Tape Library: 虚拟带库

  • COMSTAR:

  • VDI: Virtual Desktop Infrastructure

  • Thin-provisioning:

  • Single-instance storage:


I plan to update this list on a regular basis. Some of the translations are from this network dictionary.



I am often asked to translate the names of Chinese dishes or their ingredients to English when dining with foreigner friends. Sometimes I did fine, but many times I just failed the task: not able to find the English name for the Chinese food. I just came across this website which seems to be designed for rescuing me:

http://www.howtoorderchinesefood.com/

Its name speaks for itself.  

 


Monday Jul 23, 2007

I am not a golf fan and don't follow golf games that much. From time to time, I am attracted to watch golf news or games on TV. Most of times it is because of Tiger: Tiger's passion and desire for winning is among the best I've ever seen. It is fun to watch Tiger winning with his trademark fist pump. Anyway, this post is about Sergio, who just lost in a playoff in this year's British Open. Sergio will still have to wait for his first major championship. A guy being described as talented as Tiger, Sergio pretty much becomes the next Phil Mickelson: the long-waited major. It will be interesting to watch how and when Sergio will pursue his first. I hope Sergio will get his in the Mickelson fashion.

Sunday Jul 22, 2007

A short survey required by Law and Ethic course to learn more about email monitoring practice.

1. What is the size of your company?

A. 1-50

B. 50-100

C. 100-1000

D. more than 1000

2. Does your company monitor your email?

A. Yes

B. No 

3.Does your company monitor instant message?

A. Yes

B. No

4. Why your employer monitor email?

A. Because of concerns on wasting company time

B. Virus protection

C. Protect confidential information

D. Prevent illegal use of email or possible liability from misuse.

5. Does your employer provide training on email usage?

A. Yes

B. No

6. Does your employer have an email policy?

A. Yes

B. No

7. Has your employers ever terminate an employee because of violating email policy?

A. Yes

B. No 


 

 

Monday Jul 02, 2007

I got some inquiries on the usage of SCSI mode pages in Solaris. I am posting what I am currently aware of. Mode pages related to removable media are not covered here. In <sys/scsi/generic/mode.h>, the following SCSI-3 mode pages are defined.
  • Mode page 0x08--caching mode page: this page is used by sd driver to enable/disable disk write cache.
  • Mode page 0x0A--control mode page: this page is used by sd driver to use descriptor sense data (for greater than 2TB lun support). It is also used in format, fma(libdiskstatus), and aac driver.
  • Mode page 0x02--disconnect-reconnect mode page: only used by format and emul64 driver.
  • Mode page 0x09--peripheral device page, obsolete in SPC-4: only used in format.
  • Mode page 0x1A--power condition mode page: only used in sata framework.
  • Mode page 0x03--format device page and mode page 0x04--regid disk drive geometry page: these two pages are consumed by sd to initialize the physical geometry.

<sys/scsi/impl/mode.h> also defines some SCSI-2 mode pages. One can use the format command to take a quick look at these pages: format->scsi

SCSI MENU:
        p<n>                   - display a mode sense page
        p<n> b<n> <op> [~]<n>  - change a byte and issue mode select
        b<n> <op> [~]<n>       - add an operation to the mode select list
                                     for the current page
       
                where:  p<n> specifies the page with page code <n>
                        b<n> specifies byte <n> of the page
                        <op> can be one of the following operators:
                             =    (set specified value)
                             |=   (bitwise OR with current value)
                             &=   (bitwise AND with current value)
                        <n> can be a decimal value in the range 0-255,
                        or two hexadecimal digits, in the form 0x<xx>.
                        [~] complements the specified value
       
        apply                  - apply mode select list
        cancel                 - cancel mode select list
        display                - display mode select list
        all                    - display all supported mode sense pages
        default p<n>           - mode select page <n> to default values
        default all            - mode select all pages to default values
        format                 - format without standard mode selects
        inquiry                - display device's inquiry response
        list                   - list common SCSI-2 mode pages
        !<cmd>                 - execute <cmd> , then return
        quit
scsi> list

Common SCSI-2 pages applicable to direct-access devices:

Page 0x1   - Read-Write Error Recovery Page
Page 0x2   - Disconnect-Reconnect Page
Page 0x3   - Format Device Page
Page 0x4   - Rigid Disk Geometry Page
Page 0x7   - Verify Error Recovery Page
Page 0x8   - Caching Page
Page 0xA   - Control Mode Page

Friday Jun 29, 2007

6和40, 是今天的关键数。 易建联和孙悦, 都是被没被试训的球队选中,结果两人一忧一喜,不知还有后续变化否。 当你得和一个你没有面试过的公司签合同工作时,你会签吗?

Powered by ScribeFire.

Thursday Jun 28, 2007

I've been thinking a lot about what should I blog in my first Sun blog entry, ever since I get this blog account two weeks ago. Some topics came across my mind: Solaris scsi io stack, storage industry or my 8 month-old son. All are good topics worth writing. However, instead of starting to write one of the topics, I forced myself into a trap evaluating which topic is better, in terms of being the #1 post of my blog. The result, obviously is not good: no single post in the past two weeks.

I am kinda surprised that I have experienced the writer's block on blogging. Not because I am a good writer, but because I just took a business communication course 3 months ago. On that course Professor Mendel taught me a very practical way to overcome writer's block: in essence, writing is a form of thinking. So whenever I need to write something, I should start with ease: write everything in my mind and come up with a rough draft, or in Professor's words, "a disposable draft". The idea of a rough draft is to provide a basis to start the thinking process. I can pick up ideas, organize thought and edit based on the rough draft. Since everyone can write the rough draft, the writer's block should never happen; and one can always work on the rough draft.

This post is actually a practice of Prof. Mendel way of overcoming writer's block: since I am thinking of writer's block, I am writing all that down and enjoying my first Sun blog.

Powered by ScribeFire.

This blog copyright 2009 by tauger