As a contrast to “distributed”, “centralized” means one computer. Sometimes (not so much nowadays) this may be a mainframe with multiple
“dumb” terminals in which all the work happens on the mainframe and the terminals just take in inputs and display outputs. If the terminals aren’t “dumb”, meaning they can do non-trivial computation of their own (and, in particular, maintain state), then this is essentially an example of a distributed, client-server system. Your description of “distributed” corresponds to a
peer-to-peer system which is but one form of a distributed system. Admittedly, there has been a level shift in the terms, and/or they are applied at a logical level. For example, Facebook would be considered a “centralized” system insofar as it’s controlled by a single entity, as opposed to
Diaspora which is decentralized. I think it has become popular to use the term “distributed” when “decentralized” may be a better term. Of course, Facebook has many servers spread across the world, and so it’s infrastructure is very much distributed. Similarly, a single data center for Facebook may logically be a single “server” but internally is a distributed system as well consisting of hundreds of physical servers.
Wikipedia does a pretty good job of outlining the key characteristics of a distributed system from a theoretical perspective:
Three significant characteristics of distributed systems are: concurrency of components, lack of a global clock, and independent failure of components.
Though I would add to that list that the communication medium is unreliable. The focus of distributed computing, in both theory and practice, is dealing with various forms of failure. Wikipedia’s use of the more generic term “component” suggest that this notion can be applied at different levels. For example, you can fruitfully think of the various sub-systems of a single computer (on the motherboard) as forming a distributed system if your focus is on timing and failure issues. Even single multi-core CPUs are becoming more and more like distributed systems with the cores as the “components”.