{"id":634,"date":"2018-01-26T13:06:07","date_gmt":"2018-01-26T13:06:07","guid":{"rendered":"http:\/\/telekinetics.eu\/wp\/?p=634"},"modified":"2018-01-30T13:24:21","modified_gmt":"2018-01-30T13:24:21","slug":"docker-a-simple-way-to-develop-unix-processes","status":"publish","type":"post","link":"http:\/\/telekinetics.eu\/wp\/?p=634","title":{"rendered":"Docker &#8211; a &#8220;simple&#8221; way to develop, contain &#038; port  unix multi-process systems"},"content":{"rendered":"<p>Docker has found its way in simplifying the Unix fork\/exec daemon paradigm through creating contained processes, and restricting communication between these via the daemon running on\u00a0 the host kernel.<\/p>\n<p>This is old technology existing for over 40 years, that is as old as Unix ( Thanks Kernigan and Richie, seriously its not a prank,in spite of rumour, although there are times when it appears to be, obscure as it is ).<\/p>\n<p>Docker daemon\u00a0 packages fork\/exec, share memory, thus\u00a0 obviating\u00a0 the need for shared or local\u00a0 library creation, which\u00a0 \u00a0 anyone working with Unix will admit has many variants and is complex to implement in parallel processing scenarios. One needs to be the master of the &#8220;makefile&#8221; to get this right in the traditional sense, and honestly who cares? Interesting.<\/p>\n<p>Given the difficulties in sharing IPC space within Docker wouldn&#8217;t it be easier to just write some IPC code libraries ?<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Docker has found its way in simplifying the Unix fork\/exec daemon paradigm through creating contained processes, and restricting communication between[&#8230;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[5],"tags":[],"_links":{"self":[{"href":"http:\/\/telekinetics.eu\/wp\/index.php?rest_route=\/wp\/v2\/posts\/634"}],"collection":[{"href":"http:\/\/telekinetics.eu\/wp\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/telekinetics.eu\/wp\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/telekinetics.eu\/wp\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/telekinetics.eu\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=634"}],"version-history":[{"count":10,"href":"http:\/\/telekinetics.eu\/wp\/index.php?rest_route=\/wp\/v2\/posts\/634\/revisions"}],"predecessor-version":[{"id":677,"href":"http:\/\/telekinetics.eu\/wp\/index.php?rest_route=\/wp\/v2\/posts\/634\/revisions\/677"}],"wp:attachment":[{"href":"http:\/\/telekinetics.eu\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=634"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/telekinetics.eu\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=634"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/telekinetics.eu\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=634"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}