Solid State Disk
The A110 contains a 2 GB solid state disk which appears as standard "IDE" disk /dev/hdc in Linux.
Contents |
Technical information
- NAND flash chip: Hynix HY27UG088G5B-TPCB (8 GB ?), according to this photo
- See page 3 of the Hynix NAND Flash Part No Decoder datasheet for how to decode the part number.
- NAND Flash controller: Phison PS3006-L
hdparm information
(run on a stock 2.6.25)
$ hdparm -iI /dev/hdc
/dev/hdc:
Model=SSD 2GB, FwRev=Ver2.X0C, SerialNo=XXXXXXXXXXXXXXXXXXXX
Config={ HardSect NotMFM Fixed DTR>10Mbs }
RawCHS=3909/16/63, TrkSize=32256, SectSize=512, ECCbytes=4
BuffType=DualPort, BuffSize=1kB, MaxMultSect=1, MultSect=off
CurCHS=3909/16/63, CurSects=3940272, LBA=yes, LBAsects=3940272
IORDY=yes, tPIO={min:120,w/IORDY:120}, tDMA={min:120,rec:120}
PIO modes: pio0 pio1 pio2 pio3 pio4
DMA modes: mdma0 mdma1 mdma2
UDMA modes: udma0 udma1 udma2 udma3 udma4 *udma5
AdvancedPM=no
Drive conforms to: Unspecified: ATA/ATAPI-4,5
* signifies the current active mode
ATA device, with non-removable media
Model Number: SSD 2GB
Serial Number: XXXXXXXXXXXXXXXXXXXX
Firmware Revision: Ver2.X0C
Standards:
Supported: 5 4
Likely used: 6
Configuration:
Logical max current
cylinders 3909 3909
heads 16 16
sectors/track 63 63
--
CHS current addressable sectors: 3940272
LBA user addressable sectors: 3940272
device size with M = 1024*1024: 1923 MBytes
device size with M = 1000*1000: 2017 MBytes (2 GB)
Capabilities:
LBA, IORDY(cannot be disabled)
Standby timer values: spec'd by Standard, no device specific minimum
R/W multiple sector transfer: Max = 1 Current = 0
DMA: mdma0 mdma1 mdma2 udma0 udma1 udma2 udma3 udma4 *udma5
Cycle time: min=120ns recommended=120ns
PIO: pio0 pio1 pio2 pio3 pio4
Cycle time: no flow control=120ns IORDY flow control=120ns
Commands/features:
Enabled Supported:
* Power Management feature set
* WRITE_BUFFER command
* READ_BUFFER command
* NOP cmd
* CFA feature set
* Mandatory FLUSH_CACHE
Integrity word not set (found 0x0000, expected 0x49a5)
hdparm benchmark
$ hdparm -tT /dev/hdc /dev/hdc: Timing cached reads: 504 MB in 2.00 seconds = 251.91 MB/sec Timing buffered disk reads: 94 MB in 3.03 seconds = 31.01 MB/sec
according to a benchmark published in c't magazine the internal IDE flash drive is faster than both usb-stick and internal sd-card reader.
hddtemp
It seems there's no temperature sensor attached to the SSD, or at least it's not detected/supported by hddtemp:
$ hddtemp /dev/hdc WARNING: Drive /dev/hdc doesn't seem to have a temperature sensor. WARNING: This doesn't mean it hasn't got one. WARNING: If you are sure it has one, please contact me (hddtemp@guzu.net). WARNING: See --help, --debug and --drivebase options. /dev/hdc: SSD 2GB: no sensor
smartmontools
It seems there's no S.M.A.R.T. support for the SSD:
$ smartctl -i /dev/hdc smartctl version 5.38 [i686-pc-linux-gnu] Copyright (C) 2002-8 Bruce Allen Home page is http://smartmontools.sourceforge.net/ === START OF INFORMATION SECTION === Device Model: SSD 2GB Serial Number: XXXXXXXXXXXXXXXXXXXX Firmware Version: Ver2.X0C User Capacity: 2,017,419,264 bytes Device is: Not in smartctl database [for details use: -P showall] ATA Version is: 5 ATA Standard is: Exact ATA specification draft version not indicated Local Time is: Tue Jun 2 22:30:29 2008 CEST SMART support is: Unavailable - device lacks SMART capability. A mandatory SMART command failed: exiting. To continue, add one or more '-T permissive' options.
Prolonging SSD lifetime
Although SSDs will wear out after so-many writes onto the same block, it is by far not as bad as some people seem to suggest. Some users might still want to know about possible write-minimizations.
The best things to do are on the filesystem-level. The noatime and noadirtime options in /etc/fstab should be set, also (as is the case with the pre-shipped install) you should not use a journalling filesystem.
Another possibility is to mount /var/log and maybe even /tmp (If you know, what you are doing!) as tmpfs, so their contents, which change frequently, are stored in RAM. To achieve this, add these lines to /etc/fstab:
tmpfs /tmp tmpfs defaults 0 0 tmpfs /var/log tmpfs defaults 0 0
If you use Puppy Linux you can even eliminate flash-writes altogether by design. Once installed, Puppy works off a read-only USB thumb drive or any other flash drive. You can still save everything, if you wish, at power-down or manually. If you choose a USB thumb drive as /usr, the SSD will no longer be written to (problem with Puppy 4.0 though — use Puppy 3.0-retro instead).
See also Sidux Installation#flash_protection.