operating-systems interview questions
Top operating-systems frequently asked interview questions
I am doing my bachelor's degree at a university. In a written assignment, the professor posted the task: "Name three PC operating systems".
Well, I went on an included a variety of OSes (Linux, Windows, Mac OS X) and including Unix & Solaris. Today I received a mail from my professor saying:
Unix is not a PC operating system. Many Unix-variants are not PC-hardware compatible (like AIX & HP-UX. About Solaris: there was one PC-compatible version...)
I am kind of suprised: Even if many Unix-variants are PowerPC based and have a different bit-order – Those don't stop being PCs now, right?
The question was given in a written assignment! It was not a question that came up during the lecture!
Due to the original task being in German, I'll include it just to make sure nobody suspects an error in the translation.
Frage: Nennen Sie 3 PC-Betriebssysteme.
Antwort: Unix ist kein PC-Betriebssystem, viele Unix-Varianten sind nicht auf PC-Hardware lauffähig (AIX, HP-UX). Von Solaris gab es mal eine PC-Variante.
This question maybe a bit historical, but we didn't have Superuser at the time.
Around 2000 when I was starting my Computer science degree, a subject was Operating systems. The teacher asked us to list a few OS. I said Windows 95.
I was immediately shot down. Windows 95 wasn't on OS, as it used DOS to boot up. The actual OS was DOS, Win 95 was just a graphical wrapper around it.
I pointed that all trade magazines called Win95 an OS, but was told that they were run by laymen, and as a professional, I should know better. DOS was the only OS from Microsoft, at least till Win2K came out later that year.
So 12 years on, I'm still not sure. Could Win 95 be considered an OS?
In reading the man page on the free command in Linux. I found that is gets its info from
I understand a few of the entries, like
MemFree. What do the rest mean.
MemTotal: 3973736 kB
MemFree: 431064 kB
Buffers: 46604 kB
Cached: 494648 kB
SwapCached: 11360 kB
Active: 2322760 kB
Inactive: 933028 kB
Active(anon): 2057952 kB
Inactive(anon): 679956 kB
Active(file): 264808 kB
Inactive(file): 253072 kB
Unevictable: 16 kB
Mlocked: 16 kB
SwapTotal: 4096568 kB
SwapFree: 3961748 kB
Dirty: 236 kB
Writeback: 0 kB
AnonPages: 2704520 kB
Mapped: 182240 kB
Shmem: 23372 kB
Slab: 93848 kB
SReclaimable: 52044 kB
SUnreclaim: 41804 kB
KernelStack: 5064 kB
PageTables: 64928 kB
NFS_Unstable: 0 kB
Bounce: 0 kB
WritebackTmp: 0 kB
CommitLimit: 6083436 kB
Committed_AS: 7327800 kB
VmallocTotal: 34359738367 kB
VmallocUsed: 321156 kB
VmallocChunk: 34359411708 kB
HardwareCorrupted: 0 kB
AnonHugePages: 0 kB
Hugepagesize: 2048 kB
DirectMap4k: 225280 kB
DirectMap2M: 3895296 kB
My employer has an Active Directory group policy which sets my Windows 7 laptop HOMEDRIVE to "M:" (a mapped network drive) and my HOMEPATH to "\". Since I have read-only permissions for the root of that shared drive, I cannot create files or directories in my windows home directory. My attempts to work with the IT department have been unsuccessful.
Is there a way for me to globally change these envars at boot or login time? I need for all applications to use alternate values (such as "C:" and "\Users\myname"). I have some installed utilities (like gvim and others) that store preference files in the user's home directory.
IMPORTANT: Changing these envars under "System Properties > Environment Variables" does not work. I have tried setting these as both User and System Variables (including a reboot). Typing
SET HOMEin a DOS window clearly shows that my settings are ignored. Also, using "Start in" in a Windows shortcut will also not solve this, as I need things like Explorer context menu items (like "Edit with Vim") to operate correctly.
I do have admin rights on this company laptop, but I am not a Win7 guru. Back in the day, a boot script would have solved this in a minute. Is it even possible today? Thanks.
My ever-growing interest in computers is making me ask deeper questions, that we don't seem to have to ask anymore. Our computers, at boot, as far as I understand it, are in text mode, in which a character can be displayed using the software interrupt
AH=0x0e. We've all seen the famous booting font that always looks the same, regardless of what computer is booting.
So, how on earth do computers output graphics at the lowest level, say, below the OS? And also, surely graphics aren't outputted a pixel at a time using software interrupts, as that sounds very slow?
Is there a standard that defines basic outputting of vertices, polygons, fonts, etc. (below OpenGL for example, which OpenGL might use)? What makes me ask is why OS' can often be fine without official drivers installed; how do they do that?
Apologies if my assumptions are incorrect. I would be very grateful for elaboration on these topics!
The Operating systems have been tightly related to the computer architecture.An OS takes care for all input and output in a computer system. It manages users, processes, memory management, printing, telecommunication, networking etc.It sends data to a disk, the printer, the screen and other peripherals connected to the computer.
Prior to the introduction of Operating System,
What was used in computer systems to make them work?
Which concept was used to operating system in our evolution of computer?
Nowadays with our modern operating systems, is it necessary to fully shutdown computers instead of choosing to stand-by or hibernate computers (desktops and laptops)?
Would there be any side-effects of keeping a computer running continuously without a shutdown (putting it to sleep or hibernating it when it is not used)? For example, hard drive life decrease, system internals (Processors, RAM etc.) aging faster than usual, etc?
After failing to copy a file bigger than 4G to my 8G USB flash drive, I formatted it as ext3. While this is working fine for me so far, it will cause problems if I want to use it to copy files to someone which does not use Linux.
I am thinking of formatting it as UDF instead, which I hope would allow it to be read (and possibly even written) on the three most popular operating systems (Windows, MacOS, and Linux), without having to install any extra drivers. However, from what I found on the web already, there seem to be several small gotchas related to which parameters are used to create the filesystem, which can reduce the compability (but most of the pages I found are about optical media, not USB flash drives).
I would like to know:
- Which utility should I use to create the filesystem? (So far I have found
mkudffs seems the best option.)
- Which parameters should I use with the chosen utility for maximum compability?
- How compatible with the most common versions of these three operating systems UDF actually is?
- Is using UDF actually the best idea? Is there another filesystem which would have better compatibility, with no problematic restrictions like the FAT32 4G file size limit, and without having to install special drivers in every single computer which touches it?
Somebody I know expressed irritation today regarding those of us who tend not to use spaces in our filenames, e.g.
NamingThingsLikeThis.txt -- despite most modern operating systems supporting spaces in filenames.
Are there technical reasons that it's still common to see file names without (appropriate) spaces? If so, what are these technical reasons that spaces in filenames are avoided or discouraged, and in what circumstances are they relevant?
The most obvious reason I could think of, and why I typically avoid it, are the extra quotes required on the command line when dealing with such files. Are there any other significant technical reasons?
What are the differences between 32-bit and 64-bit systems?
If you have used both of them, what kind of sharp differences have you experienced?
Would it be a problem to use 32-bit programs on 64-bit systems in some cases?
Why is it that:
- a 32-bit OS, when installed on a 64-bit CPU, can run old 16-bit applications,
- but if you install a 64-bit OS it can't run those applications directly and need some sort of emulation (that doesn't always work perfectly)?
To be more specific, I have an 64-bit processor (Intel Core 2 Duo). When I had Windows XP and Windows 7 (both 32-bit) installed, they could run old DOS and 616-bit Windows applications.
Now I have installed the 64-bit edition of Windows 7. Why can't it run those same applications anymore?
I want to upgrade from Windows 7 to Windows 8. How can I do this while keeping all of my files in-tact? Is it possible to retain all of my applications and user settings, too?
There are 65536 ports for every system in the network, and every connection or Send/Receive will use one of those.
My question is: what happens if we have 65536+1 connections?!
I know that it does not happens in normal way, but I'm curious to know how Operating Systems handle it.
I'm trying to convince somebody of the benefits of switching to a 64-bit OS but I'm having a hard time finding arguments other than "you can use more than 3GB RAM". Are there any other clearly-communicable benefits in having a 64-bit operating system?