Wikipedia:Reference desk/Archives/Computing/2009 October 23

From Wikipedia, the free encyclopedia
Computing desk
< October 22 << Sep | October | Nov >> October 24 >
Welcome to the Wikipedia Computing Reference Desk Archives
The page you are currently viewing is an archive page. While you can leave answers for any questions shown below, please ask new questions on one of the current reference desk pages.


October 23[edit]

Win 7 on old computer?[edit]

A Pentium 4 1.7Ghz with 2GB ram and an ATI Radeon 9550. It meets the minimum requirements for Windows 7, but would it run well? Better than XP in terms of responsiveness? F (talk) 00:42, 23 October 2009 (UTC)[reply]

It would run well, but not as fast as XP. Windows 7 uses multi-core processors better than XP or Vista, but your P4 just has one core. The best results have been obtained running the 64-bit version of Windows 7 with more than 4 GB of RAM. For example, if you had two machines each with quad-core CPUs and with 8 GB of RAM running Windows XP and Windows 7 side by side, the Windows 7 machine would be faster. But, if you had two machines with your specs running Windows XP and Windows 7 side-by-side, then the XP machine would be faster.--Drknkn (talk) 02:03, 23 October 2009 (UTC)[reply]
I wouldn't. A Pentium 4 1.7Ghz is surprisingly old (1.6Ghz came out not long after Athlon broke the 1Ghz barrier, around 2001) and is really around the speed of a modern atom (perhaps even slower). --antilivedT | C | G 11:31, 23 October 2009 (UTC)[reply]
Part of it would also depend on your video card (if you have one). Windows Vista and Windows 7 have more graphic effects than Windows XP -- although the effects can be disabled.--Drknkn (talk) 12:05, 23 October 2009 (UTC)[reply]
The OP said he/she has a Radeon 9550. This is technically sufficient for Windows Aero if the card has sufficient RAM (at least 128mb) Nil Einne (talk) 20:55, 23 October 2009 (UTC)[reply]
The Windows 7 Upgrade Advisor might be useful. ---— Gadget850 (Ed) talk 22:33, 23 October 2009 (UTC)[reply]

Need urgent help[edit]

Can u give me a simple definition for SOFT-SOFTER HANDOFF

email me at (email removed) —Preceding unsigned comment added by 66.25.38.224 (talk) 07:38, 23 October 2009 (UTC)[reply]

First, I've removed your email; we only reply here. Second, you'll need to provide some context. Or you might want to look at Soft handover as a start. Google also looks like it has some results. --LarryMac | Talk 11:28, 23 October 2009 (UTC)[reply]

Nero Cover Designer[edit]

Is there any way to insert or import CD cover designs made by Nero Cover Designer into a blank Word document? The version installed in my PC is Nero 7. Thanks in advance! 117.194.229.183 (talk) 10:41, 23 October 2009 (UTC)[reply]

may i know about computer software —Preceding unsigned comment added by 122.162.160.125 (talk) 12:20, 23 October 2009 (UTC)[reply]

You mean my PC configurations? It's Windows XP, SP 2... 117.194.226.193 (talk) 12:27, 23 October 2009 (UTC)[reply]
I think the previous question was an ineptly added new section, not a response to the Nero question. I've created a separate section for it below, but left it here as well so that we don't lose context. --LarryMac | Talk 12:36, 23 October 2009 (UTC)[reply]
If you don't get a proper answer, you could try using "print screen" to copy the current screen image which can then be pasted anywhere you want. Astronaut (talk) 00:00, 24 October 2009 (UTC)[reply]

Computer Software[edit]

may i know about computer software —Preceding unsigned comment added by 122.162.160.125 (talk) 12:20, 23 October 2009 (UTC)[reply]

Please check our article software and feel free to post more specific questions. --LarryMac | Talk 12:36, 23 October 2009 (UTC)[reply]

program of c[edit]

i want to make a program for calculator in c code simply for working with very basic concepts,for that i made a code for simple calculator which perform only +,-./,*and%,which takes two operands and one operator as input. now i want to extend this code for sciencetific calculator, which perform all mathematical task,then how can i code for this please help.220.225.244.114 (talk) 17:02, 23 October 2009 (UTC)[reply]

