Wikipedia:Reference desk/Archives/Computing/2015 May 1

Computing desk
< April 30 << Apr | May | Jun >> May 2 >
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.


May 1 edit

The ultimate Antivirus edit

Hi there,
Of course I am speaking about theoretical one, but still I do have some questions about it.
Because in a file with a size of k, can be only maximum of   potential distinct programs, an antivirus with roughly the second volume should detect ultimately between to a virus to a non-virus.
Assuming that most of the viruses behave the same,and the computing technologies grows exponentially, leading to the ultimate question, will ever be an antivirus, that will distinguish the whole viruses up to a certain volume or beyond? — Preceding unsigned comment added by Exx8 (talkcontribs) 14:15, 1 May 2015 (UTC)[reply]

So, let's imagine that programs are at most 1 megabyte long...that's VERY conservative...1Mbyte = 8Mbits, so there are 28,000,000 programs of that length for your antivirus to keep track of. Sadly, there are only around 2100 fundamental particles in the known universe...so there isn't remotely any possibility of doing what you say. Worse still, the time it would take to read the 2100th bit of that enormous memory would be a few billion years. Worse still, you're going to suffer from the Halting problem...you can't write a program to determine whether another program halts or not in a finite amount of time...and for the same reason, you can't write a program that'll determine whether some other program will eventually do something undesirable. So you simply can't look at an arbitrary program with any conceivable tool and decide whether it's a virus or not. It's flat out impossible.
Hence, the answer is "No"...not in practice, not even in theory, not even as a 'thought experiment'.
Worse still, most viruses do things like writing self-modifying code - and downloading data from external sources such as the Internet. So the static appearance of a virus could be no different than (say) a web browser - and only becomes evil when the data it reads from someplace in (say) Russia, China or Nigeria turns out to be in some way evil. I could easily write a program that seems entirely benign against every conceivable test - until the data table it grabs from some remote server changes and it suddenly turns evil. No static test can discover that. There are other variations too - a situation where programs A and B are each entirely benign until both of them are installed at once, and then the interactions between them becomes evil.
SteveBaker (talk) 04:17, 2 May 2015 (UTC)[reply]

Can one plug a microphone in the headphone jack of an iPhone 3gs and record with it? edit

If I plugged a high quality condenser mic with a compatible 3.5mm jack into the headphones port of an iPhone 3gs and started recording with the Voice Memos app that comes with it in the Utilities folder along with Calculator etc., would the recorder take the input coming from the microphone? 20.137.2.50 (talk) 15:02, 1 May 2015 (UTC)[reply]

The trick is the "compatible" part. My understanding is that not necessarily any 3.5mm jacked mic would work. The 3gs has a jack that is designed to send left/right audio, and capture mono audio all from a mic, all in the same jack. So if you had a headset with a 3.5mm jack, I'm confident it would work. For a mic only, it's less clear. I would just try it and see, you are unlikely to hurt anything. SemanticMantis (talk) 15:45, 1 May 2015 (UTC)[reply]
Note: Try by keeping the mic volume low. The input and output may create an effect. Always remember, the output should always be twice/ten times more than the input. -- Mr. Prophet (talk) 18:46, 1 May 2015 (UTC)[reply]
There should be adaptors to split a 4-way headphone/mic connector to separate headphone/mic connectors. If you know one end of a soldering iron from the other, they aren't difficult to make. LongHairedFop (talk) 12:43, 2 May 2015 (UTC)[reply]
The Iphone heaset socket pinout is, from tip to base: left audio out, right audio out, ground, microphone. See this image - http://i.stack.imgur.com/8rFy3.jpg -- Roger (Dodger67) (talk) 13:55, 6 May 2015 (UTC)[reply]

Email addresses' peculiarities edit

Why are /,=, !, spaces, and even @ (if double brackets are used) allowed in names of email users? Why weren't emails limited to alphanumeric ASCII characters, periods and hyphens? Does anyone needs these symbols? How common are they anyway? I don't have any email containing those symbols in my address book. Couldn't they have implemented the same restrictions to user names that are valid for URL names? --Bickeyboard (talk) 15:29, 1 May 2015 (UTC)[reply]

