Friday, July 30, 2010

CPU-Z V/S DMIDECODE..and..HOW TO USE THEM?

I wouldn't actually call it a post being posted here because amarjeet sir wanted it to be here on the blog..After all those discussions on the first post of this blog over how to get the details of your processor,ram,OS..etc just on the click of a button....and then later over utilities like CPU-Z and DMIDECODE..this had to be there..either as my personal assignment or some question in the class or as it was destined to be..As a post..titled--CPU-Z V/S DMIDECODE..What are these actually??how do I install them and use them??...I hope I end up clearing all your doubts..


OVERVIEW:
Each computer is like a specific human being.. having a processor,ram,hard-disk,motherboard different from others in one or more ways...and getting into the details the complexity of each component increases..some of these computers might have pentium-4,some may have a dual core..the ram might vary from an obsolete SD-Ram to DDR1,2 and 3 Rams..the question is..I have all these locked under my laptop or in my cpu..how do I know what are the details of such components in the machine that I am using without any prior knowledge..


There are several ways to get to know that..however..the most user friendly ones are..

  • If you are working on a windows platform,you could just go to control panel/system...or a shortcut whould be right-clicking your MY COMPUTER icon and selecting properties and then device manager for details about each component, and driver details..

However,some OSs or some specific OS service packages do not provide the necessary information like the Ram type,or may be the the frequency of the Ram..(That's why some of you just couldn't get these details and commented for solutions on the post.

  • This one is a kind of a universal method..which includes getting the data through the SMBIOS or System Management Basic Input/output System which is actually a special software that interfaces the major hardware components of our computer with the operating system.It is usually stored on the Flash memory chip on the motherboard, but sometimes the chip is another type of ROM.










img links: http://www.washington.edu/lst/help/computing_fundamentals/troubleshootingxp/img/bios.gif
http://www.computerhope.com/help/bios4.gif

You can enter the BIOS by just pressing del or F-11,or F-12 key(depending on ur BIOS version and make) while starting up the computer before the OS boots..

However,Some BIOS interfaces from Pheonix and other firms..in some versions..do not provide the necessary,just like mine didn't.It may provide u with more than what the OS provides..but it's still not everything..
  • Now,the most important part of this post..if none of the above work,this is your key my friends..For Windows' users...this is a must have..It can provide you with information and details that Windows or even BIOS do not provide..It's actually a UTILITY(A program that performs a specific task related to the management of computer functions, resources, or files, as password...{{source answers.com}) that helps you get all the details about the following:

CPU
Name and number.
Core stepping and process.
Package.
Core voltage.
Internal and external clocks, clock multiplier.
Supported instruction sets.
Cache information. Mainboard
Vendor, model and revision.
BIOS model and date.
Chipset (northbridge and southbridge) and sensor.
Graphic interface. Memory
Frequency and timings.
Module(s) specification using SPD (Serial Presence Detect) : vendor, serial number, timings table. System
Windows and DirectX version

Source : cpuid.com

How to install this thing?? Just as simple as it can be..Download the software from http://www.cpuid.com/ for free..and just run the executable file..You'll be done.(Please don't try to validate your copy,keeping it unvalidated would do.)

Once installed,the software is user friendly to handle.Requires no input.The screen may look like as below



img source: cpuid.com

Now is the most important part...



HOW DOES THIS WORK?? AND CPU-Z V/S DMIDECODE(Linux)


To get information about a device, whatever it is (CPU, GPU, HDD ...) you have two methods:


1- Hardware level access (aka direct or raw access) or,


2- software level access: drivers, or Windows API.


Method 1 is the most accurate, provides the most precise details, but it is dangerous and requires constant updates. Method 2 is safer, less accurate and easier. CPU-Z uses method 1 for CPU information.


About why is method -1 risky?..I had to work out a simple answer.So it's about the Windows kernel system which is organised in so called rings.Ring 0 being the core of kernal..CPU-Z runs in Ring 0 to get the detailed information digged out.But all other applications we use,run in Ring 3,so if there is any error..Ring N-1(i.e. Ring 2 here.) handles the error.But if unfortunately there is an error in Ring-0.All you get is a blue screen being displayed.(However guys,you get to run CPU-Z in Ring 0 only if you are the administrator of your system.If not,it will follow method-2 and run in Ring -3,thus providing less or incorrect information)


Now,There are also other similar utilities you can try out,close to how CPU-Z works.


One of them is called SPECCY(Thanks to my buddy Apoorv Narang,Ist year, for this information)


Here's the link if anyone needs to try it out http://www.piriform.com/speccy


This is more user friendly,gives enough information about your graphics card too.....


BUT What is DMIDECODE??


First of all,this command is only for use in LINUX. DMIDECODE is actually DMI table decoder.dmidecode is a tool for dumping a computer's DMI (some say SMBIOS ) table contents in a human-readable format. This table contains a description of the system's hardware components, as well as other useful pieces of information such as serial numbers and BIOS revision. Thanks to this table, you can retrieve this information without having to probe for the actual hardware. While this is a good point in terms of report speed and safeness, this also makes the presented information possibly unreliable. The DMI table doesn't only describe what the system is currently made of, it also can report the possible evolutions (such as the fastest supported CPU or the maximal amount of memory supported).
SMBIOS stands for System Management BIOS , while DMI stands for Desktop Management Interface. Both standards are tightly related and developed by the DMTF (Desktop Management Task Force).
As you run it, dmidecode will try to locate the DMI table.You may also use DMIDECODE -t for information not specific to BIOS.If it succeeds, it will then parse this table and display a list of records like this one:


CPU-Z V/s DMIDECODE
Add Image
Well,DMIDECODE can't actually be called a counterpart of CPU-Z on LINUX.There are various reasons:
  • CPU-Z is for Windows,DMIDECODE for Linux.
  • The CPU-Z is an External utility downloaded from the web.But dmidecode is a command,used in the Linux terminal window.
  • So,the Dmidecode tool may be called an internal utility of the Linux.
  • The tables appearing after running DMIDECODE are not that specific,niether do they contain all the necessary details
  • CPU-Z is much more userfriendly as a software,compared to running commands in Linux.
  • CPU-Z is highly detailed as it works in Ring 0 of window's kernal system,DMIDECODE itself doesn't get u all the needed,but some modifications in the command(available on google) can help u get almost everything.

For the lucky ones like AMARJEET SIR,who fortunately use MAC..its a piece of cake..just go to about-Mac..and you are done...(APPLE ROCKS)

Do let me know if this was helpful,I know this was long, but I just couldn't help it.

Comments and Questions are invited from all of you.If any one of you tries any of the above specified softwares,please share your experience with us.

If you need me to post anything you want to know about.Feel free to mail me at

arjun10021@iiitd.ac.in

Thanks
Arjun Ahuja






Hard drives getting S.M.A.R.T.

Hard drives have to operate at thousands of rpm , work all day long and maintain a distance of the order of microns between the head and the platter (as we got to know in the lab). So, it is natural the hard drives “die”,i.e., they stop working eventually, resulting in the loss of our data and problems for us.But the S.M.A.R.T. supported drives may just tell you before its going to die, to save us the heartburn.

I stumbled upon this term when we had to collect information about our processors,hard drives and system memory. So I tried to find a little more about this lifesaving technology.So here's what i found....

S.M.A.R.T. stands for Self-Monitoring, Analysis and Reporting Technology and it tries to anticipate hard drive failure by keeping an eye on many of the drive’s crucial properties.

S.M.A.R.T. support is built into most ATA and SCSI hard drives these days. If a hard drive has S.M.A.R.T. support , then it keeps monitoring itself for signs which may lead to a drive failure and warns the user/administrator so that he/she may be able to copy the data to another location before the drive dies.


The first drive monitoring system was introduced by IBM in 1992. Another variant was created by computer manufacturer Compaq and disk drive manufacturers Seagate, Quantum, and Conner which was named  IntelliSafe. Compaq submitted their implementation to Small Form Committee for standardization in early 1995. It was supported by various other companies including IBM and was chosen by the committee as the standard due to its flexibility and was named S.M.A.R.T.. According to PCtechguide’s page on  S.M.A.R.T. , the smart technology has evolved from just monitoring hard drive activity for data retrieved by operating system to testing all data and sectors of a drive using “off-line data collection”(when drive is inactive).


A Little Info


The most basic information provided by the SMART system is the SMART status. It has two values , “threshold exceeded” or “threshold not exceeded”,which correspond to “drive about to fail” or “drive okay”.A “threshold exceeded” value suggests that the drive is about to fail,i.e., it will not be able to work according to its specifications anymore.


For more information on a drive’s health, SMART attributes can be examined. there are various types of SMART attributes like read error rate,throughput performance,spin up time etc. which have different threshold values defined by the manufacturer and tend to vary from one manufacturer to another. If a attributes threshold is crossed , it may report an impending drive failure, but it all depends on the implementation of SMART attributes by the manufacturer as these attributes were not included in the standard. A list of all the SMART attributes and meanings of their raw values is available at http://en.wikipedia.org/wiki/S.M.A.R.T.


Furthermore, some drives also support various self tests and maintenance tests as a part of SMART system to reduce the chances of sudden disk failure.

-offline

-short

-long

-conveyance


In linux, one can view the SMART properties using the disk utility or by using smartmontools' smartctl utility. A detailed article on how to use this utility and more about SMART is available at http://www.linuxjournal.com/magazine/monitoring-hard-disks-smart (i havn’t tried it yet, if anybody tries it ,let me know about the results).


disk utility screenshots

































links and resources:

http://www.pctechguide.com/31HardDisk_SMART.htm

http://www.linuxjournal.com/magazine/monitoring-hard-disks-smart

http://en.wikipedia.org/wiki/S.M.A.R.T.


Thursday, July 29, 2010

PCI, PCI-X, PCI Express - Comparison

A brief intro on Buses and Peripherals

Buses
look like "a bundle of wires" or PCB's that terminate at multiple connectors where devices can be plugged in. They are used basically to connect electric components.

Early computer buses were just bundles of wire connecting memory with peripherals(External devices/Hardware which need the host perform a function eg: Mouse, Keyboard.)


The S-100 bus "Card Cage" - The S-100 bus was used in the earliest "Microcomputers"

Technology evolved, computers became sophisticated, and so did these guys.

What we use today:

PCI (Peripheral Component Interconnect)

PCI is a widely used computer bus which acts as a standard interface for connecting peripherals to the computer, in two ways - An integrated circuit embedded in the motherboard, or an expansion card which fits into it's slot.

PCI is capable of allowing high speed of data transfer, which modern peripherals(eg: Graphic cards, Ethernet)require.

More info in PCI found here: http://computer.howstuffworks.com/pci.htm



PCI-X

PCI-X(64 bit) is the 32 bit PCI bus optimized for higher performance. It is twice the width of the PCI and narrower. It runs at higher frequencies, and can manage four times the clock speed. It was developed(by IBM, Microsoft, HP) to increase the performance of high level peripherals like high-end graphic cards and Storage devices, gigabit - speed ethernet, which isn't feasible by the conventional PCI design.

Except for a few changes, The basic structure of PCI and PCI-X are similar, they follow the same protocol and perform the same functions.

PCI Express/PCIE

PCI Express is an innovative new design that is used as an Expansion Card(It can't be connected to PCI/PCI-X directly) to replace PCI and PCI-X.


PCIE operates more like a network than a bus.

In a PCI/PCI-X, one bus handles data from multiple sources at once.

In PCIE, a switch controls several point to point serial connections, these connections are conveyed directly to the device where the data needs to go making a serial interconnect along a switched bus, dedicated exclusively to that slot. Meaning - The PCIE point to point connection connects only two devices at one time.

Each PCIE slot is attached to the motherboard using a unique "lane", which does not share the data path with other PCIE Slots. Multiplying individual data "lanes" to produce interconnects which deliver upto 16 times the bandwidth of a single lane.(This is the reason their slots are referred to as PCI Express*4/PciExpress*16)

Further information on how PCI Express works:http://computer.howstuffworks.com/pci-express.htm

PCIE vs PCI-X - Why PCIE is Superior

Parallel connections (used by PCI-X) undergo problems during high speed data transfer - like electromagnetic interference.
Interconnecting lanes of PCIE give it a higher bandwidth.
Less steps needed to process instructions, due to it's architecture.
Add more.

Performance Report: 3GIO stands for third generation input-output, another name for PCIE
BW -Bandwidth, Pin-Number of Pins

Statistics and data on PCI, PCI-X, PCI Express found here:

How to differentiate b/w the three:



Pictures pulled from:
_________________________________________________________________

If any you feel anything mentioned is incorrect, please drop a line and I'll make changes to ensure no misconceptions happen.

File size limit of 4GB in FAT32 file system

Many of u may not be familiar with this that there is a file size limit of 4GB in file system( or more technically its 3.99 GB)... Even i am a years old FAT32 system user yet i had no idea abt it till recently!!!

There are two well explained reason behind not knowing abt it, first being that most of us have switched to the modern file systems such as exFAT/FAT64, NTFS or NTFS5... Second reason being we pretty rarely come across with the files larger than 4GB, and even if we come across them the are split into volumes of smaller sizes,so we may not know abt them... And the last and most common reason we actually never cared!!!

Reason for the file size limit lies in the design itself the FAT32 system was designed on the basic FAT systems and took it to a much higher limit from the parent version.. This file system's maximum limiting size on stored files is set by its inherent design considerations. The FAT32 file size limit is only 4 GB minus 1 byte (232 - 1 bytes). This limitation was imposed because with greater volume sizes, data transfers becomes too slow under FAT32 format..
Hence in that case Microsoft wanted us to use the other advanced file systems...

The newer systems provided better security features, better file management, stability, speed, support for large hard disks, compression and above all about unlimited file size and cluster size... The latest of the file systems is NTFS5, which is a slight improvement from the previous version of NTFS, more about this will be in my next blog.. Till then u'll have to wait!!!

Here is a picture of the files larger than 4GB and how they are splitted in parts of 3.99GB in a FAT32 system:




Here's a list of file systems and their file size limits:

  • FAT12: 16MB
  • FAT16: 2GB
  • FAT32: 4GB minus 1 byte
  • exFAT/FAT64: 16ZB
  • NTFS: 16TB minus 64KB
  • NTFS5: 16 ExaBytes minus 1KB
sources: Microsoft support center

As this was my first blog, i apologize if i made a mistake in writting anything, and suggestions are alwayz welcomed... As of the blog i understand its too small, but i have been typing and posting everything through cellphone(since i m having a bandwidth problem), n u all must know how irritating its to type on a cellphone, yet i have tried to make the post a better one... Hope u like it...

Hard Disks: Advantage of SATA over IDE

Hi everyone! I had asked a question in SM Lab Session (I don't even exactly remember the question now!) And I was told to 'Google it & Blog it'. So here I am blogging about IDE & SATA: Advantage of SATA over IDE.

Every hard disk is interfaced in the motherboard through a disk controller. This disk controller is the one that plays bridge between the hard disk and the operating system. For the user to access data from the hard disk, there is a data bus connecting the hard disk and the motherboard. The data bus is like a pipe where bytes of data are being transmitted.

There are two kinds of data buses, Serial ATA and Parallel ATA, which are used in SATA hard disk and IDE hard disk respectively.
IDE is the abbreviation of Integrated Device Electronics. (The Parallel ATA was earlier called IDE. That
s why hard disks that use Parallel ATA are called IDE hard disks.)

SATA stands for Serial Advanced Technology Attachment.

The concept of the SATA was ratified by the ANSI (American National Standards Institute) in year of 2002.

ADVANTAGE OF SATA OVER IDE:

  • SATA has the capability to provide point to point channel communication between mother board and the drive. Where as in the IDE, the architecture of the master slave combination is supported on a single cable for the two drives it supports. (In the case of IDE, the controller allows the connection of 2 peripherals. The band-width is thus divided between the 2. This reduces the performances. On the other hand, in SATA, each hard disk is connected to its own controller via his own cable. This implies that there are no more bridging to configure for the main modes/slaves.)
  • The IDE hard disk drive uses the flat cable that has the width of around 18’’. But in the case of the Serial ATA a four wire cable is used that has a length of one meter. This is advantageous in comparison with the Parallel ATA (IDE) since the cables and the connectors that are used take less space than their counterparts in the Parallel ATA.
  • IDE platform is designed for normal / old computers, this way you transmit everything in parallel, and the IDE controller takes most of the work on transferring data.
    On Serial-ATA (SATA) the controller leaves most of the processing work to the CPU. (So if you have a small CPU you will prefer a IDE disk instead SATA, without mention that in old computers you will not have the SATA connector.)
  • IDE platform has it's top speed at 133 MB/s for ATA 133 (There is ATA 33, 66, 100 and 133) and for SATA you get 300 MB/s (SATA 1 have 150 MB/s, and SATA 300 MB/s).
  • Also, the SATA disk now are cheaper and bigger that any IDE disks.

Source: Various sites.
I have tried to be short & precise; have used simple language. Still queries n comments are welcome.

(PS: M blogging for the 1st time. please don't be too harsh!)

There are quite a few manufacturers that are producing different BIOS chips: Award, AMI, Phoenix, and IBM. Most commonly you can find AMIs, AWARDs and PHOENIXes. The BIOS is stored on a ROM chip.

These ROM BIOS chips can be of different measurements and look different from each other. Check out the following two types of chips. The one on the left is an AWARD (as stated on the sticker), while the one on the right is a Phoenix chip.

Wednesday, July 28, 2010

File Systems

File Systems can be very confusing. I remember getting confused so much between NTFS and FAT32 when using Windows. I have written this article using help from Wikipedia but have tried to simplify as much as possible to understand without getting confused. I hope this post helps you in understanding file systems better.


file system (often also written as filesystem) is just a method of storing and organizing computer files and their data. A file system organizes these files into a database for storage and usage by the computer's operating system(Windows, Mac OS, Linux etc.). Some common examples of file systems are NTFS, FAT32, ext3 etc.


File systems are used on data storage devices such as a hard disks or pen drives to maintain the physical location of the files by organizing physical sectors present in hard disks(the stuff that we learned today in class) into files and folders for our use. Most file systems address data in fixed-sized units called "clusters" which contain a certain number of sectors (usually 1-64). This is the smallest amount of disk space that can be allocated to hold a file.


Image: File systems shown in different disk partitions in a multi-boot configuration on my PC. Click the image to see it bigger. Note the red circled text.

A file system is an integral part of any modern operating system(OS) to organize and read files in the hard disk. To use a hard disk(or its partition) in an OS like C:/, D:/ etc., it must be formatted in the supported file system of the OS. Different OSs use different file systems some of which are:


FAT: FAT(File Allocation Table) is the most widely used file system due to its relative simplicity. It is used in pen drives, memory cards etc. as it is compatible with virtually all operating systems. The FAT file system compares poorly to most other file systems as it uses overly simplistic data structures, making file operations time-consuming, and makes poor use of disk space in situations where many small files are present. So it is not used much to install the OS nowadays due to the presence of superior options. Versions of FAT include FAT16, FAT32, exFAT etc. The latest exFAT version despite being good enough is not used much due to low adoption. Use FAT16 or FAT32 while formatting your pen drive or memory card.


NTFS:  NTFS (New Technology File System) is the standard file system of Windows since Windows 2000 and is widely used in Windows XP, Windows Vista, and Windows 7. It is better than the FAT32 file system in many ways. When installing Windows, I recommend using NTFS only(Update: Please read comment#3 for NTFS vs. FAT32). Partitions with NTFS are readable in Linux by default and by installing special drivers in Mac OS X.


ext3/4: ext3 is a file system most commonly used by Linux(and Linux distributions like Ubuntu and Fedora). ext4 is the successor to ext3 used by new versions of Ubuntu and Fedora. You will use this file system when installing Linux on your PC as the installer recommends it(Update: Linux can also be installed on some other file systems like FAT32). Partitions with ext3/4 are accessible in Windows by using 3rd party drivers and software.


HFS+:  Hierarchical File System Plus or HFS+ is a file system developed by Apple to replace their HFS as the primary file system used in Macintosh computers (or other systems running Mac OS). It is also one of the formats used by the iPod digital music player. Partitions with HFS+ are readable in Linux by default and by installing special drivers in Windows.


There are many other types of file systems but these are the only ones relevant to us in daily use. You will come across these more often when installing an OS or partitioning your hard drive. But if you have survived till this end of the post, I think you should be fine in deciding file systems when needed. Please feel free to ask any questions or doubts in the comments regarding file systems. Please avoid miscellaneous discussions in comments.


Source: Wikipedia 

Sunday, July 25, 2010

Welcome to the Systems Management Course, IIITD, 2010

This blog is intended to provide a forum for students enrolled in the Systems Management Course for 2010 to share interesting posts related to the course. The objective is also to create a reference location that acts as a resource for interesting utilities at one single place. We would encourage discussions on any blog posts pointing to discrepancies in the post or adding further resources that complement the related knowledge.

Happy Blogging!