(question moved from RD/L) --LarryMac | Talk 17:08, 23 October 2009 (UTC)[reply]

Writing a four-function calculator is easy, but writing an algebra-parsing, scientific calculator requires a lot more work (if you want to do it all by yourself). I did this for the first time when I was 16 and again this year. It is not at all impossible, but requires quite some effort. --Andreas Rejbrand (talk) 17:26, 23 October 2009 (UTC)[reply]
If you understand Javascript and are learning C, perhaps this will help. It allows a person to do a running calculation in a text field. -- kainaw 21:50, 23 October 2009 (UTC)[reply]
Well, it is definitely not algebra-parsing (not even nearly), but a bit more fancy than a simple four-function calculator... --Andreas Rejbrand (talk) 00:55, 24 October 2009 (UTC)[reply]
You should use Fortran for this kind of thing 86.54.83.134 (talk) 12:27, 24 October 2009 (UTC)[reply]
Hm? Such a program would be so trivial that any reasonable language would be equally good. --Tardis (talk) 22:29, 24 October 2009 (UTC)[reply]

The first step is really easy. In C++ (and, for brevity, without any kind of error checking or whatever):

  #include <stdio.h>
  #include <stdlib.h>
  int main ( int argc, char **argv )
  {
     // Usage:   myprog number operator number
     double x = atof ( argv[1] ) ;
     double y = atof ( argv[3] ) ;
     char c = argv[2][0] ;
     double result = 0.0 ;
     switch ( c )
     {
          case '+' : result = x + y ; break ;
          case '-' : result = x - y ; break ;
          case 'x' : result = x * y ; break ;
          case '/' : result = x / y ; break ;
     }
     printf ( "%f %c %f = %f\n", x, c, y, result ) ;
     return 0 ;
  }

...and on my Linux box:

  % ./a.out 123 + 456
  123.000000 + 456.000000 = 579.000000
  % ./a.out 3 x 3
  3.000000 x 3.000000 = 6.000000

But to extend this into a full-scale calculator requires that you think about whether it needs to be a command-line thing (as with the example above) or an interactive thing. Whether you use the calculator conventions of entering operations one at a time (so that 1+2x3 produces 9 and not 7 as conventional mathematics and some fancy graphing calculators would produce), or whether you just want to enter a "normal" piece of math and have it work as it looks like it should - with bracketed sub-expressions, etc - or whether you want to use something like the "reverse polish" notation that HP calculators use: 1 2 + 3 x

Not surprisingly - behaving like a cheap calculator does (1+2x3=9) is a lot easier than doing what the fancy calculators do. The simple approach lets you take the first number and save into a variable someplace - then read an operator and another number - apply that to the the thing you have remembered - then overwrite that location with the answer ready for the next operation.

However, if you want the standard order of operator precedence to work - with bracketing and the whole nine yards - then you have a considerably more complex problem to solve. Basically, the best way is to break the expression down into a "parse tree" so that 1+2*3 becomes:

                  *
                 / \
                +   3
               / \
              1   2

...then use a recursive descent process to evaluate the results. However, it would be complicated to explain that in more detail here.

SteveBaker (talk) 21:40, 25 October 2009 (UTC)[reply]

Well, on Linux you could just take the argument (or user input) and do a system call to bc. That'd be real simple. -- kainaw 23:31, 25 October 2009 (UTC)[reply]
3*3==6? --Tardis (talk) 19:14, 26 October 2009 (UTC)[reply]

Finally an answer from Yahoo[edit]

This [1] is where I asked a follow-up question.

I asked for more help and updated the situation, but the aboe question came up first.

The answer from Yahoo was simple: you can't do this.

Well, I used to be able to do it. And it still seems to work on Firefox, but I'm not changing browsers.

Anyway, I've figured out how to work around it. If I have sent an email or put an email in a folder, I had better not use the back button, and I had better never want to go back to any particular email I sent myself. Actually, with my own computer, I suppose I could start text files with what I sent myself from other computers, but then I'd have an even harder time finding anything. It was always so simple: go to Yahoo (or whatever other email service I go to on other computers), click on what email contains what I want, or if I don't see it, do a search for it. My mind just doesn't work any other way.Vchimpanzee · talk · contributions · 17:17, 23 October 2009 (UTC)[reply]

