Take the 2-minute tour ×
English Language & Usage Stack Exchange is a question and answer site for linguists, etymologists, and serious English language enthusiasts. It's 100% free, no registration required.

Which preposition should be used in the following sentence?

All of my programs are running in/on a 16-core machine.

Google shows both options.

share|improve this question

3 Answers 3

up vote 15 down vote accepted

Programs run on, and not in, a computer or machine.

  • I can run Windows on my mac using Boot Camp.
  • Memory-intensive applications run on my multicore monster of a machine like a dream.

Consider these sentences, though:

  • I run all my programs in Windows on my mac.
  • Office 2004 won't run in Snow Leopard, will it?

Generally, software to hardware takes on, while software to software takes in.

share|improve this answer
2  
+1 Better defined than my answer. –  Daniel Aug 27 '11 at 19:55
8  
I think this comes from the metaphor whereby hardware forms a "platform" for software, whereas an OS creates an "environment". –  Karl Knechtel Aug 27 '11 at 20:22
    
@Knechtel: Excellent! Environment came into my head for software, but I couldn't think of the equivalent metaphor for hardware, so I simply decided to leave that out. Great point! –  Jimi Oke Aug 27 '11 at 20:29
2  
I'm not so sure about the on/in thing; Most games don't work on Linux sounds fine to me. –  Javier Badia Aug 28 '11 at 0:11
    
@Javier: I agree that both on and in sound fine when talking about OSes. –  Tsuyoshi Ito Aug 28 '11 at 0:31

On. Programs running on a computer is more common (though both are used), and sounds more natural to my ear. The ratio seems to be about 4:1 in favor of on, according to Google, and even greater in favor of on, according to Ngrams.

share|improve this answer
1  
Thanks for the Ngrams link. –  samarasa Aug 27 '11 at 23:54

Actually my first reaction is that of on as opposed to in. However taking this into a more general purpose arena.

Machines (both software and hardware) are models of abstract processes or functions. A simple machine encodes a simple function (look at a broom for example). Where are computer enocdes many complex functions.

So looking at it from this perspective, would the execution of these processes (programs) not be embodied within the model as opposed to on the model?

Therefore I must say that both are equally valid unless deeper specificity is required.

share|improve this answer
2  
This does not make sense to me at all. What do you mean by “models of abstract processes”? Machines and processes are different things. Moreover, usually a machine is a machine and not a model of anything, unless you are talking about computational models in theoretical computer science such as Turing machines. –  Tsuyoshi Ito Aug 28 '11 at 0:37
1  
I am. A machine imo is just a substrate or surface upon which the a computational model may be executed. I can see how you say machines and processes are different. However the purpose of any machine is execute a mathematical function and as such really is the approximation to a process. –  Preet Sangha Dec 1 '11 at 10:31
    
@PreetSangha Your comment gets a +1 for the elucidation, without which the answer cannot be convincing. –  Kris Dec 1 '11 at 11:00
    
-1 This is largely irrelevant (for language and usage) and mostly overgeneralized. Also, "machines are models" is such narrow view, that from linguistic aspect you can call it outright false. Then, machines do not "encode" a function, nor does using a metaphor such as "surface or substrate" help with clarifying the choice of propositions. –  Unreason Dec 1 '11 at 14:47
    
How can ' is such narrow view, that from linguistic aspect you can call it outright false' be considered anything but a gross oversimplification? Ho hum –  Preet Sangha Dec 1 '11 at 19:09

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.