Difference between revisions of "Determining Specs"
(Initial write-up; incomplete) |
|||
Line 1: | Line 1: | ||
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. | 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== | |
{| border="1" fontname="Nimbus Sans" fontsize="12" cellpadding="5" cellspacing="1" | {| border="1" fontname="Nimbus Sans" fontsize="12" cellpadding="5" cellspacing="1" | ||
|- | |- | ||
Line 13: | Line 13: | ||
!Hardware Identification Tool | !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 <code>/proc</code> directory. Specifically | ||
+ | |||
+ | $ cat /proc/cpuinfo | ||
+ | |||
+ | will give you a detailed list of information about the processor. Here's an example of some output from <code>/proc/cpuinfo</code> | ||
+ | |||
+ | $ 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 <code>model name</code>, <code>cache size</code>, and <code>cpu cores</code>. 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 [[Laptop_Specs|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 <code>dmidecode -t 16,17</code> | ||
+ | # 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 <code>Maximum Capacity</code> (invoked with the <code>-t 16</code> option), <code>Size</code>,<code>Type</code>, and <code>Speed</code> fields. <code>dmidecode</code> provides largely the same information as <code>lshw</code>, 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== | ||
+ | {| border="1" fontname="Nimbus Sans" fontsize="12" cellpadding="5" cellspacing="1" | ||
+ | |- | ||
+ | |width="15%" align="center"|<h2>Command</h2> | ||
+ | |align="center"|<h2>Output and Notes</h2> | ||
+ | |- | ||
+ | !<code>lshw</code> | ||
+ | || | ||
+ | Example output from <code>lshw -C memory</code>: | ||
+ | *-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 <code>banks</code> appear, and the <code>size</code> and the <code>clock</code> 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). | ||
+ | |- | ||
+ | !<code>dmidecode</code> |
Revision as of 01:30, 15 September 2011
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 $ cat /proc/cpuinfo will give you a detailed list of information about the processor. Here's an example of some output from $ 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 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 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 |
Example Output
Command |
Output and Notes |
lshw
|
Example output from *-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 |
---|---|
dmidecode
|