There is no data view readily available showing you contacts currently in journeys. You could engage with Salesforce professional service to have one built. This will allow you to query exactly who is in which journey and since what date.
Not having such a data view, you have only a single solution left, and it is working with Update Contact Activities, writing journey status in a data extension. Here is a good example of how this can be used. You should place an Update Contact Activity immediately after the entry, and just before the final wait step prior to exit in every branch.
Please be aware, that in cases where a contact exits the journey prematurely, due to either meeting the goal or exit criteria, he will not pass the final Update Contact Activity, and hence seem to be still within a journey. A housekeeping process in automation studio should be put in place, looking for contacts who seem to be in a specific journey for more than the expected duration of it, and set their status to exited.
You will be able to query the data extension updated by these activities, and use this info to exclude specific contacts from entering other journeys with Data Extension entry events.