Based on the language Oberon we propose a unified framework for concurrent, object-oriented programming. Inspired by simulation, the idea is to regard objects as processes in contrast with the more common approach treating processes as objects. More concretely, our framework extends the original Oberon language by four new concepts: (a) Object-centered access protection, (b) object-local activity control, (c) system-guarded assertions and (d) preemptive priority scheduling. (a) and (b) are expressed syntactically by upgraded record types, (c) by a passivation/activation mechanism and (d) by a priority option. None of the conventional facilities like semaphores, locks, critical regions, signals, channels, rendez-vous, forks etc. are primitive constructs in our framework. Currently, an implementation of a compiler, a corresponding runtime kernel and a non-blocking local server exists for native Intel architectures.