An important thing to remember about "internet" email is that it didn't start with a clean slate. It had to interconnect existing systems (using a variety of environments) and run over existing networks (using a variety of addressing schemes). It wasn't just unix(alike) things talking to one another over TCP/IP with DNS names. If memory serves, UUCPmail addresses could look like foo!bar!buz, and VMS usernames could be something like JENNY::GEOLOGY. The greybeards of the early Internet didn't get to just impose a canonical foo.bar@biz.edu format, they had to work with what they had, and had to worry about how to unambiguously translate one wacky format into another, and back again. Email address#Validation and verification still bears the scars of this enforced flexibility, like an over-ambitious yoga student. -- Finlay McWalterTalk 15:51, 1 May 2015 (UTC)[reply]
I like that analogy. I may have to steal that sometime. Matt Deres (talk) 12:18, 2 May 2015 (UTC) [reply]
Also keep in mind that the A in ASCII stands for American. If your name was Θεόδωρος Αγγελόπουλος or Влади́мир Кра́мник or 郭晶晶, or even Ólafur Ragnar Grímsson for that matter, you might get annoyed if you were told it had to appear in your email address in ASCII. --174.88.134.161 (talk) 19:06, 1 May 2015 (UTC)[reply]
I don't get what you are trying to say. No matter what your name is, it has to appear in ASCII. The standard is limited to almost the whole ASCII. I was asking why is it not limited more, and excluding things like @. --Llaanngg (talk) 13:58, 2 May 2015 (UTC)[reply]
My first Net address was well!dasher@apple.com (later dasher@well.sf.ca.us). You may be able to guess what the bang meant there. —Tamfang (talk) 02:50, 2 May 2015 (UTC)[reply]
Yeah - maybe. Back in the very olden days, when we had some measure of networking via usenet - email had to be routed explicitly through a chain of machines using '!' as the path separator - so my email address might be: steve!mycomputer!anothercomputer!another-well-known-computer - and I'm guessing you were on the cusp of that change-over to the modern Internet approach. SteveBaker (talk) 15:11, 2 May 2015 (UTC)[reply]
See UUCP for our article on bang paths and similar historical peculiarities. Tevildo (talk) 10:04, 3 May 2015 (UTC)[reply]

microphone related edit

I have purchased a laptop Latitude Intel (R) Core(TM) i5-2520M 2.50 GHz. I have installed windows 8 on it. But I can not detect microphone in it. Is this series has built in mic or not. When I check its specifications on net, in front of microphone ,:Line in & out in 1, is written. what is the meaning of this, is their is only a slot for it, if so tell me the type of microphone I will use so that whole my family can talk and listen on it 39.35.246.171 (talk) 19:16, 1 May 2015 (UTC)[reply]

Maybe it has an or no installed mic. The mic jack just makes you use an external mic. Check the device mananger first to see if all audio devices have drivers installed. Then check the audio mixer for muted devices, volume level settings and selected audio devices. Note, audio applications also have volume level settings. If everything is ok, google for the data sheet or product specification. If it does not provide this information, google for service manuals and pictures of your computer to identify if a internal mic is installed. --Hans Haase (有问题吗) 20:15, 1 May 2015 (UTC)[reply]
Mostlikely electret mics are used. Some computers can activate and deactivate the dc power to supply the mic. Dynamic mics often supply a to low audio level. You also may refer the audio adapters spacification. --Hans Haase (有问题吗) 20:21, 1 May 2015 (UTC)[reply]
If the above fails, you can purchase a cheap mic with a 3.5mm jack. Plug it into the port with the microphone symbol. Windows should automatically detect it. Justin15w (talk)
In case your microphone jack isn't labelled with text or a microphone symbol, it may be color coded (pink). Or, you could use the line-in jack (blue): [1]. (I read your post to say there's no built-in microphone or microphone jack, but that you can use the line-in jack instead.) StuRat (talk) 20:35, 1 May 2015 (UTC)[reply]