I still recommend that you try another free web-based e-mail service, like GMail. Another alternative that just occurred to me: Are you aware of the use of browser tabs, or multiple browser windows? If you control-click on any link in Firefox, you'll notice a new "tab" open up at the top of the browser. You can now click the tabs to go back and forth. This is much more stable than relying on the "back" button; it is basically the same as having several Firefox browsers open, each aimed at a different web page. (A new tab normally starts up with no history remembered, but you can create it with a complete copy of the "parent tab"'s history if you have installed and choose to use the "Duplicate Tab" Firefox addon.) Anyway, keeping many tabs or new Firefox windows open may be a way for you to juggle the many e-mail windows that you seem to want to juggle. Jerry Pournelle says he routinely keeps several hundred tabs open — though he has taken it to an extreme and I wouldn't recommend more than 20 or 30 or 40. PS: The claim "My mind doesn't work any other way" is a feeble excuse; obviously you can learn new things in this life. Comet Tuttle (talk) 17:46, 23 October 2009 (UTC)[reply]
Tabbing is available in Internet Explorer as well as Firefox. —Akrabbimtalk 17:49, 23 October 2009 (UTC)[reply]

I'm not saying I couldn't, but Yahoo could make this work since it did work at one time. I also don't like tabs, or Firefox. I also don't like Gmail. What I normally do is open a new window, but at some point that can cause problems too, because there will be too many. The solution for this Yahoo problem, when I need to look up something new, will obviously be to open a new window as I won't have the ability to go back within the one I am already in. To prevent the problem, I will have to close it when I'm through. When I don't have to go back in Yahoo email, I will have to go forward with whatever buttons I can see.

If I learn too much new stuff, I start forgetting other stuff. Obviously I had to go through a lot of learning when I got a computer. But I can only take in so much, and once I've learned a way to do things, that's how I do them.Vchimpanzee · talk · contributions · 18:03, 23 October 2009 (UTC)[reply]

Which I, personally, think is fine. The machine is a tool—use it in the way it works for you. Not everybody wants to re-learn everything every six months, and frankly, they shouldn't have to in order to do basic things.
Anyway, it does sound like something weird on Yahoo's end, not yours. There are a lot of ways to break the "back" button implementation with either Javascript or forms (data) submission. Ideally a web developer would make it so that these browser functions are preserved nonetheless (because we expect the "back" button to take us "back", sensibly enough), but many do not, especially with complicated web applications like e-mail. --98.217.71.237 (talk) 18:11, 23 October 2009 (UTC)[reply]
I agree with everything 98 just said here, which is why, Vchimpanzee, you should use some e-mail service other than Yahoo. If the tool is broken, use another tool. Comet Tuttle (talk) 19:03, 23 October 2009 (UTC)[reply]
It works if I just take precautions. Fastmail is the only service without problems, except it doesn't have enough storage. One thing they do (now) that is neat is they will let you sign back in if all you did was use it as a notepad and ended up getting signed out, and your email still gets sent.
Thanks everyone.Vchimpanzee · talk · contributions · 19:20, 23 October 2009 (UTC)[reply]

How to display list of files on a web server?[edit]

How can I know which files are stored in a domain xy.com/? Quest09 (talk) 17:53, 23 October 2009 (UTC)[reply]

Generally, no. The only conditions you can are: 1. if you have FTP access to the domain (which you probably don't, since you are asking), or 2. if the site owner has made the file listing available to you (which they probably haven't, since you are asking). You could brute-force it—run a script that looked for xy.com/a, xy.com/b, etc. But otherwise... if a file isn't linked to from somewhere else, it is essentially hidden by obscurity, which is bad security (it doesn't really limit access by anything other than being seemingly unknown, and there are a lot of ways that something thus "hidden" can become known) but a generally effective deterrent against casual browsing. (It is part of the Deep Web—out there, but not indexed or easy to find.) --98.217.71.237 (talk) 18:04, 23 October 2009 (UTC)[reply]
I use sitemaps with my sites. The robots.txt also sometimes gives information about a site. Resource directors may just display their contents as an index. But yes in general a site is not a collection of files that you can download. A large number have a database behind them or generate content in response to cookies or even the characteristics of your browser. You wouldn't like Wikipedia to give out all the user passwords for instance would you? Dmcq (talk) 18:54, 23 October 2009 (UTC)[reply]
wget is a *nix utility that can help you find which publicly available files are at a particular website. Comet Tuttle (talk) 19:05, 23 October 2009 (UTC)[reply]
It will let you download all files that are linked to from other files (make a mirror of the site), but not files which are nonetheless accessible if you know the URL but otherwise hidden. --Mr.98 (talk) 19:08, 23 October 2009 (UTC)[reply]

