{"id":"https://openalex.org/W2531616995","doi":"https://doi.org/10.23919/date.2018.8341980","title":"Verification of tree-based hierarchical read-copy update in the Linux kernel","display_name":"Verification of tree-based hierarchical read-copy update in the Linux kernel","publication_year":2018,"publication_date":"2018-03-01","ids":{"openalex":"https://openalex.org/W2531616995","doi":"https://doi.org/10.23919/date.2018.8341980","mag":"2531616995"},"language":"en","primary_location":{"id":"doi:10.23919/date.2018.8341980","is_oa":false,"landing_page_url":"https://doi.org/10.23919/date.2018.8341980","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"2018 Design, Automation &amp; Test in Europe Conference &amp; Exhibition (DATE)","raw_type":"proceedings-article"},"type":"article","indexed_in":["arxiv","crossref"],"open_access":{"is_oa":true,"oa_status":"green","oa_url":"https://arxiv.org/pdf/1610.03052","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":null,"display_name":"Lihao Liang","orcid":null},"institutions":[{"id":"https://openalex.org/I40120149","display_name":"University of Oxford","ror":"https://ror.org/052gg0110","country_code":"GB","type":"education","lineage":["https://openalex.org/I40120149"]}],"countries":["GB"],"is_corresponding":true,"raw_author_name":"Lihao Liang","raw_affiliation_strings":["University of Oxford"],"affiliations":[{"raw_affiliation_string":"University of Oxford","institution_ids":["https://openalex.org/I40120149"]}]},{"author_position":"middle","author":{"id":null,"display_name":"Paul E. McKenney","orcid":null},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Paul E. McKenney","raw_affiliation_strings":["IBM Linux Technology Center"],"affiliations":[{"raw_affiliation_string":"IBM Linux Technology Center","institution_ids":[]}]},{"author_position":"middle","author":{"id":null,"display_name":"Daniel Kroening","orcid":null},"institutions":[{"id":"https://openalex.org/I40120149","display_name":"University of Oxford","ror":"https://ror.org/052gg0110","country_code":"GB","type":"education","lineage":["https://openalex.org/I40120149"]}],"countries":["GB"],"is_corresponding":false,"raw_author_name":"Daniel Kroening","raw_affiliation_strings":["University of Oxford"],"affiliations":[{"raw_affiliation_string":"University of Oxford","institution_ids":["https://openalex.org/I40120149"]}]},{"author_position":"last","author":{"id":null,"display_name":"Tom Melham","orcid":null},"institutions":[{"id":"https://openalex.org/I40120149","display_name":"University of Oxford","ror":"https://ror.org/052gg0110","country_code":"GB","type":"education","lineage":["https://openalex.org/I40120149"]}],"countries":["GB"],"is_corresponding":false,"raw_author_name":"Tom Melham","raw_affiliation_strings":["University of Oxford"],"affiliations":[{"raw_affiliation_string":"University of Oxford","institution_ids":["https://openalex.org/I40120149"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":4,"corresponding_author_ids":[],"corresponding_institution_ids":["https://openalex.org/I40120149"],"apc_list":null,"apc_paid":null,"fwci":0.0,"has_fulltext":false,"cited_by_count":2,"citation_normalized_percentile":{"value":0.01138873,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":94,"max":96},"biblio":{"volume":null,"issue":null,"first_page":"61","last_page":"66"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9997000098228455,"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"}},"topics":[{"id":"https://openalex.org/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9997000098228455,"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/T10772","display_name":"Distributed systems and fault tolerance","score":0.9995999932289124,"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/T10933","display_name":"Real-Time Systems Scheduling","score":0.9995999932289124,"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/liveness","display_name":"Liveness","score":0.6065999865531921},{"id":"https://openalex.org/keywords/source-code","display_name":"Source code","score":0.5508000254631042},{"id":"https://openalex.org/keywords/implementation","display_name":"Implementation","score":0.5238999724388123},{"id":"https://openalex.org/keywords/construct","display_name":"Construct (python library)","score":0.5217999815940857},{"id":"https://openalex.org/keywords/linux-kernel","display_name":"Linux kernel","score":0.51419997215271},{"id":"https://openalex.org/keywords/regression-testing","display_name":"Regression testing","score":0.46639999747276306},{"id":"https://openalex.org/keywords/software-verification","display_name":"Software verification","score":0.46299999952316284},{"id":"https://openalex.org/keywords/synchronization","display_name":"Synchronization (alternating current)","score":0.4625999927520752},{"id":"https://openalex.org/keywords/formal-verification","display_name":"Formal verification","score":0.45260000228881836},{"id":"https://openalex.org/keywords/code","display_name":"Code (set theory)","score":0.4404999911785126}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8087000250816345},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.6086999773979187},{"id":"https://openalex.org/C15569618","wikidata":"https://www.wikidata.org/wiki/Q3561421","display_name":"Liveness","level":2,"score":0.6065999865531921},{"id":"https://openalex.org/C43126263","wikidata":"https://www.wikidata.org/wiki/Q128751","display_name":"Source code","level":2,"score":0.5508000254631042},{"id":"https://openalex.org/C26713055","wikidata":"https://www.wikidata.org/wiki/Q245962","display_name":"Implementation","level":2,"score":0.5238999724388123},{"id":"https://openalex.org/C2780801425","wikidata":"https://www.wikidata.org/wiki/Q5164392","display_name":"Construct (python library)","level":2,"score":0.5217999815940857},{"id":"https://openalex.org/C553261973","wikidata":"https://www.wikidata.org/wiki/Q14579","display_name":"Linux kernel","level":2,"score":0.51419997215271},{"id":"https://openalex.org/C161821725","wikidata":"https://www.wikidata.org/wiki/Q917415","display_name":"Regression testing","level":5,"score":0.46639999747276306},{"id":"https://openalex.org/C33054407","wikidata":"https://www.wikidata.org/wiki/Q6504747","display_name":"Software verification","level":5,"score":0.46299999952316284},{"id":"https://openalex.org/C2778562939","wikidata":"https://www.wikidata.org/wiki/Q1298791","display_name":"Synchronization (alternating current)","level":3,"score":0.4625999927520752},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.4555000066757202},{"id":"https://openalex.org/C111498074","wikidata":"https://www.wikidata.org/wiki/Q173326","display_name":"Formal verification","level":2,"score":0.45260000228881836},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.4404999911785126},{"id":"https://openalex.org/C202973057","wikidata":"https://www.wikidata.org/wiki/Q7380130","display_name":"Runtime verification","level":3,"score":0.42570000886917114},{"id":"https://openalex.org/C110251889","wikidata":"https://www.wikidata.org/wiki/Q1569697","display_name":"Model checking","level":2,"score":0.4074000120162964},{"id":"https://openalex.org/C74193536","wikidata":"https://www.wikidata.org/wiki/Q574844","display_name":"Kernel (algebra)","level":2,"score":0.3978999853134155},{"id":"https://openalex.org/C53942775","wikidata":"https://www.wikidata.org/wiki/Q1211721","display_name":"Code coverage","level":3,"score":0.38040000200271606},{"id":"https://openalex.org/C2780586882","wikidata":"https://www.wikidata.org/wiki/Q7520643","display_name":"Simple (philosophy)","level":2,"score":0.35600000619888306},{"id":"https://openalex.org/C192209626","wikidata":"https://www.wikidata.org/wiki/Q190909","display_name":"Focus (optics)","level":2,"score":0.3522000014781952},{"id":"https://openalex.org/C75606506","wikidata":"https://www.wikidata.org/wiki/Q1049183","display_name":"Formal methods","level":2,"score":0.34290000796318054},{"id":"https://openalex.org/C2779639559","wikidata":"https://www.wikidata.org/wiki/Q7661178","display_name":"Symbolic execution","level":3,"score":0.3278000056743622},{"id":"https://openalex.org/C97686452","wikidata":"https://www.wikidata.org/wiki/Q7604153","display_name":"Static analysis","level":2,"score":0.32260000705718994},{"id":"https://openalex.org/C2778579508","wikidata":"https://www.wikidata.org/wiki/Q722192","display_name":"System call","level":2,"score":0.32089999318122864},{"id":"https://openalex.org/C98183937","wikidata":"https://www.wikidata.org/wiki/Q2112188","display_name":"Program analysis","level":2,"score":0.3199999928474426},{"id":"https://openalex.org/C116253237","wikidata":"https://www.wikidata.org/wiki/Q1437424","display_name":"Formal specification","level":2,"score":0.31839999556541443},{"id":"https://openalex.org/C62460635","wikidata":"https://www.wikidata.org/wiki/Q5508853","display_name":"Functional verification","level":3,"score":0.31700000166893005},{"id":"https://openalex.org/C3406870","wikidata":"https://www.wikidata.org/wiki/Q6044160","display_name":"Intelligent verification","level":5,"score":0.31610000133514404},{"id":"https://openalex.org/C154526789","wikidata":"https://www.wikidata.org/wiki/Q157965","display_name":"Object code","level":4,"score":0.29109999537467957},{"id":"https://openalex.org/C119024030","wikidata":"https://www.wikidata.org/wiki/Q759899","display_name":"Call stack","level":3,"score":0.28540000319480896},{"id":"https://openalex.org/C142284323","wikidata":"https://www.wikidata.org/wiki/Q7921323","display_name":"Verification","level":5,"score":0.2840000092983246},{"id":"https://openalex.org/C187250869","wikidata":"https://www.wikidata.org/wiki/Q5754573","display_name":"High-level verification","level":5,"score":0.28119999170303345},{"id":"https://openalex.org/C64943373","wikidata":"https://www.wikidata.org/wiki/Q2651003","display_name":"Alpha (finance)","level":4,"score":0.27869999408721924},{"id":"https://openalex.org/C133162039","wikidata":"https://www.wikidata.org/wiki/Q1061077","display_name":"Code generation","level":3,"score":0.27140000462532043},{"id":"https://openalex.org/C149635348","wikidata":"https://www.wikidata.org/wiki/Q193040","display_name":"Embedded system","level":1,"score":0.26660001277923584},{"id":"https://openalex.org/C47434764","wikidata":"https://www.wikidata.org/wiki/Q1770035","display_name":"Dead code","level":5,"score":0.26429998874664307},{"id":"https://openalex.org/C151578736","wikidata":"https://www.wikidata.org/wiki/Q1251793","display_name":"Redundant code","level":4,"score":0.2637999951839447},{"id":"https://openalex.org/C95203288","wikidata":"https://www.wikidata.org/wiki/Q221682","display_name":"Semaphore","level":2,"score":0.26170000433921814},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.25189998745918274}],"mesh":[],"locations_count":2,"locations":[{"id":"doi:10.23919/date.2018.8341980","is_oa":false,"landing_page_url":"https://doi.org/10.23919/date.2018.8341980","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"2018 Design, Automation &amp; Test in Europe Conference &amp; Exhibition (DATE)","raw_type":"proceedings-article"},{"id":"pmh:oai:arXiv.org:1610.03052","is_oa":true,"landing_page_url":"http://arxiv.org/abs/1610.03052","pdf_url":"https://arxiv.org/pdf/1610.03052","source":{"id":"https://openalex.org/S4306400194","display_name":"arXiv (Cornell University)","issn_l":null,"issn":null,"is_oa":true,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I205783295","host_organization_name":"Cornell University","host_organization_lineage":["https://openalex.org/I205783295"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":null,"raw_type":"text"}],"best_oa_location":{"id":"pmh:oai:arXiv.org:1610.03052","is_oa":true,"landing_page_url":"http://arxiv.org/abs/1610.03052","pdf_url":"https://arxiv.org/pdf/1610.03052","source":{"id":"https://openalex.org/S4306400194","display_name":"arXiv (Cornell University)","issn_l":null,"issn":null,"is_oa":true,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I205783295","host_organization_name":"Cornell University","host_organization_lineage":["https://openalex.org/I205783295"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":null,"raw_type":"text"},"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":11,"referenced_works":["https://openalex.org/W20815996","https://openalex.org/W1602156367","https://openalex.org/W1984601992","https://openalex.org/W2015574046","https://openalex.org/W2063666348","https://openalex.org/W2092137580","https://openalex.org/W2115309705","https://openalex.org/W2129538349","https://openalex.org/W2244573518","https://openalex.org/W2734789924","https://openalex.org/W6627943619"],"related_works":[],"abstract_inverted_index":{"Read-Copy":[0],"Update":[1],"(RCU)":[2],"is":[3,27,89],"a":[4,55,94],"scalable,":[5],"high-performance":[6],"Linux-kernel":[7],"synchronization":[8],"mechanism":[9],"that":[10],"runs":[11],"low-overhead":[12],"readers":[13],"concurrently":[14],"with":[15],"updaters.":[16],"Production-quality":[17],"RCU":[18,40,64],"implementations":[19,45],"are":[20],"decidedly":[21],"non-trivial":[22],"and":[23,69,79],"their":[24],"stringent":[25],"validation":[26],"mandatory.":[28],"This":[29],"suggests":[30],"use":[31,47,70],"of":[32,62,85,93,97,107],"formal":[33,36,108],"verification.":[34],"Previous":[35],"verification":[37,92,109],"efforts":[38],"for":[39],"either":[41],"focus":[42],"on":[43],"simple":[44],"or":[46],"modeling":[48],"languages.":[49],"In":[50],"this":[51,88],"paper,":[52],"we":[53],"construct":[54],"model":[56],"directly":[57],"from":[58],"the":[59,66,71,83,90,111],"source":[60,99],"code":[61,100],"Tree":[63],"in":[65],"Linux":[67,112],"kernel,":[68],"CBMC":[72],"program":[73],"analyzer":[74],"to":[75],"verify":[76],"its":[77],"safety":[78],"liveness":[80],"properties.":[81],"To":[82],"best":[84],"our":[86],"knowledge,":[87],"first":[91],"significant":[95],"part":[96],"RCU's":[98],"-":[101],"an":[102],"important":[103],"step":[104],"towards":[105],"integration":[106],"into":[110],"kernel's":[113],"regression":[114],"test":[115],"suite.":[116]},"counts_by_year":[{"year":2023,"cited_by_count":2}],"updated_date":"2026-03-20T23:20:44.827607","created_date":"2016-10-21T00:00:00"}
