computer-architecture interview questions
Top computer-architecture frequently asked interview questions
I know that Windows XP 32-bit can be configured, through PAE, to support more than 3.5 GB of RAM. Is there a good tutorial to do this with Windows 7 32-bit?
As to why I don't simply use 64-bit Windows 7: The software for my Internet connection (cell phone-as-modem) will only work in 32-bit environments.
Source: (StackOverflow)
I've been learning a little bit more about how processors work, but I haven't been able to find a straight answer about instructions per cycle.
For instance, I was under the impression that a four core CPU could execute four instructions per cycle, so a four core CPU running at 2Ghz would execute 8 billion operations per second. Is this the case?
I'm sure it's oversimplifying things, but if there's a guide or something else I can use to set myself straight, I'm definitely open to ideas.
Source: (StackOverflow)
I'm using Core 2 Duo. So, from Intel website I found that it is 64-bit architecture CPU.
Long back I've installed Ubuntu OS on this machine. But I'm not sure if I installed x86-32 or x86-64 version of Linux. I want to know which version of Linux I'm using. How to know that?
How to find the same on windows?
Source: (StackOverflow)
I'm using Linux and have an old P4 with about 3 GHz clock speed. Will a newer chip that had slower clock speed run my legacy applications faster or slower? I only use one application at a time, an old drawing program (windows app used in wine) that is unable to take advantage of multicore, and have no desire to run anything in the background.
For example - I was looking at used computer that was CORE 2 DUO 1.86GHZ. This is only half the clock speed, but a much newer chip. Will this run my single app faster or slower or about the same?
Source: (StackOverflow)
32 bit computers can only store signed integers up to 232 - 1.
This is why we have run out of ipv4 addresses and have entered the 64 bit era.
However, the number 232 - 1 (2,147,483,647) is not as large as the number 1 trillion (1,000,000,000,000) which I seem to be able to display fine without my machine crashing.
Can someone explain why this is?
Source: (StackOverflow)
Something I'm working on wants a very fast/wide Front Side Bus (FSB). What component is the FSB part of? Is it part of the CPU or the motherboard? Is it something that can be placed on a board, or is it fundamentally a part of the motherboard and therefore not able to be replaced?
Source: (StackOverflow)
Is the only purpose of transistors in a cpu to act as the switches that define its instruction set? And if so then why does increasing the number of transistors increase its speed?
Source: (StackOverflow)
I know a question similar to this one has been asked before however it was about installing a 32bit OS on a 64bit laptop. My question is more about damaging the hardware.
I was wondering if there was a way of interfacing with hardware from the OS or Terminal layer in a way to damage it beyond repair (actual physical damage, not just faulty hardware).
- Could you bypass security measures and run a CPU so hard that the ceramic actually breaks?
- Could you write or interface with a HDD in a way that would cause physical damage to the platters?
- Could you mess around with memory and fry RAM?
- Can you blow a NIC?
I'm interesting in knowing the limit to which the software can reach when looking at a system as a whole.
Source: (StackOverflow)
I have read that manufacturers stopped concentrating on higher clock speeds and are now working on other things to improve performance.
With
- an old Desktop machine with Intel® Xeon® Processor E3110 with clock speed of 3.0GHz
- and a new server with AMD Opteron(TM) Processor 6272 with clock speed of 2.1GHz
when performed a simple encryption comparison using (single threaded)
openssl aes256c
the desktop performed far better than the server.
So even with latest optimization, why does the processor with the better clock speed perform better?
Source: (StackOverflow)
I was reading this article on 64 bit computing, and it mentions:
For example, the AMD64 architecture as of 2011 allowed 52 bits for physical memory and 48 bits for virtual memory
I would think that it would make more sense to allow for more virtual memory than physical memory, so why is it actually the other way around?
Bonus question: What does it mean to "allow" for 52 or 48 bits on a 64 bit architecture? What are the other bits used for?
Source: (StackOverflow)
I was just looking at the power connector for a SATA optical drive and noticed that it had fifteen pins!
I then marveled at the data connector next to it, which has a measly seven pins.
I know that there are only physically three pins needed for the power connection:
Why did they decide to use a fifteen-pin power connector that's twice the width of the data connector?
Source: (StackOverflow)
This question already has an answer here:
What's the command line to find out if the OS is running a 32-bit version or 64-bit of Windows?
Source: (StackOverflow)
How does a processor 'know' what the different commands mean?
I'm thinking of assembly level commands like MOV, PUSH, CALL, etc...
Source: (StackOverflow)
Yes I know that Xeons are meant for server use, require different motherboards and you can have more than one of them in a box.
But technically how is a Xeon processor itself different from a regular core 2 processor?
Source: (StackOverflow)
Google says it is running at 6Gb/s. The throughput is at 600MB/s. 600MB/s equals 4.8Gb/s.
Does this mean that the bandwidth is 6Gb/s but the actual throughput is 4.8Gb/s ?
Source: (StackOverflow)