BIOS history[edit]

Who invented the BIOS and when? I could not find any sources about that anywhere. --President of Internets (talk) 19:19, 23 October 2009 (UTC)[reply]

Looks like our BIOS article needs a History section. The Phoenix Technologies article talks about the first BIOS for IBM PC clones to be created outside IBM. Comet Tuttle (talk) 19:37, 23 October 2009 (UTC)[reply]
And inside IBM? --President of Internets (talk) 19:46, 23 October 2009 (UTC)[reply]
Looks like Gary Kildall, father of CP/M, invented the BIOS, and it didn't have anything to do with the IBM PC. Comet Tuttle (talk) 20:02, 23 October 2009 (UTC)[reply]
Not exactly my area of expertise but my guess is the answer to this depends on what you mean by BIOS. According to our article, CP/M was the first to have something it called a BIOS. My guess would be that other earlier computers may have had something similar even if they didn't call it a BIOS. If you want to know 'who invented the term' it may be someone in CP/M although I wouldn't rely on our article for that. It is unsourced and it's possible the term was used in research papers, white papers or whatever before it appeared in CP/M computers Nil Einne (talk) 20:50, 23 October 2009 (UTC)[reply]
In looking up the OP's question it appears that Kildall invented the first one, as a response to CP/M being licensed by numerous hardware vendors. Comet Tuttle (talk) 20:52, 23 October 2009 (UTC)[reply]
This really comes down to what you define BIOS to be. Is it the first little chip that was specifically called "BIOS", or is it the first device that provided boot firmware as an interface for an operating system. If you use the first definition, the first BIOS that I know of is in the CP/M. If you use the second definition, the first boot firmware with operating system that I know of is LINC. There are probably older BIOSs for both definitions. -- kainaw 21:36, 23 October 2009 (UTC)[reply]

