{"id":"https://openalex.org/W1970986296","doi":"https://doi.org/10.1145/67386.67423","title":"Linearizable concurrent objects","display_name":"Linearizable concurrent objects","publication_year":1988,"publication_date":"1988-01-01","ids":{"openalex":"https://openalex.org/W1970986296","doi":"https://doi.org/10.1145/67386.67423","mag":"1970986296"},"language":"en","primary_location":{"id":"doi:10.1145/67386.67423","doi":"https://doi.org/10.1145/67386.67423","is_oa":false,"landing_page_url":"https://doi.org/10.1145/67386.67423","pdf_url":null,"source":{"id":"https://openalex.org/S7407105679","display_name":"ACM SIGPLAN Workshop on Object-Based Concurrent Programming","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"listed_in":[],"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"conference"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 1988 ACM SIGPLAN workshop on Object-based concurrent programming -","raw_type":"proceedings-article"},"volume":null,"type":"conference-paper","is_traditional":true,"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/A5086347882","display_name":"Maurice P. Herlihy","orcid":"https://orcid.org/0000-0002-3059-8926","observed_orcids":["https://orcid.org/0000-0002-3059-8926"]},"institutions":[{"id":"https://openalex.org/I74973139","display_name":"Carnegie Mellon University","ror":"https://ror.org/05x2bcf33","country_code":"US","type":"education","lineage":["https://openalex.org/I74973139"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"M. P. Herlihy","raw_affiliation_strings":["Carnegie-Mellon University, Pittsburgh, PA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Carnegie-Mellon University, Pittsburgh, PA","institution_ids":["https://openalex.org/I74973139"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5109134801","display_name":"J.M. Wing","orcid":null,"observed_orcids":[]},"institutions":[{"id":"https://openalex.org/I74973139","display_name":"Carnegie Mellon University","ror":"https://ror.org/05x2bcf33","country_code":"US","type":"education","lineage":["https://openalex.org/I74973139"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"J. M. Wing","raw_affiliation_strings":["Carnegie-Mellon University, Pittsburgh, PA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Carnegie-Mellon University, Pittsburgh, PA","institution_ids":["https://openalex.org/I74973139"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":1,"corresponding_author_ids":[],"corresponding_institution_ids":["https://openalex.org/I74973139"],"apc_list":null,"apc_paid":null,"fwci":1.241,"has_fulltext":false,"cited_by_count":4,"citation_normalized_percentile":{"value":0.76215506,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":null,"biblio":{"volume":null,"issue":null,"first_page":"133","last_page":"135"},"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.989300012588501,"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.989300012588501,"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/T10126","display_name":"Logic, programming, and type systems","score":0.006800000090152025,"subfield":{"id":"https://openalex.org/subfields/1712","display_name":"Software"},"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.0013000000035390258,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/linearizability","display_name":"linearizability","score":0.996999979019165},{"id":"https://openalex.org/keywords/concurrent-objects","display_name":"concurrent objects","score":0.9819999933242798},{"id":"https://openalex.org/keywords/shared-memory-multiprocessors","display_name":"shared-memory multiprocessors","score":0.9589999914169312},{"id":"https://openalex.org/keywords/fifo-queue","display_name":"FIFO queue","score":0.652999997138977},{"id":"https://openalex.org/keywords/abstract-data-types","display_name":"abstract data types","score":0.8610000014305115},{"id":"https://openalex.org/keywords/object-oriented-programming","display_name":"object-oriented programming","score":0.5619999766349792},{"id":"https://openalex.org/keywords/preconditions-and-postconditions","display_name":"preconditions and postconditions","score":0.7440000176429749},{"id":"https://openalex.org/keywords/real-time-systems","display_name":"real-time systems","score":0.5830000042915344},{"id":"https://openalex.org/keywords/data-abstraction","display_name":"data abstraction","score":0.5320000052452087},{"id":"https://openalex.org/keywords/concurrency-semantics","display_name":"concurrency semantics","score":0.3100000023841858}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.6005587577819824},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.3462940752506256}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/67386.67423","doi":"https://doi.org/10.1145/67386.67423","is_oa":false,"landing_page_url":"https://doi.org/10.1145/67386.67423","pdf_url":null,"source":{"id":"https://openalex.org/S7407105679","display_name":"ACM SIGPLAN Workshop on Object-Based Concurrent Programming","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"listed_in":[],"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"conference"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 1988 ACM SIGPLAN workshop on Object-based concurrent programming -","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[],"study_designs":[],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":3,"referenced_works":["https://openalex.org/W1968435785","https://openalex.org/W2015121269","https://openalex.org/W2054739713"],"related_works":["https://openalex.org/W2101939036","https://openalex.org/W7100089933","https://openalex.org/W4211195336","https://openalex.org/W107839404","https://openalex.org/W1489053114","https://openalex.org/W3136504073","https://openalex.org/W2134765000","https://openalex.org/W4249987523","https://openalex.org/W2031348459","https://openalex.org/W4244082722"],"abstract_inverted_index":{"Technological":[0],"advances":[1],"are":[2,38,258,421],"making":[3],"multiprocessors":[4],"more":[5],"readily":[6],"available,":[7],"but":[8],"despite":[9],"impressive":[10],"progress":[11],"at":[12,261,363],"the":[13,28,54,71,110,135,142,152,156,163,175,243,253,319,351,376,425,453,472,484,494,499],"hardware":[14,413],"level,":[15],"it":[16,133,150,178,286,336,439],"is":[17,70,172,179,287,337],"still":[18,384],"difficult":[19],"to":[20,60,64,246,289,304,313,332,339,442,493],"realize":[21],"these":[22,346],"machines'":[23],"potential":[24],"for":[25,56,201,294],"parallelism.":[26],"In":[27,252,275],"sequential":[29,176,216,342,397,454,485,518],"domain,":[30,177],"\u201cobject-oriented\u201d":[31],"programming":[32],"methodologies":[33,63],"based":[34],"on":[35],"data":[36,90,395,408,429],"abstraction":[37,491],"widely":[39],"recognized":[40],"as":[41,81,169,212,399,409],"an":[42,145],"effective":[43],"means":[44,245],"of":[45,102,105,166,215,232,238,255,321,378,406,412,427,436,461,469,474,487,501],"enhancing":[46],"modularity,":[47],"expressibility,":[48],"and":[49,107,158,203,235,248,264,273,317,369,389,444,458,490,497],"correctness.":[50],"Our":[51],"paper":[52],"describes":[53],"foundations":[55],"a":[57,98,103,115,124,128,131,139,184,196,209,213,226,230,236,262,276,291,329,340,379,394,410,433],"new":[58,197,292,480],"approach":[59],"extending":[61],"object-oriented":[62],"highly-concurrent":[65],"shared-memory":[66],"multiprocessors.The":[67],"basic":[68],"idea":[69],"following:":[72],"rather":[73],"than":[74],"communicating":[75],"through":[76,88,220],"low-level":[77],"machine":[78],"constructs":[79],"such":[80,168],"bytes,":[82],"words,":[83],"registers,":[84],"etc.,":[85],"processes":[86,111,217,359],"communicate":[87,113,219],"abstract":[89,428],"structures":[91],"called":[92],"concurrens":[93],"objects.":[94,222],"For":[95],"example,":[96],"in":[97,120,141,174,299],"real-time":[99],"system":[100,211],"consisting":[101],"pool":[104],"sensor":[106,125],"actuator":[108,146],"processes,":[109],"might":[112],"via":[114],"first-in-first-out":[116],"(FIFO)":[117],"queue":[118,157,186],"object":[119,224,476],"shared":[121,221],"memory.":[122],"When":[123],"process":[126,147],"detects":[127],"condition":[129,136],"requiring":[130],"response,":[132],"records":[134],"by":[137,191,270,357,478,507],"enqueuing":[138],"record":[140],"queue.":[143],"Whenever":[144],"becomes":[148],"idle,":[149],"dequeues":[151],"next":[153],"item":[154],"from":[155,452],"takes":[159,360],"appropriate":[160],"action.":[161],"While":[162],"correct":[164],"behavior":[165],"objects":[167,448,506],"FIFO":[170,185],"queues":[171],"well-understood":[173],"not":[180],"so":[181],"obvious":[182],"how":[183],"should":[187,311,324],"behave":[188],"when":[189],"manipulated":[190],"concurrent":[192,206,210,277,330,358,380,447,495,511],"processes.":[193],"We":[194,327],"advocate":[195],"correctness":[198,473,500],"condition,":[199],"linearizability,":[200,462],"implementing":[202],"reasoning":[204],"about":[205,446,466,510,516],"objects.We":[207],"view":[208],"collection":[214],"that":[218,241,250,296,344,353,375,482,503],"Each":[223],"has":[225],"type,":[227],"which":[228],"defines":[229],"set":[231,237],"possible":[233],"values":[234],"primitive":[239],"operations":[240,257,280,295,323,382],"provide":[242],"only":[244,401],"create":[247],"manipulate":[249],"object.":[251],"absence":[254],"concurrency,":[256,437],"executed":[259,283],"one":[260],"time,":[263],"their":[265,517],"meanings":[266],"can":[267,281,383,464],"be":[268,282,325,333,385],"captured":[269],"simple":[271],"pre-":[272,388],"postconditions.":[274],"program,":[278],"however,":[279,391],"concurrently,":[284],"thus":[285],"necessary":[288],"find":[290],"meaning":[293],"may":[297],"overlap":[298],"time.":[300],"Two":[301],"requirements":[302],"seem":[303],"make":[305],"intuitive":[306],"sense:":[307],"First,":[308],"each":[309,354],"operation":[310,355],"appear":[312],"\u201ctake":[314],"effect\u201d":[315],"instantaneously,":[316],"second,":[318],"order":[320],"non-concurrent":[322],"preserved.":[326],"define":[328],"computation":[331,343],"linearizable2":[334],"if":[335],"\u201cequivalent\u201d":[338],"legal":[341],"satisfies":[345],"two":[347,467],"requirements.Informally,":[348],"linearizability":[349,423],"provides":[350],"illusion":[352],"applied":[356],"effect":[361],"instantaneously":[362],"some":[364],"point":[365],"between":[366],"its":[367,370],"invocation":[368],"response.":[371],"This":[372],"property":[373],"implies":[374],"effects":[377],"object's":[381],"specified":[386],"using":[387,449,479],"post-conditions;":[390],"we":[392,463],"interpret":[393],"type's":[396],"specification":[398],"permitting":[400],"linearizable":[402,475,505],"interleavings.":[403],"Thus,":[404],"instead":[405],"treating":[407],"mass":[411],"registers":[414],"or":[415],"single":[416],"large":[417],"database":[418],"whose":[419],"entities":[420],"uninterpreted,":[422],"exploits":[424],"semantics":[426],"types.":[430],"It":[431],"permits":[432,440],"high":[434],"degree":[435],"yet":[438],"programmers":[441],"specify":[443],"reason":[445,465],"known":[450],"techniques":[451,481],"domain.Using":[455],"axiomatic":[456],"specifications":[457],"our":[459],"notion":[460],"kinds":[468],"problems:":[470],"(1)":[471],"implementations":[477],"generalize":[483],"notions":[486],"representation":[488],"invariant":[489],"function":[492],"domain;":[496],"(2)":[498],"computations":[502,512],"use":[504],"transforming":[508],"assertions":[509,515],"into":[513],"simpler":[514],"counterparts.":[519]},"counts_by_year":[],"updated_date":"2026-10-27T15:51:10.671819","created_date":"2016-06-24T00:00:00"}
