Determining Specs

From FreekiWiki
Revision as of 00:30, 15 September 2011 by Scellef (talk | contribs)
Jump to navigation Jump to search

In order to figure out how to build a laptop, and where it should ultimately go, we need to know what's running under the hood. The following are some different strategies for figuring this out. Ideally, we would use a couple of these methods to corroborate the results of another, but that's not always possible.

How to Determine Laptop Specs

Methods

Notes and Detailed Instructions

BIOS

Since you should be making a stop in the BIOS anyway, it makes sense to start here. Unfortunately, not all systems will display the information we are looking for. If you don't see any mention of the processor on the main screen, try looking for an option that says something like System Information. It's always a good idea to double-check whatever the BIOS tells you with another method.

Hardware Identification Tool

We have a utility on our netboot menu called the Hardware Identification Tool, which displays just about everything you wanted to know about the system in front of you and more. In order to access the tool, the system you're working on will need to be able to boot from LAN. Occasionally, this feature will be disabled in the BIOS. In order to enable it, try looking under BIOS Menu options such as Device Options or Boot Devices. If you find an entry that references a Network Device, cycle through its settings to see if an option labelled Enabled w/ PXE or something similar is available.

Before booting, make sure you're connected to our LAN with an ethernet cable (there are multiple cables hovering around the workbench). Most systems will either offer you a boot menu or attempt a network boot if you hit F12 while POSTing. As with all things BIOS-related, this isn't always the case, so keep an eye out for any alternate means. Once you've successfully booted from the network, you should be presented with a menu showing the various options available. Select the Hardware Identification Tool and it should load almost immediately.

Inside of the Hardware Identification Tool, you should see a list of various parts of the system; Processor is of particular importance to us. Select Processor, and look for the Model, L2 cache, and Cores entries to help determine which specification the machine should be built towards.

If you have any questions or trouble booting from the network, consult your Instructor for assistance.

Booting from LiveCD

If your machine is unable to boot from the Network for whatever reason, all is not lost! We can try using a Live CD to get a linux environment and find out the specs from the commandline. To boot from the Live CD, make sure the system you're working on has an optical drive (an external drive can sometimes work as well), and throw a Live CD in there. All we really need is a console login, so if possible, try to avoid a graphical environment by selecting recovery mode or dropping to a TTY (Ctrl + Alt + F1) when the CD loads.

As with all things Linux, there are a dozen different ways to get the information we're looking for. The most reliable, however, is to dig around the /proc directory. Specifically

$ cat /proc/cpuinfo

will give you a detailed list of information about the processor. Here's an example of some output from /proc/cpuinfo

$ cat /proc/cpuinfo 
processor	: 0
vendor_id	: GenuineIntel
cpu family	: 6
model		: 15
model name	: Intel(R) Core(TM)2 Duo CPU     T7100  @ 1.80GHz
stepping	: 13
cpu MHz		: 800.000
cache size	: 2048 KB
physical id	: 0
siblings	: 2
core id		: 0
cpu cores	: 2
apicid		: 0
initial apicid	: 0
fdiv_bug	: no
hlt_bug		: no
f00f_bug	: no
coma_bug	: no
fpu		: yes
fpu_exception	: yes
cpuid level	: 10
wp		: yes
flags		: fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe
nx lm constant_tsc arch_perfmon pebs bts aperfmperf pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm lahf_lm ida dts 
tpr_shadow vnmi flexpriority
bogomips	: 3591.32
clflush size	: 64
cache_alignment	: 64
address sizes	: 36 bits physical, 48 bits virtual
power management:

The fields we're interested in are model name, cache size, and cpu cores. In this example, we're dealing with a Core 2 Duo, with 2 MB of L2 cache, and two cores. Nice! Make this system a High-end!

Determining how much and what kind of memory is installed can be tricky. It will pretty much always require root permissions, and a utility such as dmidecode or lshw. Depending on your Live CD, you may only have access to one or the other. Try the following commands:

$ sudo dmidecode -t 16,17
$ sudo lshw -C memory

Example output from dmidecode -t 16,17

# dmidecode 2.9
SMBIOS 2.4 present.

Handle 0x002B, DMI type 16, 15 bytes
Physical Memory Array
	Location: System Board Or Motherboard 
	Use: System Memory 
	Error Correction Type: None
	Maximum Capacity: 4 GB
	Error Information Handle: Not Provided
	Number Of Devices: 2

Handle 0x002C, DMI type 17, 27 bytes
Memory Device
	Array Handle: 0x002B
	Error Information Handle: 0xFF01
	Total Width: 64 bits
	Data Width: 64 bits
	Size: 1024 MB
	Form Factor: SODIMM
	Set: None
	Locator: DIMM 1
	Bank Locator: Bank 0/1
	Type: DDR2
	Type Detail: Synchronous
	Speed: 667 MHz (1.5 ns)
	Manufacturer: Not Specified
	Serial Number: Not Specified
	Asset Tag: Not Specified
	Part Number: Not Specified

Handle 0x002D, DMI type 17, 27 bytes
Memory Device
	Array Handle: 0x002B
	Error Information Handle: 0xFF01
	Total Width: 64 bits
	Data Width: 64 bits
	Size: 1024 MB
	Form Factor: SODIMM
	Set: None
	Locator: DIMM 2
	Bank Locator: Bank 2/3
	Type: DDR2
	Type Detail: Synchronous
	Speed: 667 MHz (1.5 ns)
	Manufacturer: Not Specified
	Serial Number: Not Specified
	Asset Tag: Not Specified
	Part Number: Not Specified

The interesting bits of information here are Maximum Capacity (invoked with the -t 16 option), Size,Type, and Speed fields. dmidecode provides largely the same information as lshw, except that it formats it nicer and offers a few extra tidbits. In particular, we now know our High-End laptop is capable of supporting up to 4GB of RAM.

Example Output

Command

Output and Notes

lshw

Example output from lshw -C memory:

*-memory
      description: System Memory
      physical id: 2b
      slot: System board or motherboard
      size: 2GiB
    *-bank:0
         description: SODIMM DDR2 Synchronous 667 MHz (1.5 ns)
         physical id: 0
         slot: DIMM 1
         size: 1GiB
         width: 64 bits
         clock: 667MHz (1.5ns)
    *-bank:1
         description: SODIMM DDR2 Synchronous 667 MHz (1.5 ns)
         physical id: 1
         slot: DIMM 2
         size: 1GiB
         width: 64 bits
         clock: 667MHz (1.5ns)

The interesting things to note here are how many banks appear, and the size and the clock in each of them. In this example, we have two banks (or two DIMM slots), each with a 1 GB stick of DDR2-667 (PC2-5300).

dmidecode