{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2023,11,13]],"date-time":"2023-11-13T00:32:30Z","timestamp":1699835550500},"reference-count":11,"publisher":"Wiley","issue":"1","license":[{"start":{"date-parts":[[2006,10,27]],"date-time":"2006-10-27T00:00:00Z","timestamp":1161907200000},"content-version":"vor","delay-in-days":11622,"URL":"http:\/\/onlinelibrary.wiley.com\/termsAndConditions#vor"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Softw Pract Exp"],"published-print":{"date-parts":[[1975,1]]},"abstract":"<jats:title>Abstract<\/jats:title><jats:p>A brief account of certain extensions to the basic definition of semaphores is given. An implementation of semaphores as controllers of buffer queues is described and it is shown how this was used to solve an actual synchronization problem.<\/jats:p>","DOI":"10.1002\/spe.4380050106","type":"journal-article","created":{"date-parts":[[2006,11,17]],"date-time":"2006-11-17T13:44:16Z","timestamp":1163771056000},"page":"51-64","source":"Crossref","is-referenced-by-count":2,"title":["Solving synchronization problems using semaphores"],"prefix":"10.1002","volume":"5","author":[{"given":"J. E.","family":"Radue","sequence":"first","affiliation":[]},{"given":"J. M.","family":"Mullins","sequence":"additional","affiliation":[]}],"member":"311","published-online":{"date-parts":[[2006,10,27]]},"reference":[{"key":"e_1_2_1_2_2","volume-title":"Programming Languages","author":"Dijkstra E. W.","year":"1968"},{"key":"e_1_2_1_3_2","doi-asserted-by":"publisher","DOI":"10.1145\/363095.363143"},{"key":"e_1_2_1_4_2","doi-asserted-by":"publisher","DOI":"10.1145\/363219.363222"},{"key":"e_1_2_1_5_2","doi-asserted-by":"publisher","DOI":"10.1145\/361268.361277"},{"key":"e_1_2_1_6_2","doi-asserted-by":"publisher","DOI":"10.1145\/775260.775262"},{"key":"e_1_2_1_7_2","volume-title":"Computer Operating Systems","author":"Barron D. W.","year":"1971"},{"key":"e_1_2_1_8_2","doi-asserted-by":"publisher","DOI":"10.1016\/0020-0190(72)90035-X"},{"key":"e_1_2_1_9_2","doi-asserted-by":"publisher","DOI":"10.1145\/362759.362813"},{"key":"e_1_2_1_10_2","volume-title":"The Art of Computer Programming","author":"Knuth D. E.","year":"1968"},{"key":"e_1_2_1_11_2","doi-asserted-by":"publisher","DOI":"10.1145\/356622.356624"},{"key":"e_1_2_1_12_2","doi-asserted-by":"publisher","DOI":"10.1145\/987059.987065"}],"container-title":["Software: Practice and Experience"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/api.wiley.com\/onlinelibrary\/tdm\/v1\/articles\/10.1002%2Fspe.4380050106","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/onlinelibrary.wiley.com\/doi\/pdf\/10.1002\/spe.4380050106","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2023,11,12]],"date-time":"2023-11-12T05:46:43Z","timestamp":1699768003000},"score":1,"resource":{"primary":{"URL":"https:\/\/onlinelibrary.wiley.com\/doi\/10.1002\/spe.4380050106"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[1975,1]]},"references-count":11,"journal-issue":{"issue":"1","published-print":{"date-parts":[[1975,1]]}},"alternative-id":["10.1002\/spe.4380050106"],"URL":"https:\/\/doi.org\/10.1002\/spe.4380050106","archive":["Portico"],"relation":{},"ISSN":["0038-0644","1097-024X"],"issn-type":[{"value":"0038-0644","type":"print"},{"value":"1097-024X","type":"electronic"}],"subject":[],"published":{"date-parts":[[1975,1]]}}}