Page 2 of 3 FirstFirst 123 LastLast
Results 11 to 20 of 21

Thread: Architecture Changes

  1. #11
    licensed to kill - FKA kev000
    Auto Apps:loading...
    tripzero's Avatar
    Join Date
    Aug 2006
    Location
    16.40618, 120.61106
    Posts
    2,555
    Quote Originally Posted by chunkyks View Post
    Why all this love for dbus? I just don't get why people like it.
    like it or not, just about anything you want to get done in the Lin00ks exposes a dbus interface that you can consume in a standardized fashon. Need wifi? NetworkManager and Connman expose a dbus interface. Bluetooth? org.bluez. How about notifications when you insert a usb stick? org.freedesktop.Devicekit.Drives.

    Most of the time, the dbus API provided by a service is easier to use than the C API. You can also use any interface with your favorite language: php, c, c++, c#, java, python, perl, etc, etc...

    Is DBus very elegant? No. Are there better solutions? Undoubtedly. But DBus just works. It's stable and well tested and the bindings are excellent and make things easy.

    So until something better comes along, DBus will remain the de-facto IPC standard. ...at least on Linux.
    Former author of LinuxICE, nghost.
    Current author of nobdy.

  2. #12
    Maximum Bitrate Borte's Avatar
    Join Date
    Jan 2006
    Location
    Norway
    Posts
    511
    What impact will this have on plugins? You said that it would be transparent to plugins but will it force a plugin to use this to communicate to the os (or any part of the computer) or will it just be "another tool in the tool box" for plugin development?

    I'll imagine that having plugins communicate trough this to the os would help to maintain cross platform plugins but it could be hard to expose the full api for each os.
    Failure is not an option...
    __________________________________________________ ______________________________
    The only full multizone / multiscreen cross platform open source Front End -> OpenMobile

  3. #13
    Raw Wave
    Auto Apps:loading...
    justchat_1's Avatar
    Join Date
    Jul 2008
    Location
    Boston, Ma or NY,NY
    Posts
    2,359
    Quote Originally Posted by Borte View Post
    What impact will this have on plugins? You said that it would be transparent to plugins but will it force a plugin to use this to communicate to the os (or any part of the computer) or will it just be "another tool in the tool box" for plugin development?

    I'll imagine that having plugins communicate trough this to the os would help to maintain cross platform plugins but it could be hard to expose the full api for each os.
    By transparent I mean that plugin designers wont be able to tell the difference. This only effects what happens inside the core, at a lower level then what plugins have access to. For example, you can still use the setVolume function exactly like before only now when you call it the core will relay that command to the service to take care of instead of doing it itself.

    For security, plugins will not be able to access the service even if they wanted to.

  4. #14
    North of the land of Hey Huns
    Auto Apps:loading...

    Join Date
    Jun 2004
    Location
    Westminster, MD
    Posts
    2,132
    Quote Originally Posted by justchat_1 View Post
    By transparent I mean that plugin designers wont be able to tell the difference. This only effects what happens inside the core, at a lower level then what plugins have access to. For example, you can still use the setVolume function exactly like before only now when you call it the core will relay that command to the service to take care of instead of doing it itself.

    For security, plugins will not be able to access the service even if they wanted to.
    My question is twofold: One, how will you stop the plugin from being able to directly access the service? Also does this mean that the plugin will have to go through the core for serial port, usb access, BT, tcp/ip (And with that, web access), and even for playing its own sounds? What about file system access?
    "stop with the REINSTALLS, what do you think we got some lame-o installer!!!" - mitchjs
    RevFE
    My Shop

  5. #15
    Raw Wave
    Auto Apps:loading...
    justchat_1's Avatar
    Join Date
    Jul 2008
    Location
    Boston, Ma or NY,NY
    Posts
    2,359
    Quote Originally Posted by malcom2073 View Post
    My question is twofold: One, how will you stop the plugin from being able to directly access the service? Also does this mean that the plugin will have to go through the core for serial port, usb access, BT, tcp/ip (And with that, web access), and even for playing its own sounds? What about file system access?
    Well the first ones pretty easy but the second one is definitely going to be a challenge.

    For the service, we use a single peer to peer connection which is only exposed internally to the core. Since the core connects to the service before any of the plugins are loaded theres really no way to gain access.

    The second part is definitely a lot more complicated. Serial, net and file system access are all managed code so its fairly crash proof. We also have alot of functions in the framework to make the common tasks even easier, plus the data storage classes so no file system access is needed for most. Unfortunately, things like bluetooth or usb access will probably be unmanaged code and potentially unstable (one of the reasons im writing the bluetooth myself lol)

  6. #16
    Maximum Bitrate Borte's Avatar
    Join Date
    Jan 2006
    Location
    Norway
    Posts
    511
    Quote Originally Posted by malcom2073 View Post
    My question is twofold: One, how will you stop the plugin from being able to directly access the service? Also does this mean that the plugin will have to go through the core for serial port, usb access, BT, tcp/ip (And with that, web access), and even for playing its own sounds? What about file system access?
    This is what I meant with my question too...
    Failure is not an option...
    __________________________________________________ ______________________________
    The only full multizone / multiscreen cross platform open source Front End -> OpenMobile

  7. #17
    Constant Bitrate
    Join Date
    Feb 2007
    Location
    Taylorsville, UT
    Posts
    134
    Sounds cool to me. When I was first reading this I was thinking, "Oh god I hope he isn't making every plugin in it's own process/etc!" That would just be madness! This much seems to be simple enough, basically you are just separating the os specific stuff off away in another process so the core will just communicate itself and also relay stuff to/from the plugins but wont care what actual back-end it is talking too.

    When you say "we" as in "we feel the benefits will far outweigh the disadvantages" who are you referring to?
    -James
    Car: 2004 GTI VR6 24v Turbo 2.8L, GT35R, 630cc, Unitronic, Bosch 044, etc, etc..
    Main PC:i7 920@4Ghz, 6GB DDR3, MSI X-58 Pro-E, Win 7 x64 RTM, Scythe Mugen2, 128GB G.Skill Falcon, 2x ATI4850 512MB Crossfire, Auzentech X-Fi Forte, Grado Labs SR-80

  8. #18
    Raw Wave
    Auto Apps:loading...
    justchat_1's Avatar
    Join Date
    Jul 2008
    Location
    Boston, Ma or NY,NY
    Posts
    2,359
    Quote Originally Posted by Extide View Post
    Sounds cool to me. When I was first reading this I was thinking, "Oh god I hope he isn't making every plugin in it's own process/etc!" That would just be madness! This much seems to be simple enough, basically you are just separating the os specific stuff off away in another process so the core will just communicate itself and also relay stuff to/from the plugins but wont care what actual back-end it is talking too.

    When you say "we" as in "we feel the benefits will far outweigh the disadvantages" who are you referring to?
    Myself and another developer I consult with....of course the decision is still open for community input but i really can't imagine a better way to do this.

  9. #19
    licensed to kill - FKA kev000
    Auto Apps:loading...
    tripzero's Avatar
    Join Date
    Aug 2006
    Location
    16.40618, 120.61106
    Posts
    2,555
    Quote Originally Posted by Extide View Post
    Sounds cool to me. When I was first reading this I was thinking, "Oh god I hope he isn't making every plugin in it's own process/etc!" That would just be madness!
    yep, process isolation and natural inherited mutithreadedness is nothing but madness. Don't you hate it when you crash explorer.exe and your window manager, taskbar and file browser all get taken out with it cuz they are all one process? I don't.
    Former author of LinuxICE, nghost.
    Current author of nobdy.

  10. #20
    Constant Bitrate
    Join Date
    Feb 2007
    Location
    Taylorsville, UT
    Posts
    134
    Quote Originally Posted by justchat_1 View Post
    Myself and another developer I consult with....of course the decision is still open for community input but i really can't imagine a better way to do this.
    Ah, it has just seemed like you were the only guy really doing significant work on this so far, I wasn't sure if there was someone else out there who was also contributing a lot, but more behind the scenes.

    Quote Originally Posted by kev000 View Post
    yep, process isolation and natural inherited mutithreadedness is nothing but madness. Don't you hate it when you crash explorer.exe and your window manager, taskbar and file browser all get taken out with it cuz they are all one process? I don't.
    Ah yes, there are pro's and cons to everything, but that particular scenario was a bit too much imho, as it seems you would be separating it that much for no reason other than to separate it that much, and as long as all the plugins are using managed code I don't see how it would have any advantages anyways. In any case I think the right choice was made.
    -James
    Car: 2004 GTI VR6 24v Turbo 2.8L, GT35R, 630cc, Unitronic, Bosch 044, etc, etc..
    Main PC:i7 920@4Ghz, 6GB DDR3, MSI X-58 Pro-E, Win 7 x64 RTM, Scythe Mugen2, 128GB G.Skill Falcon, 2x ATI4850 512MB Crossfire, Auzentech X-Fi Forte, Grado Labs SR-80

Page 2 of 3 FirstFirst 123 LastLast

Similar Threads

  1. Apple moving to INTEL
    By Hcomplyr in forum MacCar
    Replies: 45
    Last Post: 07-13-2005, 12:13 PM
  2. what does x86 mean
    By t0yrunner in forum Newbie
    Replies: 10
    Last Post: 02-13-2004, 08:27 AM

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •