{"id":"https://openalex.org/W2158739113","doi":"https://doi.org/10.1145/1011767.1011774","title":"An almost non-blocking stack","display_name":"An almost non-blocking stack","publication_year":2004,"publication_date":"2004-07-25","ids":{"openalex":"https://openalex.org/W2158739113","doi":"https://doi.org/10.1145/1011767.1011774","mag":"2158739113"},"language":"en","primary_location":{"id":"doi:10.1145/1011767.1011774","is_oa":false,"landing_page_url":"https://doi.org/10.1145/1011767.1011774","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the twenty-third annual ACM symposium on Principles of distributed computing","raw_type":"proceedings-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":false,"oa_status":"closed","oa_url":null,"any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5111851229","display_name":"Hans\u2010J. Boehm","orcid":null},"institutions":[{"id":"https://openalex.org/I1324840837","display_name":"Hewlett-Packard (United States)","ror":"https://ror.org/059rn9488","country_code":"US","type":"company","lineage":["https://openalex.org/I1324840837"]}],"countries":["US"],"is_corresponding":true,"raw_author_name":"Hans-J. Boehm","raw_affiliation_strings":["HP Laboratories, Palo Alto, CA"],"affiliations":[{"raw_affiliation_string":"HP Laboratories, Palo Alto, CA","institution_ids":["https://openalex.org/I1324840837"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":1,"corresponding_author_ids":["https://openalex.org/A5111851229"],"corresponding_institution_ids":["https://openalex.org/I1324840837"],"apc_list":null,"apc_paid":null,"fwci":1.9925,"has_fulltext":false,"cited_by_count":11,"citation_normalized_percentile":{"value":0.89275102,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":94,"max":95},"biblio":{"volume":null,"issue":null,"first_page":"40","last_page":"49"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10772","display_name":"Distributed systems and fault tolerance","score":0.9998999834060669,"subfield":{"id":"https://openalex.org/subfields/1705","display_name":"Computer Networks and Communications"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},"topics":[{"id":"https://openalex.org/T10772","display_name":"Distributed systems and fault tolerance","score":0.9998999834060669,"subfield":{"id":"https://openalex.org/subfields/1705","display_name":"Computer Networks and Communications"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9987000226974487,"subfield":{"id":"https://openalex.org/subfields/1708","display_name":"Hardware and Architecture"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T11005","display_name":"Radiation Effects in Electronics","score":0.9891999959945679,"subfield":{"id":"https://openalex.org/subfields/2208","display_name":"Electrical and Electronic Engineering"},"field":{"id":"https://openalex.org/fields/22","display_name":"Engineering"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}}],"keywords":[{"id":"https://openalex.org/keywords/interrupt","display_name":"Interrupt","score":0.831763744354248},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8238622546195984},{"id":"https://openalex.org/keywords/blocking","display_name":"Blocking (statistics)","score":0.7531951665878296},{"id":"https://openalex.org/keywords/swap","display_name":"Swap (finance)","score":0.5891321897506714},{"id":"https://openalex.org/keywords/data-structure","display_name":"Data structure","score":0.5234056115150452},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.4994807243347168},{"id":"https://openalex.org/keywords/block","display_name":"Block (permutation group theory)","score":0.41781747341156006},{"id":"https://openalex.org/keywords/embedded-system","display_name":"Embedded system","score":0.29242438077926636},{"id":"https://openalex.org/keywords/computer-network","display_name":"Computer network","score":0.26321321725845337},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.2592131495475769}],"concepts":[{"id":"https://openalex.org/C41661131","wikidata":"https://www.wikidata.org/wiki/Q220764","display_name":"Interrupt","level":3,"score":0.831763744354248},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8238622546195984},{"id":"https://openalex.org/C144745244","wikidata":"https://www.wikidata.org/wiki/Q4927286","display_name":"Blocking (statistics)","level":2,"score":0.7531951665878296},{"id":"https://openalex.org/C99821215","wikidata":"https://www.wikidata.org/wiki/Q1136583","display_name":"Swap (finance)","level":2,"score":0.5891321897506714},{"id":"https://openalex.org/C162319229","wikidata":"https://www.wikidata.org/wiki/Q175263","display_name":"Data structure","level":2,"score":0.5234056115150452},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.4994807243347168},{"id":"https://openalex.org/C2777210771","wikidata":"https://www.wikidata.org/wiki/Q4927124","display_name":"Block (permutation group theory)","level":2,"score":0.41781747341156006},{"id":"https://openalex.org/C149635348","wikidata":"https://www.wikidata.org/wiki/Q193040","display_name":"Embedded system","level":1,"score":0.29242438077926636},{"id":"https://openalex.org/C31258907","wikidata":"https://www.wikidata.org/wiki/Q1301371","display_name":"Computer network","level":1,"score":0.26321321725845337},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.2592131495475769},{"id":"https://openalex.org/C162324750","wikidata":"https://www.wikidata.org/wiki/Q8134","display_name":"Economics","level":0,"score":0.0},{"id":"https://openalex.org/C10138342","wikidata":"https://www.wikidata.org/wiki/Q43015","display_name":"Finance","level":1,"score":0.0},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.0},{"id":"https://openalex.org/C2524010","wikidata":"https://www.wikidata.org/wiki/Q8087","display_name":"Geometry","level":1,"score":0.0},{"id":"https://openalex.org/C173018170","wikidata":"https://www.wikidata.org/wiki/Q165678","display_name":"Microcontroller","level":2,"score":0.0}],"mesh":[],"locations_count":2,"locations":[{"id":"doi:10.1145/1011767.1011774","is_oa":false,"landing_page_url":"https://doi.org/10.1145/1011767.1011774","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the twenty-third annual ACM symposium on Principles of distributed computing","raw_type":"proceedings-article"},{"id":"pmh:oai:CiteSeerX.psu:10.1.1.58.5477","is_oa":false,"landing_page_url":"http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.58.5477","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"http://www.hpl.hp.com/techreports/2004/HPL-2004-105.pdf","raw_type":"text"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":16,"referenced_works":["https://openalex.org/W1520380662","https://openalex.org/W1920529013","https://openalex.org/W1996931099","https://openalex.org/W2013021588","https://openalex.org/W2034485694","https://openalex.org/W2054739713","https://openalex.org/W2062678317","https://openalex.org/W2072035527","https://openalex.org/W2085407655","https://openalex.org/W2101939036","https://openalex.org/W2127976210","https://openalex.org/W2130121613","https://openalex.org/W2157490964","https://openalex.org/W2167282885","https://openalex.org/W2209348166","https://openalex.org/W3144575512"],"related_works":["https://openalex.org/W4288898221","https://openalex.org/W2358308054","https://openalex.org/W2391783641","https://openalex.org/W2109690896","https://openalex.org/W4231875098","https://openalex.org/W4230529130","https://openalex.org/W2391365542","https://openalex.org/W2361731841","https://openalex.org/W2386367690","https://openalex.org/W4243198198"],"abstract_inverted_index":{"Non-blocking":[0],"data":[1,33,52,66],"structure":[2],"implementations":[3],"can":[4,121],"be":[5],"useful":[6],"for":[7,69],"performance":[8,137],"and":[9,133],"fault-tolerance":[10],"reasons.":[11],"And":[12],"they":[13],"are":[14],"far":[15],"easier":[16],"to":[17,47],"use":[18],"correctly":[19],"in":[20],"a":[21,27,89,101,109,115,123],"signal-":[22],"or":[23,71,126],"interrupt-handler":[24],"context.We":[25],"describe":[26],"weaker":[28],"class":[29],"of":[30,44,60,63,141],"\"almost":[31],"non-blocking\"":[32],"structures,":[34,67],"which":[35,81,106],"block":[36],"only":[37],"if":[38],"more":[39],"than":[40],"some":[41],"number":[42],"N":[43],"threads":[45],"attempt":[46],"simultaneously":[48],"access":[49],"the":[50,61,97],"same":[51,98],"structure.":[53],"We":[54],"argue":[55],"that":[56,129],"this":[57],"gives":[58],"much":[59],"benefit":[62],"fully":[64,103],"non-blocking":[65,77,104],"particularly":[68],"signal":[70],"interrupt":[72],"handlers.We":[73],"present":[74],"an":[75],"almost":[76],"linked":[78],"stack":[79,125],"implementation":[80],"is":[82,130],"efficiently":[83],"implementable":[84],"even":[85],"on":[86,108],"hardware":[87],"providing":[88,96],"single":[90],"word":[91],"compare-and-swap":[92,111,142],"operation,":[93],"while":[94],"potentially":[95],"interface":[99],"as":[100],"well-known":[102],"solution,":[105],"relies":[107],"double-width":[110],"instruction.":[112,143],"By":[113],"making":[114],"platform-dependent":[116],"choice":[117],"between":[118],"these,":[119],"we":[120],"implement":[122],"signal-handler-safe":[124],"free-list":[127],"abstraction":[128],"both":[131],"portable":[132],"exhibits":[134],"uniformly":[135],"high":[136],"with":[138],"any":[139],"flavor":[140]},"counts_by_year":[{"year":2021,"cited_by_count":2}],"updated_date":"2026-04-04T16:13:02.066488","created_date":"2025-10-10T00:00:00"}
