Abstract:
A method of controlling access to devices in a vehicle communications network and regulating access of an application to devices required for the application. Priorities are issued for this access. A driver manager makes the required drivers for operating and controlling the individual devices available to the application. A resource manager allocates or assigns the devices to a requesting application in accordance with their priority and availability.

Description:
FIELD OF THE INVENTION 
   The present invention relates to a method of controlling access to devices in a vehicle communications network. 
   BACKGROUND INFORMATION 
   Vehicle communications networks may be used in a vehicle to interlink various components from the multimedia area. A user may start an application on a device which may require additional devices for its execution. The devices connected to the vehicle communications network may be placed at various locations in the motor vehicle. 
   SUMMARY OF THE INVENTION 
   An exemplary method according to the present invention for controlling access to devices in a vehicle communications network may provide that access to the devices that are connected to the vehicle communications network be controlled according to priorities. Through an exemplary system of the exemplary method according to the present invention, the interaction of the driver manager, the resource manager, and the application may be regulated. By issuing priorities, applications may be ranked according to their importance. Therefore, some applications may gain a preference over other applications in allocation of the devices. 
   The devices requested by the application may be allocated to that application for only a certain period of time. This may prevent an application from claiming a resource, i.e., a device, for an excessively long period of time if other applications that operate with the same priority for the devices also require access to these devices. This may permit a higher degree of fairness for the various applications. 
   In addition, an application requesting devices having a higher priority than an application using these devices at the moment may receive these devices allocated to it so that the higher priority prevails. This may be desirable in emergency situations in particular or when warnings are to be issued to the driver. For example, a traffic message may be received by a radio receiver in the vehicle, the radio receiver being connected to the vehicle communications network, while the driver is listening to music from a compact disc on a CD player at the moment, so that the CD player is at the moment occupying the audio amplifier together with the loudspeaker as a device. However, the traffic message may then request the audio amplifier together with the loudspeaker with a higher priority than the CD player. Therefore, the application controlling the CD player may be interrupted, so that the audio amplifier and the loudspeaker are available for the traffic message. 
   The application may be assigned to an application layer, while the driver manager may be assigned to the Common Interface for Automotive Networks (CIAN). This may yield an allocation which may permit a standardized interface definition between these layers. The various applications allocated to the application layer may then access the driver manager in the same manner. 
   One application may be able to call up another application which is also available on another device, if required. Drivers and resources may then be allocated according to the two applications. 
   The IEEE 1394 bus, also referred to as a firewall, may be used as the bus system. It may be suitable in particular for connecting multimedia components. 
   The drivers may be either already stored on the devices together with the applications, or they may be loaded from other devices such as a database, or they may be generated as needed by appropriate software and data. 
   A device may have an arrangement for acting as a resource manager and/or as a driver manager. Devices from which applications are called up may have an arrangement for implementing the exemplary method according to the present invention. 

   
     BRIEF DESCRIPTION OF THE DRAWINGS 
       FIG. 1  shows a configuration of a vehicle communications network. 
       FIG. 2  shows a flow chart of an exemplary method according to the present invention. 
       FIG. 3  shows the initialization of an application. 
       FIG. 4  shows the device access control. 
   

   DETAILED DESCRIPTION 
   Vehicle communications networks may be used to an increasing extent in motor vehicles to interlink various components from the multimedia area. Such components may include a radio receiver, a car PC, a navigation unit, a loudspeaker system, and a CD player. A user may then start an application on a device, but the application may require other devices connected to the vehicle communications network for execution. 
   Therefore, an exemplary method may be used to control access to devices in a vehicle communications network according to present invention, with an application creating a list of the devices required by the application. The drivers required for these devices may be requested by a driver manager, which may then request the corresponding devices from a resource manager with a priority defined by the application. 
     FIG. 1  shows a block diagram of a configuration of a vehicle communications network. A resource manager  2 , a driver manager  3 , a CD player  4 , and a loudspeaker having an audio amplifier are connected to a bus  1  via data inputs/outputs. All the components connected to bus  1  have bus controllers to permit data transfer over bus  1 . More or fewer devices may be connected to bus  1  than illustrated here. Bus  1  here is a bus according to IEEE 1394, but a MOST bus may also be used. Only the transfer of data over this bus  1  may be important, and both electric lines and optical transmission arrangements may be used. 
     FIG. 2  shows a flow chart of the exemplary method according to the present invention for controlling access to devices in a vehicle communications network  1 . In exemplary method step  6 , an application is started on driver manager  3  by a driver in a vehicle in which the vehicle communications network, bus  1 , is located. As an alternative, driver manager  3  may be on a different device from the application. Furthermore, each device which has an application may also have a driver manager. 
   In exemplary method step  7 , the application creates on driver manager  3  a list of the devices required for the application. The application here is called up on driver manager  3 , for example, the device which has driver manager  3  and the application also supplying other applications. 
   As an alternative, the application may be called up on a device other than on driver manager  3 . The device on which the application is called up has a connection to an input device, which may be controlled either by voice or manually. The driver or a passenger then calls up the application via this input device. 
   In method step  8 , the application assigns a priority to the devices which are included in the list and are required for execution of the application; these devices are requested with this priority. This priority may depend on how important the application is. For example, if the application is a traffic message, which may be started automatically, then this application and the request associated with it for the required devices receive a high priority. A telephone call (in which case a mobile telephone is connected to bus  1 ) may also be assigned a high priority so that it is at least announced to the driver. Playback of sound recording media, i.e., applications intended only for entertainment, may have a low priority. 
   If a requested device is busy, then the priority decides whether or not the application requesting this busy device will gain access to it. If the priority of the requesting application is higher than that of the application already accessing the device, then this device is withdrawn from the application and assigned to the requesting application. If the priority is the same, then the application first receiving the devices assigned to it will continue to access the devices. After the application using the device releases it again, the waiting application then takes over the device. For this, resource manager  2  makes an entry to note the waiting application. In an exemplary refinement of the exemplary method according to the present invention, an application may access a device for a certain period of time only after the device has been assigned to a waiting application, if any. If there is a waiting application, then the application from which the device has been withdrawn because the time has elapsed may request this device again. 
   In method step  9 , driver manager  3  requests the devices in the list from resource manager  2  and reports the respective priority. In method step  10 , resource manager  2  checks on whether or not the devices are free. If the devices are free, then in method step  11 , the devices are assigned, and resource manager  2  makes corresponding entries in its memory for managing the resources. The user may have started an application here, starting CD player  4 . To this end, the loudspeaker together with audio amplifier  5  is required as a device for acoustic playback. Therefore, in method step  11 , CD player  4  and the loudspeaker together with audio amplifier  5  are allocated to the application. 
   Then in method step  12 , the device is accessed by driver manager  3 , which allocates the corresponding drivers for CD player  4  and the audio amplifier together with loudspeaker  5  to the application. Then the application is executed. In method step  13 , the application reports its end, so that then in method step  14 , driver manager  3  releases the devices that have been accessed, i.e., CD player  4  and the audio amplifier together with loudspeaker  5 . In method step  15 , the devices, CD player  4  and audio amplifier  5  together with the loudspeaker, are returned to the application if previously another application having a lower priority had occupied these devices, and then the devices were withdrawn from these applications. 
   If it is found in method step  10  that the devices requested by the application are not free, then in method step  16  this is announced to the application so that then the application is not executed in method step  17 . In other words, the application is interrupted here, e.g., by putting it in a pause mode, so it may then be started when these devices are free. Therefore, resource manager  2  has an entry that the application started on driver manager  3  has requested these devices, i.e., a waiting list is corrected. As an alternative, a user may receive an acknowledgment that the application is not executable at the moment and for the user to terminate the application and then start it again later if desired. 
     FIG. 3  shows the initialization of an application in a time chart. Application  18  sends to driver manager  19  an inquiry  20  as to which devices are available and which properties the corresponding drivers have. The application then recognizes whether it is executable at all, because with message  21 , application  18  receives this required information from the driver manager, so that only selective access to the corresponding devices is made possible with the device-specific drivers. 
     FIG. 4  shows a flow chart of a successful device access control. The messages described here are transmitted over the vehicle communications network. Application  18  sends the device list it has generated, together with the device numbers and the corresponding devices, to driver manager  19 . This occurs with message  24 . Then driver manager  19  sends resource manager  23  message  25 , which inquires whether these devices are available on the basis of the device identification numbers and the corresponding priorities. With message  26 , resource manager  23  answers this inquiry in the affirmative to driver manager  19 . Then with message  27 , driver manager  19  sends to application  18  the message that the devices are available, with the corresponding identification numbers, and it sends the corresponding identification numbers of the drivers for these devices, so that the application may then start the access. 
   Then application  18  accesses drivers  22  via message  28  to control the devices that have been allocated. After the application has ended, it sends message  29  to driver manager  19  to report this to the driver manager. Again, the corresponding device numbers are reported to the driver manager. Driver manager  19  then reports to the resource manager with message  30  that the devices having the corresponding identification numbers are released again. 
   An application may also call up another application using the exemplary method according to the present invention, both applications then creating lists, if required, to request corresponding devices. An application may then naturally call up only an application which is not requesting the same devices, because otherwise there may be a conflict. Driver manager  19  allocates application identification numbers for drivers already stored on the device of the application, or driver manager  19  generates these drivers via corresponding software, if required, or driver manager  19  loads the drivers from a database which manages these drivers centrally. 
   At least one device has an arrangement, processor and memory to execute the resource manager function. Another device has an arrangement, processor and memory, to ensure the executability of the driver manager function. Devices on which the applications are called up have an arrangement, so that priorities are assigned to the requests according to the application. 
   The applications may be assigned to an application layer, while the driver manager may be assigned to the Common Interface Automotive Network layer (CIAN). The application layer may be placed on the CIAN layer. This may permit a standardization of interfaces. Applications access the driver manager via the same interface.