Pandora Console edit

Does any one know were I could find a Pandora gaming system? I am a calector and would love to get my hands on one of these.--Joshua griff (talk) 19:59, 1 May 2015 (UTC)[reply]

These days, "OpenPandora" systems can be bought on eBay - I see one there going for $320. http://boards.openpandora.org/page/homepage.html is the official site, it mentions a US distributor, but the link is dead. The German distributor is at http://www.dragonbox.de/en/ - and they are selling the handheld for 226 to 375 euro for a hand-held of various speeds - and a version that plugs into your TV for 180 to 222 euro. Bare circuit boards are 152 to 182 euro. SteveBaker (talk) 03:59, 2 May 2015 (UTC)[reply]

".local" URLs. edit

I have half a dozen Ubuntu linux computers on my home network - one of them is called "leonardo" and it's a BeagleBone Black that hosts a small website that I can access from other machines locally.

All of my computers can reach it via it's IP address - 192.168.1.8...but because my wireless router uses DHCP, that changes from time to time. However, on *SOME* of my computers, I can just point my browser to 'http://leonardo.local' and that works great. However, other machines are unable to find that address. However, on another machine, I can 'ping leonardo.local' and get a response - but whenever I type 'leonardo.local' into my browser (Chrome, for example) - I get a Google search result for those words and not access to the website?!

I have a high-end NetGear router - leonardo is connected over a wired link, some other machines are wireless, others are also wired - there doesn't seem to be a pattern there.

Any idea what's going on here?

SteveBaker (talk) 21:45, 1 May 2015 (UTC)[reply]

.local lookup can be implemented on some machines with zeroconf / bonjour. -- Finlay McWalterTalk 21:51, 1 May 2015 (UTC)[reply]
That code has to run on the machine being referred to. Under Ubuntu Linux, the "avahi-daemon" program provides the ".local" service - and it's installed by default. I don't think that's the problem because:
  1. *SOME* of the machines on the network can reach it via the .local URL...so avahi must be working.
  2. I can see that process is running if I ssh into the BeagleBone.
# ps -ef | grep avahi
avahi      433     1  0 May01 ?        00:00:01 avahi-daemon: running [leonardo.local]
avahi      434   433  0 May01 ?        00:00:00 avahi-daemon: chroot helper
The problem would seem to be in the client machines.
  • My desktop Ubuntu machine (with a wired link to the router) can ping the .local address, but can't reach it in either chrome or firefox via .local - although if I type in the IP address, I can reach it just fine.
  • A WiFi-connected Ubuntu netbook can both ping the .local URL and reach it in-browser in chrome.
  • A WiFi-connected Ubuntu laptop can neither ping *NOR* reach the .local URL in-browser, but can still reach it using it's IP address.