CP/M was certainly the first microprocessor OS to have a BIOS. The reason was twofold:

  • Firstly, hardware back then wasn't as standardized as it is these days and CP/M required all of the machine-specific parts of the OS (reading the disk drives and keyboard and writing to the disk, screen and printer) to be done by the "Basic Input/Output System" or BIOS. The BIOS specification was clearly documented and you could write your own (as I did on two occasions for computers I'd designed and built myself). There were no "device drivers" in the OS. When CP/M needed to write to disk - it called that function in the BIOS ROM and didn't care what exact disk format you used or how the disk controller chip was accessed.
  • Secondly, the system was designed to boot from floppy disk (that's how you bought CP/M) so there had to be some software in ROM that could handle the bootstrapping process - and that too fell to the BIOS.

When CP/M became CP/M-86 and Microsoft cloned it to make the first version of PC-DOS, both DOS and CP/M-86 used the same BIOS design. The BIOS has evolved since then but it's still essentially the same thing. So the BIOS in a modern PC, essentially IS the CP/M BIOS. However, over time, the function of the BIOS has changed. Because you can plug (for example) any manufacturer's graphics card into any motherboard - it's become impractical to put every screen driver into every BIOS ROM. So the BIOS does the minimum possible to get the OS into memory - and the OS relies on drivers loaded from disk to do the work. Once the PC has booted, the BIOS has no further function anymore.

Similar boot ROM's must have existed for mainframe and mini-computers prior to the CP/M BIOS - but I'm not aware of them ever being "open" in the way that CP/M's was - and I doubt that device drivers were kept in ROM either - so those would have been more like a modern PC's BIOS - nothing more than a boot ROM.

Other small computers of the CP/M era generally had all of their operating system software (such as it was) in ROM - so the issue of cross-compatibility didn't crop up. Your Apple ][, PET, TRS-80 or whatever had BASIC in ROM - and that was that. They didn't have to boot from floppy - and the ROM software was custom-written for each type of machine with little or no goal of compatibility. Hence, no need for a BIOS.

CP/M was really the first - and quite possibly the last - truly portable OS. Elegant in it's way - and mind-numbingly simple!

So, I suppose Gary Kildall gets the credit for the first thing called a 'BIOS' - and all modern PC BIOS's are descended from it - but he didn't invent the concept of a boot-ROM - which is really all that a BIOS is these days. I have no clue who invented that. SteveBaker (talk) 21:16, 25 October 2009 (UTC)[reply]

That's all fascinating, but based on a completely untrue premise, and typically lacking in actual references. "MS-DOS was a renamed form of 86-DOS (informally known as the Quick-and-Dirty Operating System or Q-DOS) owned by Seattle Computer Products, written by Tim Paterson. Microsoft needed an operating system for the then-new Intel 8086 but it had none available, so it licensed 86-DOS and released a version of it as MS-DOS 1.0." For more detail, see Ms-dos#History. --LarryMac | Talk 11:56, 26 October 2009 (UTC)[reply]
... but those of us who were using CP/M when Bill Gates was still a schoolboy know where DOS had its origins ;-) though I suppose there are not many different ways of structuring an operating system, so some similarities were inevitable. By the way, Research Machines microcomputers booted CP/M from disc, then loaded application software, long before DOS. Dbfirs 17:14, 26 October 2009 (UTC)[reply]

Python[edit]

In Python, what is the simplest way to detect a keypress (which key doesn't matter; all I'm concerned about is that a key was pressed)? If it's material to the question, I use Ubuntu 9.04. Lucas Brown 42 23:17, 23 October 2009 (UTC)

Use curses if you're talking about a console program. (See the Python documentation for its wrapper for that library; you might need a separate version for Windows.) If you're talking about a graphical program, look for "key events"; if you don't know how to start a GUI, see the tkinter module. --Tardis (talk) 22:39, 24 October 2009 (UTC)[reply]

Dell laptop trackpad forgets its settings.[edit]

We have two Dell laptops and a similar thing is happening to both. My wife has a D600. The "tapping" feature on the trackpad, which registers a "click" when you tap the pad, will just stop working. To get it back you need to open the mouse control panel, go in and turn off "tapping" and then turn it back on.

I have an inspiron 700m and the trackpad will just forget that I have the scrolling feature turned on, where the rightmost centimeter of the trackpad is the scrollbar. In my case all I need to do is open the mouse control panel and press the "OK" button at the bottom without changing anything and it works. I'll be happy to provide any more detailed info about my system if it would help in solving the problem. mislih 23:44, 23 October 2009 (UTC)[reply]

Not that this is helpful in any way but moral support, but i have a latitude 630 (through my employer, still running XP) and i've had difficulties trying to keep the trackpad turned off, because i use the little joystick thingie; there's that nice utility thingie that comes up via the taskbar or control panel and allows you to enable or disable either device, but when i set the trackpad and its buttons to disable, it still reacts to my palm moving over it or over the buttons. i haven't talked to dell about it, because with the business lease i think we're responsible for our own service. i just set the sensitivity of the pad and buttons to minimum and that works pretty well (which is kind of silly when the settings for both are also "disabled" but what the heck). so i wonder if there's some generic bug in that driver. funny thing is i don't remember this being a problem until fairly recently. Gzuckier (talk) 23:53, 23 October 2009 (UTC)[reply]
I had a Dell laptop that would not let me get rid of the tapping feature — this was some time ago — and I had to hunt down and install the Synaptics driver that powered the Dell's trackpad. It had its own Control Panel that had plenty of configuration options. Maybe it'll do a better job of remembering what you order it to do, if you can find a Synaptics driver for your touchpad. (Assuming Dell still uses Synaptics as the supplier.) Comet Tuttle (talk) 00:04, 24 October 2009 (UTC)[reply]