{"id":177,"date":"2019-08-13T16:12:38","date_gmt":"2019-08-13T10:42:38","guid":{"rendered":"https:\/\/binaryterms.com\/?p=177"},"modified":"2022-05-26T11:46:22","modified_gmt":"2022-05-26T06:16:22","slug":"static-and-dynamic-memory-allocation","status":"publish","type":"post","link":"https:\/\/binaryterms.com\/static-and-dynamic-memory-allocation.html","title":{"rendered":"Memory Allocation"},"content":{"rendered":"<p><strong>Memory allocation<\/strong> is an action of assigning the physical or the virtual memory address space to a process (its instructions and data). The two fundamental methods of memory allocation are static and dynamic memory allocation.<\/p>\n<p>The static memory allocation method assigns the memory to a process, <strong>before its execution<\/strong>. On the other hand, the dynamic memory allocation method assigns the memory to a process, <strong>during its execution<\/strong>.<\/p>\n<p>In this section, we will be discussing what is memory allocation, its types (static and dynamic memory allocation) along with their advantages and disadvantages. So let us start.<\/p>\n<h3>Content: Static and Dynamic Memory Allocation<\/h3>\n<ol>\n<li><a href=\"#MemoryAllocation\">Memory Allocation<\/a><\/li>\n<li><a href=\"#TypesofMemoryAllocation\">Types of Memory Allocation<\/a><\/li>\n<li><a href=\"#AdvantagesandDisadvantagesofStaticandDynamicMemoryAllocation\">Advantages and Disadvantages of Static and Dynamic Memory Allocation<\/a><\/li>\n<li><a href=\"#KeyTakeaways\">Key Takeaways<\/a><\/li>\n<\/ol>\n<p><a name=\"MemoryAllocation\"><\/a><\/p>\n<h2>Memory Allocation<\/h2>\n<p>To get a process executed it must be first placed in the memory. Assigning space to a process in memory is called memory allocation. Memory allocation is a general aspect of the term <strong>binding.<\/strong><\/p>\n<p>Let us understand binding with the help of an example. Suppose, there is an <strong>entity<\/strong> in a program, with a set of attributes. Now, a <strong>variable<\/strong> of this entity will have values for this <strong>set of attributes<\/strong>. For storing these values, we must have memory allotted to these attributes.<\/p>\n<p>So, the act of assigning the memory address to the attribute of the variable is called <strong>memory allocation<\/strong>. And the act of specifying\/binding the values to the attributes of the variable is called <strong>binding<\/strong>. This action of binding must be performed before the variable is used during the execution of the program.<\/p>\n<p>We have two types of memory allocation or we can say two methods of binding, static and dynamic binding.<br \/>\n<img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-205\" src=\"https:\/\/binaryterms.com\/wp-content\/uploads\/2019\/08\/Memory-Allocation.jpg\" alt=\"Memory Allocation\" width=\"600\" height=\"334\" srcset=\"https:\/\/binaryterms.com\/wp-content\/uploads\/2019\/08\/Memory-Allocation.jpg 600w, https:\/\/binaryterms.com\/wp-content\/uploads\/2019\/08\/Memory-Allocation-300x167.jpg 300w\" sizes=\"auto, (max-width: 600px) 100vw, 600px\" \/><br \/>\n<a name=\"TypesofMemoryAllocation\"><\/a><\/p>\n<h2>Types of Memory Allocation<\/h2>\n<h3>1. Static Memory Allocation<\/h3>\n<p>Static memory allocation is performed when the compiler compiles the program and generates object files. The linker merges all these object files and creates a single executable file. The loader loads this single executable file in the main memory, for execution. In static memory allocation, the size of the data required by the process must be known <strong>before<\/strong> the execution of the process initiates.<\/p>\n<p>If the data sizes are not known before the execution of the process, then they have to be guessed. If the data size guessed is larger than the required, then it leads to <strong>wastage<\/strong> of memory. If the guessed size is smaller, then it leads to inappropriate execution of the process.<\/p>\n<p>The static memory allocation method does not need any memory allocation operation during the execution of the process. All the memory allocation operation required for the process is done before the execution of the process has started. So, it leads to <strong>faster<\/strong> execution of a process.<\/p>\n<p>Static memory allocation provides more <strong>efficiency<\/strong> when compared to dynamic memory allocation.<\/p>\n<h3>2. Dynamic Memory Allocation<\/h3>\n<p>Dynamic memory allocation is performed while the program is in execution. Here, the memory is allocated to the entities of the program when they are to be used for the <strong>first time<\/strong> while the program is running.<\/p>\n<p>The actual size, of the data required, is known at the run time so, it allocates the <strong>exact<\/strong> memory space to the program thereby, reducing the memory wastage.<\/p>\n<p>Dynamic memory allocation provides <strong>flexibility<\/strong> to the execution of the program. As it can decide what amount of memory space will be required by the program. If the program is large enough then a dynamic memory allocation is performed on the different parts of the program, which is to be used currently. This reduces memory wastage and improves the performance of the system.<\/p>\n<p>Allocating memory dynamically creates an overhead over the system. Some allocation operations are performed repeatedly during the program execution creating more overheads, leading in <strong>slow<\/strong> execution of the program.<\/p>\n<p>Dynamic memory allocation does not require special support from the operating system. It is the responsibility of the programmer to design the program in a way to take advantage of dynamic memory allocation method.<\/p>\n<p>Thus the dynamic memory allocation is flexible but slower than static memory allocation.<br \/>\n<a name=\"AdvantagesandDisadvantagesofStaticandDynamicMemoryAllocation\"><\/a><\/p>\n<h3>Advantages of static and dynamic memory allocation<\/h3>\n<h4>Static Memory Allocation<\/h4>\n<ol>\n<li>Static memory allocation provides an <strong>efficient <\/strong>way of assigning the memory to a process.<\/li>\n<li>All the memory assigning operations are done before the execution starts. So, there are <em>no <\/em><strong>overheads<\/strong> of memory allocation operations at the time of execution of the program.<\/li>\n<li>Static memory allocation provides <strong>faster <\/strong>execution, as at the time of execution it doesn\u2019t have to waste time in allocation memory to the program.<\/li>\n<\/ol>\n<h4>Dynamic Memory Allocation<\/h4>\n<ol>\n<li>Dynamic memory allocation provides a <strong>flexible <\/strong>way of assigning the memory to a process.<\/li>\n<li>Dynamic memory allocation <strong>reduces <\/strong>the memory <strong>wastage <\/strong>as it assigns memory to a process during the execution of that program. So, it is aware of the exact memory size required by the program.<\/li>\n<li>If the program is large then the dynamic memory allocation is performed on the different parts of the program. Memory is assigned to the part of a program that is currently in use. This also reduces memory wastage and indeed improves <strong>system performance<\/strong>.<\/li>\n<\/ol>\n<h3>Disadvantages of static and dynamic memory allocation<\/h3>\n<h4>Static Memory Allocation<\/h4>\n<ol>\n<li>In static memory allocation, the system is <strong>unaware <\/strong>of the memory requirement of the program. So, it has to guess the memory required for the program.<\/li>\n<li>Static memory allocation leads to memory <strong>wastage<\/strong>. As it estimates the size of memory required by the program. So, if the estimated size is larger, it will lead to memory <strong>wastage <\/strong>else if the estimated size is smaller, then the program will execute <strong>inappropriately<\/strong>.<\/li>\n<\/ol>\n<h4>Dynamic Memory allocation<\/h4>\n<ol>\n<li>Dynamic memory allocation method has an <strong>overhead <\/strong>of assigning the memory to a process during the time of its execution.<\/li>\n<li>Sometimes the memory allocation actions are repeated several times during the execution of the program which leads to more <strong>overheads<\/strong>.<\/li>\n<li>The overheads of memory allocation at the time of its execution <strong>slowdowns\u00a0<\/strong>the execution to some extent.<\/li>\n<\/ol>\n<p><a name=\"KeyTakeaways\"><\/a><\/p>\n<div id=\"keytake\">\n<h3>Key Takeaways<\/h3>\n<ul>\n<li>Memory allocation specifies the memory address to a program or a process.<\/li>\n<li>Memory allocation has two methods <strong>static <\/strong>memory allocation and <strong>dynamic <\/strong>memory allocation.<\/li>\n<li>Static memory allocation provides <strong>efficiency <\/strong>as it assigns the memory to a process <strong>before <\/strong>its execution has started. So it doesn\u2019t have any <strong>overhead <\/strong>of memory allocation operation during the execution of the program which leads to <strong>faster<\/strong> execution of the program.<\/li>\n<li>In static memory allocation, the required memory size must be known <strong>prior <\/strong>to the execution of the program.<\/li>\n<li>Static memory allocation assigns the assumed amount of memory space to a process as it is <strong>unaware <\/strong>of the amount of memory required by the program. This leads to the wastage of memory.<\/li>\n<li>Dynamic memory allocation is performed <strong>during <\/strong>the time of execution of a program. So it allocates the exact amount of memory to the program avoiding memory wastage.<\/li>\n<li>Dynamic memory allocation has the <strong>overheads <\/strong>of memory allocation operation during the execution of the program which <strong>slowdowns <\/strong>the execution of the program.<\/li>\n<li>Dynamic memory allocation provides <strong>flexibility <\/strong>during memory allocation, as if the program is large enough then it performs memory allocation operations on different parts of the programs and reduces memory wastage.<\/li>\n<\/ul>\n<\/div>\n<p>The operating system can obtain the best mix of static and dynamic memory allocation to get an efficient and flexible execution.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Memory allocation is an action of assigning the physical or the virtual memory address space to a process (its instructions and data). The two fundamental methods of memory allocation are static and dynamic memory allocation. The static memory allocation method assigns the memory to a process, before its execution. On the other hand, the dynamic [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","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-177","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 Memory Allocation in Operating System? Static and Dynamic Memory Allocation - Binary Terms<\/title>\n<meta name=\"description\" content=\"The two fundamental methods of memory allocation are static and dynamic memory allocation. Static memory allocation method assigns the memomy allocation\" \/>\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\/static-and-dynamic-memory-allocation.html\" \/>\n<meta property=\"og:locale\" content=\"en_GB\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"What is Memory Allocation in Operating System? Static and Dynamic Memory Allocation - Binary Terms\" \/>\n<meta property=\"og:description\" content=\"The two fundamental methods of memory allocation are static and dynamic memory allocation. Static memory allocation method assigns the memomy allocation\" \/>\n<meta property=\"og:url\" content=\"https:\/\/binaryterms.com\/static-and-dynamic-memory-allocation.html\" \/>\n<meta property=\"og:site_name\" content=\"Binary Terms\" \/>\n<meta property=\"article:published_time\" content=\"2019-08-13T10:42:38+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-05-26T06:16:22+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/binaryterms.com\/wp-content\/uploads\/2019\/08\/Memory-Allocation.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=\"6 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/binaryterms.com\/static-and-dynamic-memory-allocation.html#article\",\"isPartOf\":{\"@id\":\"https:\/\/binaryterms.com\/static-and-dynamic-memory-allocation.html\"},\"author\":{\"name\":\"Neha T\",\"@id\":\"https:\/\/binaryterms.com\/#\/schema\/person\/e495f1d57f5c0a4c521cc3dba95661fe\"},\"headline\":\"Memory Allocation\",\"datePublished\":\"2019-08-13T10:42:38+00:00\",\"dateModified\":\"2022-05-26T06:16:22+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/binaryterms.com\/static-and-dynamic-memory-allocation.html\"},\"wordCount\":1196,\"commentCount\":4,\"publisher\":{\"@id\":\"https:\/\/binaryterms.com\/#organization\"},\"image\":{\"@id\":\"https:\/\/binaryterms.com\/static-and-dynamic-memory-allocation.html#primaryimage\"},\"thumbnailUrl\":\"https:\/\/binaryterms.com\/wp-content\/uploads\/2019\/08\/Memory-Allocation.jpg\",\"articleSection\":[\"Operating System\"],\"inLanguage\":\"en-GB\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/binaryterms.com\/static-and-dynamic-memory-allocation.html#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/binaryterms.com\/static-and-dynamic-memory-allocation.html\",\"url\":\"https:\/\/binaryterms.com\/static-and-dynamic-memory-allocation.html\",\"name\":\"What is Memory Allocation in Operating System? Static and Dynamic Memory Allocation - Binary Terms\",\"isPartOf\":{\"@id\":\"https:\/\/binaryterms.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/binaryterms.com\/static-and-dynamic-memory-allocation.html#primaryimage\"},\"image\":{\"@id\":\"https:\/\/binaryterms.com\/static-and-dynamic-memory-allocation.html#primaryimage\"},\"thumbnailUrl\":\"https:\/\/binaryterms.com\/wp-content\/uploads\/2019\/08\/Memory-Allocation.jpg\",\"datePublished\":\"2019-08-13T10:42:38+00:00\",\"dateModified\":\"2022-05-26T06:16:22+00:00\",\"description\":\"The two fundamental methods of memory allocation are static and dynamic memory allocation. Static memory allocation method assigns the memomy allocation\",\"breadcrumb\":{\"@id\":\"https:\/\/binaryterms.com\/static-and-dynamic-memory-allocation.html#breadcrumb\"},\"inLanguage\":\"en-GB\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/binaryterms.com\/static-and-dynamic-memory-allocation.html\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-GB\",\"@id\":\"https:\/\/binaryterms.com\/static-and-dynamic-memory-allocation.html#primaryimage\",\"url\":\"https:\/\/binaryterms.com\/wp-content\/uploads\/2019\/08\/Memory-Allocation.jpg\",\"contentUrl\":\"https:\/\/binaryterms.com\/wp-content\/uploads\/2019\/08\/Memory-Allocation.jpg\",\"width\":600,\"height\":334,\"caption\":\"Memory Allocation\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/binaryterms.com\/static-and-dynamic-memory-allocation.html#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/binaryterms.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Memory Allocation\"}]},{\"@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 Memory Allocation in Operating System? Static and Dynamic Memory Allocation - Binary Terms","description":"The two fundamental methods of memory allocation are static and dynamic memory allocation. Static memory allocation method assigns the memomy allocation","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\/static-and-dynamic-memory-allocation.html","og_locale":"en_GB","og_type":"article","og_title":"What is Memory Allocation in Operating System? Static and Dynamic Memory Allocation - Binary Terms","og_description":"The two fundamental methods of memory allocation are static and dynamic memory allocation. Static memory allocation method assigns the memomy allocation","og_url":"https:\/\/binaryterms.com\/static-and-dynamic-memory-allocation.html","og_site_name":"Binary Terms","article_published_time":"2019-08-13T10:42:38+00:00","article_modified_time":"2022-05-26T06:16:22+00:00","og_image":[{"url":"https:\/\/binaryterms.com\/wp-content\/uploads\/2019\/08\/Memory-Allocation.jpg","type":"","width":"","height":""}],"author":"Neha T","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Neha T","Estimated reading time":"6 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/binaryterms.com\/static-and-dynamic-memory-allocation.html#article","isPartOf":{"@id":"https:\/\/binaryterms.com\/static-and-dynamic-memory-allocation.html"},"author":{"name":"Neha T","@id":"https:\/\/binaryterms.com\/#\/schema\/person\/e495f1d57f5c0a4c521cc3dba95661fe"},"headline":"Memory Allocation","datePublished":"2019-08-13T10:42:38+00:00","dateModified":"2022-05-26T06:16:22+00:00","mainEntityOfPage":{"@id":"https:\/\/binaryterms.com\/static-and-dynamic-memory-allocation.html"},"wordCount":1196,"commentCount":4,"publisher":{"@id":"https:\/\/binaryterms.com\/#organization"},"image":{"@id":"https:\/\/binaryterms.com\/static-and-dynamic-memory-allocation.html#primaryimage"},"thumbnailUrl":"https:\/\/binaryterms.com\/wp-content\/uploads\/2019\/08\/Memory-Allocation.jpg","articleSection":["Operating System"],"inLanguage":"en-GB","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/binaryterms.com\/static-and-dynamic-memory-allocation.html#respond"]}]},{"@type":"WebPage","@id":"https:\/\/binaryterms.com\/static-and-dynamic-memory-allocation.html","url":"https:\/\/binaryterms.com\/static-and-dynamic-memory-allocation.html","name":"What is Memory Allocation in Operating System? Static and Dynamic Memory Allocation - Binary Terms","isPartOf":{"@id":"https:\/\/binaryterms.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/binaryterms.com\/static-and-dynamic-memory-allocation.html#primaryimage"},"image":{"@id":"https:\/\/binaryterms.com\/static-and-dynamic-memory-allocation.html#primaryimage"},"thumbnailUrl":"https:\/\/binaryterms.com\/wp-content\/uploads\/2019\/08\/Memory-Allocation.jpg","datePublished":"2019-08-13T10:42:38+00:00","dateModified":"2022-05-26T06:16:22+00:00","description":"The two fundamental methods of memory allocation are static and dynamic memory allocation. Static memory allocation method assigns the memomy allocation","breadcrumb":{"@id":"https:\/\/binaryterms.com\/static-and-dynamic-memory-allocation.html#breadcrumb"},"inLanguage":"en-GB","potentialAction":[{"@type":"ReadAction","target":["https:\/\/binaryterms.com\/static-and-dynamic-memory-allocation.html"]}]},{"@type":"ImageObject","inLanguage":"en-GB","@id":"https:\/\/binaryterms.com\/static-and-dynamic-memory-allocation.html#primaryimage","url":"https:\/\/binaryterms.com\/wp-content\/uploads\/2019\/08\/Memory-Allocation.jpg","contentUrl":"https:\/\/binaryterms.com\/wp-content\/uploads\/2019\/08\/Memory-Allocation.jpg","width":600,"height":334,"caption":"Memory Allocation"},{"@type":"BreadcrumbList","@id":"https:\/\/binaryterms.com\/static-and-dynamic-memory-allocation.html#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/binaryterms.com\/"},{"@type":"ListItem","position":2,"name":"Memory Allocation"}]},{"@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\/177","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=177"}],"version-history":[{"count":4,"href":"https:\/\/binaryterms.com\/wp-json\/wp\/v2\/posts\/177\/revisions"}],"predecessor-version":[{"id":3574,"href":"https:\/\/binaryterms.com\/wp-json\/wp\/v2\/posts\/177\/revisions\/3574"}],"wp:attachment":[{"href":"https:\/\/binaryterms.com\/wp-json\/wp\/v2\/media?parent=177"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/binaryterms.com\/wp-json\/wp\/v2\/categories?post=177"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/binaryterms.com\/wp-json\/wp\/v2\/tags?post=177"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}