All three machines are running the latest Ubuntu - and are fully updated.
WTF?! SteveBaker (talk) 03:47, 2 May 2015 (UTC)[reply]
Without solving the mystery around the resolution of leonardo.local, you can solve your problem by configuring the DHCP server to always assign the same IP address to leonardo. Alternatively, you can configure leonardo to use a static (local) IP address outside the pool that the DHCP server dynamically assign to its clients. BTW, how are your machines configured to resolve leonardo.local? Do they all use the same local DNS server? --173.49.12.157 (talk) 04:01, 2 May 2015 (UTC)[reply]
In theory, yes...but even if that was the problem, how come (on one machine) I can 'ping' the .local address but not see it in the browser? SteveBaker (talk) 15:08, 2 May 2015 (UTC)[reply]
Chrome apparently has its own DNS cache (see this reference). If leonardo's IP address had changed since Chrome last cached it, it could explain some of your observations. --173.49.12.157 (talk) 04:13, 2 May 2015 (UTC)[reply]
Ah...that might explain how I could ping (using the default DNS) but not browse (using chromes' internal DNS cache). It's likely that leonardo's address changes every day when I power it up...so Chrome may well have cached an old address. I tried the advice to go to chrome://net-internals/#dns and clear Chromes' internal cache. Now, instead of getting a Google search result for leonardo.local, and to throw me off into another rabbit-hole, I get a Time-Warner cable catch-all search-results page. This is especially annoying because I've gone through the process to opt-out of this "service" and still it intervenes...I've spent HOURS on the phone with TWC trying to explain that they have a bug in their system - but their customer service people are stuck on the "But why wouldn't you want that?" thing. Argh! Anyway, I don't think this is the problem because one of my machines can get to leonardo via chrome reliably. SteveBaker (talk) 15:08, 2 May 2015 (UTC)[reply]
Do you have a local DNS server set up that can resolve names in the .local domain? If you don't, I'd recommend looking into setting up one. The simplest I can think of is dnsmasq. It can serve as a DNS server and a DHCP server. It resolves names using the /etc/hosts file on the host, so the syntax for simple DNS records is very simple. For names that are not in /etc/hosts, it uses an upstream DNS server. (Disclosure: I've looked into setting up a local DNS server before and dnsmasq was the simplest solution I found, but things happened and I ended up not having to implement it, so I haven't actually used dnsmaq.) Good luck. --173.49.12.157 (talk) 15:41, 2 May 2015 (UTC)[reply]
Regarding your ISP intercepting and redirecting failed DNS lookups to their server, that's a potential security threat. Your browsers and other HTTP clients are sending URL paths & query parameters and HTTP headers--not meant for them--to their server. If there's anything sensitive among those, it might get captured and saved on their server. You can do some experiment and find out what address(es) their DNS server returns for unresolvable domains, and block those addresses (say by configuring a router to send traffic to those addresses to a hole.) --173.49.12.157 (talk) 16:00, 2 May 2015 (UTC)[reply]
Your router's DHCP settings might have an option to set a fixed IP address to devices based on their MAC address. When set, the device's address will not change; however a laptop might have a different address for its wired and wireless network card. If the device is connected to another network then it will have another address. The other way is to go into each device's own network settings, and assign a manual fixed address, at the top end of the DHCP range. However, this may cause problems if you connect the device to another network. LongHairedFop (talk) 12:41, 2 May 2015 (UTC)[reply]
Yeah - that's a possibility that I'm sure would hypothetically work - but for various complicated reasons, I don't want to do that...I actually *NEED* the .local address. (leonardo is really an embedded controller for a laser cutter...which happens to be a BeagleBone running Ubuntu linux). SteveBaker (talk) 15:08, 2 May 2015 (UTC)[reply]
Once you got that working, you can edit the /etc/hosts.txt file to give a DNS name for each IP address. LongHairedFop (talk) 17:47, 2 May 2015 (UTC)[reply]
Possibly a silly question but, in your browser, have you tried typing http://lenoardo.local/ instead of just "leonardo.local"? You only wrote "leonardo.local" in your question. Vespine (talk) 01:11, 4 May 2015 (UTC)[reply]
Nope - I tried that, adding http:// doesn't make a difference - neither does adding 'www.'. SteveBaker (talk) 05:03, 4 May 2015 (UTC)[reply]
Also, when you use a computer that DOES work, does leonardo.local redirect you to a webpage? Something like home.html or similar? If you take that whole link does it work on the computer where just leonardo.local fails? Vespine (talk) 01:14, 4 May 2015 (UTC)[reply]
Yeah - there is a Python program running that uses the 'bottle' library server code to serve up the page. Explicitly asking for index.html makes no difference...and recall that I can get to the web page with a URL of just '192.168.1.8' (or whatever the IP address is toda). SteveBaker (talk) 05:03, 4 May 2015 (UTC)[reply]
I do this kind of thing for a living, but I support mostly windows infrastructure with DNS so not so great with the minutia of mDNS. If it were me, the next step would be install Fiddler_(software) to see what's going on. Vespine (talk) 05:33, 4 May 2015 (UTC)[reply]