I'm thinking about Python and C/C++ combination to replace the original concept about OSGi + Java + JNI + C/C++ in our SW architecture.
I definitely don't need to replace all features of such OSGi frameworks as Felix or Equinox.
What I really will need in my Python code:

Enabler of modularity for the application layer
Component-based framework for applications
Central registry of services/components 
Very lightweight framework, it will run on embedded devices (though pretty enough of RAM)

Can you please advise on such Python framework?
I think much of what OSGi offers is closely related to the architecture of Java: its class loaders and type safety. Implementing a service registry should not be too hard but managing it with the accuracy of OSGi will be virtually impossible. Obviously the power of multiple namespace that OSGi offers will not work in Python unless you move the modules into separate processes which will require more expensive inter process communication for inter module communication. You could start with Apache Celix, which is native based but I have similar doubts about its utility since native code does not provide a lot of information about its dependencies.
A more general solution is the original idea of Universal OSGi. In this model you keep the OSGi framework as it is for the deployment and management. However, you create handler bundles that can map a bundle written with other languages. E.g. a Python handler or C++ native. The handlers would map a native service registry model to the OSGi service registry.  This is surprisingly easy to do since the OSGi service registry is properly evented. The native handlers would map the bundle events like start/stop to instruct the operating system to start/stop the native code.
Python framework as an alternative for "Java + OSGi" combination