{"id":2277,"date":"2021-01-27T14:53:55","date_gmt":"2021-01-27T09:23:55","guid":{"rendered":"https:\/\/binaryterms.com\/?p=2277"},"modified":"2021-01-28T15:40:21","modified_gmt":"2021-01-28T10:10:21","slug":"deadlock-characterization","status":"publish","type":"post","link":"https:\/\/binaryterms.com\/deadlock-characterization.html","title":{"rendered":"Deadlock Characterization"},"content":{"rendered":"<p><strong>Deadlock characterization<\/strong> describes the distinctive features that are the cause of deadlock occurrence. Deadlock is a condition in the multiprogramming environment where the executing processes get stuck in the middle of execution waiting for the resources that have been held by the other waiting processes thereby preventing the execution of the processes.<\/p>\n<p>In this content, we will discuss the characteristics that are essential for the occurrence of deadlock. The four conditions that must sustain at the same time to eventuate a deadlock are: mutual experience, hold and wait, no preemption, circular wait.<\/p>\n<h2>Deadlock Characterization<\/h2>\n<ol>\n<li>Deadlock Prerequisites<\/li>\n<li>Systems Resource Allocation Graph<\/li>\n<\/ol>\n<h3>Deadlock Prerequisites<\/h3>\n<p><strong>i) Mutual Exclusion<\/strong><\/p>\n<p>In a multiprogramming environment, there may be several processes requesting the same resource at a time. The mutual exclusion condition, allow only a single process to access the resource at a time. While the other processes requesting the same resource must wait and delay their execution until it has been released. The mutual exclusion condition prevents two or more processes to access the same resource at a time.<\/p>\n<p><strong>ii) Hold and wait<\/strong><\/p>\n<p>The hold and wait condition simply means that the process must be holding access to one resource and must be waiting to get hold of other resources that have been acquired by the other processes.<\/p>\n<p><strong>iii) No Preemption<\/strong><\/p>\n<p>A process acquiring a resource, cannot be preempted in between, to release the acquired resource. Instead, the process must voluntarily release the resource it has acquired when the task of the process has been completed.<\/p>\n<p><strong>iv) Circular Wait<\/strong><\/p>\n<p>The processes must be waiting in a circular pattern to acquire the resource. This is similar to hold and waits the only difference is that the processes are waiting in a circular pattern.<\/p>\n<p>Let us discuss this with an example there are five processes i.e. P<sub>0<\/sub>, P<sub>1, <\/sub>P<sub>2, <\/sub>P<sub>3, <\/sub>P<sub>4<\/sub>. Now the process P<sub>0<\/sub> is waiting to acquire the process held by the P<sub>1<\/sub>, further the process P<sub>1<\/sub> is waiting to acquire the resource held by P<sub>2<\/sub>, \u2026., process P<sub>4<\/sub> is waiting to acquire the resource held by P<sub>0.<\/sub><\/p>\n<h3>System Resource Allocation Graph<\/h3>\n<p>The system reallocation graph is a directed graph that briefs you about the deadlock more precisely. Like every graph, it also has a set of <strong>vertices<\/strong> and a set of <strong>edges.<\/strong> Further, the set of vertices can be classified into two types of nodes P and R. Where P is the set of vertices indicating the <em>set of active processes<\/em> and R is the set of vertices indicating <em>all types of resources<\/em> in the system.<\/p>\n<p>When a process requests for a resource it denoted by the <strong>request edge<\/strong> in the resource-allocation graph. The request edge is a directed edge from the requesting process P<sub>i<\/sub> to requested resource R<sub>j <\/sub>i.e. P<sub>i<\/sub> -&gt; R<sub>j<\/sub>.<\/p>\n<p>Well, when a resource is allotted to some process then it is denoted by the <strong>assignment edge<\/strong>. The assignment edge is the directed edge from the instance of resource R\u00ad<sub>j<\/sub> to the process P\u00ad<sub>i<\/sub> i.e. R<sub>j<\/sub> -&gt; P<sub>i<\/sub>.<\/p>\n<p>In the graph, resources are denoted by the <strong>rectangles<\/strong> and the processes are denoted by the <strong>circles.<\/strong> If a resource has multiple instances then it is denoted by the <strong>dots<\/strong> inside the rectangle.<\/p>\n<p>When a process request for an instance of the resource it directs a request edge to the resource. If the resource is able to allocate the resource instance to the requesting process then immediately the request edge is converted to assignment edge.<\/p>\n<p>The request edge always points to the resource rectangle in the graph, not to dots (instance) inside the rectangle. Although the assignment edge nominates the dot (instance) to a process.<\/p>\n<p>To understand deadlock we let us take an example. Consider we have following set of nodes and edges.<\/p>\n<ol>\n<li>There are three active processes P = {P<sub>1<\/sub>, P<sub>2<\/sub>, P<sub>3<\/sub>}<\/li>\n<li>There are four resources R = { R<sub>1, <\/sub>R<sub>2<\/sub>, R<sub>3<\/sub>, R<sub>4<\/sub>}<\/li>\n<li>The set of request edge and assignment edges we have<br \/>\nE = { P1 -&gt; R<sub>1<\/sub>, P<sub>2<\/sub> -&gt; R<sub>3<\/sub>, R<sub>1<\/sub> -&gt; P<sub>2<\/sub>, R<sub>2<\/sub> -&gt; P<sub>2<\/sub>, R<sub>2 <\/sub>-&gt; P<sub>1<\/sub>, R<sub>3<\/sub> -&gt; P<sub>3<\/sub>}<\/li>\n<\/ol>\n<p>Observe the figure above that the resource R\u00ad<sub>1<\/sub> has only one instance, resource R<sub>2<\/sub> has two instances, resource R<sub>3<\/sub>\u00a0has one instance, and resource R<sub>4<\/sub> has three instances. Let us check the status of the processes.<\/p>\n<p>The figure below shows that the process P<sub>1 <\/sub>has requested for the instance of resource R<sub>1<\/sub> is already holding the instance of resource R<sub>2<\/sub>. The process P<sub>2<\/sub>\u00a0has requested for the instance of resource R<sub>3<\/sub> and is already holding the instances of resource R<sub>1 <\/sub>and R<sub>3<\/sub>. The process P<sub>3 <\/sub>has not requested for any resource instance but is holding the instance for resource R<sub>3<\/sub>.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-2278\" src=\"https:\/\/binaryterms.com\/wp-content\/uploads\/2021\/01\/Resource-allocation-dead-lock-characterization.jpg\" alt=\"Resource allocation dead lock characterization\" width=\"448\" height=\"384\" srcset=\"https:\/\/binaryterms.com\/wp-content\/uploads\/2021\/01\/Resource-allocation-dead-lock-characterization.jpg 448w, https:\/\/binaryterms.com\/wp-content\/uploads\/2021\/01\/Resource-allocation-dead-lock-characterization-300x257.jpg 300w\" sizes=\"auto, (max-width: 448px) 100vw, 448px\" \/><\/p>\n<p>Remember if the resource allocation graph has a cycle and every resource has a single instance then it implies that a deadlock has occurred. In case, the resources have multiple instances then a cycle in the graph need not be indicating the occurrence of deadlock.<\/p>\n<p>Consider that the process P<sub>3<\/sub> is requesting for the instance of resource R<sub>2<\/sub> which is already held by the process P<sub>1<\/sub> and P<sub>2<\/sub>. In this case, you will observe that there are two cycles in the resource allocation graph:<\/p>\n<ul>\n<li>P<sub>1<\/sub> -&gt; R <sub>1<\/sub> -&gt; P<sub>2<\/sub> -&gt; R<sub>3<\/sub> -&gt; P<sub>3<\/sub> -&gt; R<sub>2<\/sub> -&gt; P<sub>1<\/sub><\/li>\n<li>P<sub>2<\/sub> -&gt; R<sub>3<\/sub> -&gt; P<sub>3<\/sub> -&gt; R<sub>2<\/sub> -&gt; P<sub>2<\/sub><\/li>\n<\/ul>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-2279\" src=\"https:\/\/binaryterms.com\/wp-content\/uploads\/2021\/01\/Dead-Lock-Characterization.jpg\" alt=\"Dead Lock Characterization\" width=\"449\" height=\"443\" srcset=\"https:\/\/binaryterms.com\/wp-content\/uploads\/2021\/01\/Dead-Lock-Characterization.jpg 449w, https:\/\/binaryterms.com\/wp-content\/uploads\/2021\/01\/Dead-Lock-Characterization-300x296.jpg 300w, https:\/\/binaryterms.com\/wp-content\/uploads\/2021\/01\/Dead-Lock-Characterization-100x100.jpg 100w\" sizes=\"auto, (max-width: 449px) 100vw, 449px\" \/><\/p>\n<p>Process P<sub>1<\/sub>, P<sub>2<\/sub> and P<sub>3<\/sub> are now in deadlock as each process in the cycle is waiting for the resource held by another process. But every cycle in the resource allocation graph does not indicate the deadlock, you have to observe the cycle carefully while dealing with deadlock problem.\u00a0So, this is how you can characterize the deadlock in the system.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Deadlock characterization describes the distinctive features that are the cause of deadlock occurrence. Deadlock is a condition in the multiprogramming environment where the executing processes get stuck in the middle of execution waiting for the resources that have been held by the other waiting processes thereby preventing the execution of the processes. In this content, [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_genesis_hide_title":false,"_genesis_hide_breadcrumbs":false,"_genesis_hide_singular_image":false,"_genesis_hide_footer_widgets":false,"_genesis_custom_body_class":"","_genesis_custom_post_class":"","_genesis_layout":"","footnotes":""},"categories":[2],"tags":[],"class_list":{"0":"post-2277","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-operating-system","7":"entry"},"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.6 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>What is Deadlock Characterization? - Binary Terms<\/title>\n<meta name=\"description\" content=\"Deadlock characterization describes the distinctive features that are manadatory and essential for the occurence of deadlock.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/binaryterms.com\/deadlock-characterization.html\" \/>\n<meta property=\"og:locale\" content=\"en_GB\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"What is Deadlock Characterization? - Binary Terms\" \/>\n<meta property=\"og:description\" content=\"Deadlock characterization describes the distinctive features that are manadatory and essential for the occurence of deadlock.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/binaryterms.com\/deadlock-characterization.html\" \/>\n<meta property=\"og:site_name\" content=\"Binary Terms\" \/>\n<meta property=\"article:published_time\" content=\"2021-01-27T09:23:55+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-01-28T10:10:21+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/binaryterms.com\/wp-content\/uploads\/2021\/01\/Resource-allocation-dead-lock-characterization.jpg\" \/>\n<meta name=\"author\" content=\"Neha T\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Neha T\" \/>\n\t<meta name=\"twitter:label2\" content=\"Estimated reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/binaryterms.com\/deadlock-characterization.html#article\",\"isPartOf\":{\"@id\":\"https:\/\/binaryterms.com\/deadlock-characterization.html\"},\"author\":{\"name\":\"Neha T\",\"@id\":\"https:\/\/binaryterms.com\/#\/schema\/person\/e495f1d57f5c0a4c521cc3dba95661fe\"},\"headline\":\"Deadlock Characterization\",\"datePublished\":\"2021-01-27T09:23:55+00:00\",\"dateModified\":\"2021-01-28T10:10:21+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/binaryterms.com\/deadlock-characterization.html\"},\"wordCount\":957,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/binaryterms.com\/#organization\"},\"image\":{\"@id\":\"https:\/\/binaryterms.com\/deadlock-characterization.html#primaryimage\"},\"thumbnailUrl\":\"https:\/\/binaryterms.com\/wp-content\/uploads\/2021\/01\/Resource-allocation-dead-lock-characterization.jpg\",\"articleSection\":[\"Operating System\"],\"inLanguage\":\"en-GB\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/binaryterms.com\/deadlock-characterization.html#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/binaryterms.com\/deadlock-characterization.html\",\"url\":\"https:\/\/binaryterms.com\/deadlock-characterization.html\",\"name\":\"What is Deadlock Characterization? - Binary Terms\",\"isPartOf\":{\"@id\":\"https:\/\/binaryterms.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/binaryterms.com\/deadlock-characterization.html#primaryimage\"},\"image\":{\"@id\":\"https:\/\/binaryterms.com\/deadlock-characterization.html#primaryimage\"},\"thumbnailUrl\":\"https:\/\/binaryterms.com\/wp-content\/uploads\/2021\/01\/Resource-allocation-dead-lock-characterization.jpg\",\"datePublished\":\"2021-01-27T09:23:55+00:00\",\"dateModified\":\"2021-01-28T10:10:21+00:00\",\"description\":\"Deadlock characterization describes the distinctive features that are manadatory and essential for the occurence of deadlock.\",\"breadcrumb\":{\"@id\":\"https:\/\/binaryterms.com\/deadlock-characterization.html#breadcrumb\"},\"inLanguage\":\"en-GB\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/binaryterms.com\/deadlock-characterization.html\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-GB\",\"@id\":\"https:\/\/binaryterms.com\/deadlock-characterization.html#primaryimage\",\"url\":\"https:\/\/binaryterms.com\/wp-content\/uploads\/2021\/01\/Resource-allocation-dead-lock-characterization.jpg\",\"contentUrl\":\"https:\/\/binaryterms.com\/wp-content\/uploads\/2021\/01\/Resource-allocation-dead-lock-characterization.jpg\",\"width\":448,\"height\":384,\"caption\":\"Resource allocation dead lock characterization\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/binaryterms.com\/deadlock-characterization.html#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/binaryterms.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Deadlock Characterization\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/binaryterms.com\/#website\",\"url\":\"https:\/\/binaryterms.com\/\",\"name\":\"Binary Terms\",\"description\":\"The Computer Science &amp; IT Guide\",\"publisher\":{\"@id\":\"https:\/\/binaryterms.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/binaryterms.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-GB\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/binaryterms.com\/#organization\",\"name\":\"Binary Terms\",\"url\":\"https:\/\/binaryterms.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-GB\",\"@id\":\"https:\/\/binaryterms.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/binaryterms.com\/wp-content\/uploads\/2020\/05\/binary-terms-logo1.png\",\"contentUrl\":\"https:\/\/binaryterms.com\/wp-content\/uploads\/2020\/05\/binary-terms-logo1.png\",\"width\":400,\"height\":63,\"caption\":\"Binary Terms\"},\"image\":{\"@id\":\"https:\/\/binaryterms.com\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/binaryterms.com\/#\/schema\/person\/e495f1d57f5c0a4c521cc3dba95661fe\",\"name\":\"Neha T\",\"url\":\"https:\/\/binaryterms.com\/author\/author\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"What is Deadlock Characterization? - Binary Terms","description":"Deadlock characterization describes the distinctive features that are manadatory and essential for the occurence of deadlock.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/binaryterms.com\/deadlock-characterization.html","og_locale":"en_GB","og_type":"article","og_title":"What is Deadlock Characterization? - Binary Terms","og_description":"Deadlock characterization describes the distinctive features that are manadatory and essential for the occurence of deadlock.","og_url":"https:\/\/binaryterms.com\/deadlock-characterization.html","og_site_name":"Binary Terms","article_published_time":"2021-01-27T09:23:55+00:00","article_modified_time":"2021-01-28T10:10:21+00:00","og_image":[{"url":"https:\/\/binaryterms.com\/wp-content\/uploads\/2021\/01\/Resource-allocation-dead-lock-characterization.jpg","type":"","width":"","height":""}],"author":"Neha T","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Neha T","Estimated reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/binaryterms.com\/deadlock-characterization.html#article","isPartOf":{"@id":"https:\/\/binaryterms.com\/deadlock-characterization.html"},"author":{"name":"Neha T","@id":"https:\/\/binaryterms.com\/#\/schema\/person\/e495f1d57f5c0a4c521cc3dba95661fe"},"headline":"Deadlock Characterization","datePublished":"2021-01-27T09:23:55+00:00","dateModified":"2021-01-28T10:10:21+00:00","mainEntityOfPage":{"@id":"https:\/\/binaryterms.com\/deadlock-characterization.html"},"wordCount":957,"commentCount":0,"publisher":{"@id":"https:\/\/binaryterms.com\/#organization"},"image":{"@id":"https:\/\/binaryterms.com\/deadlock-characterization.html#primaryimage"},"thumbnailUrl":"https:\/\/binaryterms.com\/wp-content\/uploads\/2021\/01\/Resource-allocation-dead-lock-characterization.jpg","articleSection":["Operating System"],"inLanguage":"en-GB","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/binaryterms.com\/deadlock-characterization.html#respond"]}]},{"@type":"WebPage","@id":"https:\/\/binaryterms.com\/deadlock-characterization.html","url":"https:\/\/binaryterms.com\/deadlock-characterization.html","name":"What is Deadlock Characterization? - Binary Terms","isPartOf":{"@id":"https:\/\/binaryterms.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/binaryterms.com\/deadlock-characterization.html#primaryimage"},"image":{"@id":"https:\/\/binaryterms.com\/deadlock-characterization.html#primaryimage"},"thumbnailUrl":"https:\/\/binaryterms.com\/wp-content\/uploads\/2021\/01\/Resource-allocation-dead-lock-characterization.jpg","datePublished":"2021-01-27T09:23:55+00:00","dateModified":"2021-01-28T10:10:21+00:00","description":"Deadlock characterization describes the distinctive features that are manadatory and essential for the occurence of deadlock.","breadcrumb":{"@id":"https:\/\/binaryterms.com\/deadlock-characterization.html#breadcrumb"},"inLanguage":"en-GB","potentialAction":[{"@type":"ReadAction","target":["https:\/\/binaryterms.com\/deadlock-characterization.html"]}]},{"@type":"ImageObject","inLanguage":"en-GB","@id":"https:\/\/binaryterms.com\/deadlock-characterization.html#primaryimage","url":"https:\/\/binaryterms.com\/wp-content\/uploads\/2021\/01\/Resource-allocation-dead-lock-characterization.jpg","contentUrl":"https:\/\/binaryterms.com\/wp-content\/uploads\/2021\/01\/Resource-allocation-dead-lock-characterization.jpg","width":448,"height":384,"caption":"Resource allocation dead lock characterization"},{"@type":"BreadcrumbList","@id":"https:\/\/binaryterms.com\/deadlock-characterization.html#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/binaryterms.com\/"},{"@type":"ListItem","position":2,"name":"Deadlock Characterization"}]},{"@type":"WebSite","@id":"https:\/\/binaryterms.com\/#website","url":"https:\/\/binaryterms.com\/","name":"Binary Terms","description":"The Computer Science &amp; IT Guide","publisher":{"@id":"https:\/\/binaryterms.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/binaryterms.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-GB"},{"@type":"Organization","@id":"https:\/\/binaryterms.com\/#organization","name":"Binary Terms","url":"https:\/\/binaryterms.com\/","logo":{"@type":"ImageObject","inLanguage":"en-GB","@id":"https:\/\/binaryterms.com\/#\/schema\/logo\/image\/","url":"https:\/\/binaryterms.com\/wp-content\/uploads\/2020\/05\/binary-terms-logo1.png","contentUrl":"https:\/\/binaryterms.com\/wp-content\/uploads\/2020\/05\/binary-terms-logo1.png","width":400,"height":63,"caption":"Binary Terms"},"image":{"@id":"https:\/\/binaryterms.com\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/binaryterms.com\/#\/schema\/person\/e495f1d57f5c0a4c521cc3dba95661fe","name":"Neha T","url":"https:\/\/binaryterms.com\/author\/author"}]}},"_links":{"self":[{"href":"https:\/\/binaryterms.com\/wp-json\/wp\/v2\/posts\/2277","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/binaryterms.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/binaryterms.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/binaryterms.com\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/binaryterms.com\/wp-json\/wp\/v2\/comments?post=2277"}],"version-history":[{"count":8,"href":"https:\/\/binaryterms.com\/wp-json\/wp\/v2\/posts\/2277\/revisions"}],"predecessor-version":[{"id":2287,"href":"https:\/\/binaryterms.com\/wp-json\/wp\/v2\/posts\/2277\/revisions\/2287"}],"wp:attachment":[{"href":"https:\/\/binaryterms.com\/wp-json\/wp\/v2\/media?parent=2277"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/binaryterms.com\/wp-json\/wp\/v2\/categories?post=2277"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/binaryterms.com\/wp-json\/wp\/v2\/tags?post=2277"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}