{"id":"https://openalex.org/W3023525065","doi":"https://doi.org/10.1145/3342195.3387521","title":"Avoiding scheduler subversion using scheduler-cooperative locks","display_name":"Avoiding scheduler subversion using scheduler-cooperative locks","publication_year":2020,"publication_date":"2020-04-15","ids":{"openalex":"https://openalex.org/W3023525065","doi":"https://doi.org/10.1145/3342195.3387521","mag":"3023525065"},"language":"en","primary_location":{"id":"doi:10.1145/3342195.3387521","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3342195.3387521","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the Fifteenth European Conference on Computer Systems","raw_type":"proceedings-article"},"type":"conference-paper","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/A5017661088","display_name":"Yuvraj Patel","orcid":null},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Yuvraj Patel","raw_affiliation_strings":["University of Wisconsin"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"University of Wisconsin","institution_ids":[]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5041666592","display_name":"Leon Yang","orcid":null},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Leon Yang","raw_affiliation_strings":["University of Wisconsin"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"University of Wisconsin","institution_ids":[]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5015128057","display_name":"Leo Arulraj","orcid":null},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Leo Arulraj","raw_affiliation_strings":["University of Wisconsin"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"University of Wisconsin","institution_ids":[]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5015863866","display_name":"Andrea C. Arpaci-Dusseau","orcid":"https://orcid.org/0000-0001-8618-2738"},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Andrea C. Arpaci-Dusseau","raw_affiliation_strings":["University of Wisconsin"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"University of Wisconsin","institution_ids":[]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5035064257","display_name":"Remzi H. Arpaci-Dusseau","orcid":"https://orcid.org/0000-0001-9965-7704"},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Remzi H. Arpaci-Dusseau","raw_affiliation_strings":["University of Wisconsin"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"University of Wisconsin","institution_ids":[]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5072740120","display_name":"Michael M. Swift","orcid":"https://orcid.org/0000-0002-7926-648X"},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Michael M. Swift","raw_affiliation_strings":["University of Wisconsin"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"University of Wisconsin","institution_ids":[]}]}],"institutions":[],"countries_distinct_count":0,"institutions_distinct_count":0,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":0.6762,"has_fulltext":false,"cited_by_count":5,"citation_normalized_percentile":{"value":0.59725946,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":89,"max":97},"biblio":{"volume":null,"issue":null,"first_page":"1","last_page":"17"},"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.9998999834060669,"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.9998999834060669,"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/T10101","display_name":"Cloud Computing and Resource Management","score":0.9987999796867371,"subfield":{"id":"https://openalex.org/subfields/1710","display_name":"Information Systems"},"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/semaphore","display_name":"Semaphore","score":0.8412494659423828},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8059514164924622},{"id":"https://openalex.org/keywords/thread","display_name":"Thread (computing)","score":0.7735929489135742},{"id":"https://openalex.org/keywords/scheduling","display_name":"Scheduling (production processes)","score":0.6185615062713623},{"id":"https://openalex.org/keywords/linux-kernel","display_name":"Linux kernel","score":0.5706052184104919},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.5667263269424438},{"id":"https://openalex.org/keywords/lock","display_name":"Lock (firearm)","score":0.5227894186973572},{"id":"https://openalex.org/keywords/multithreading","display_name":"Multithreading","score":0.4812171757221222},{"id":"https://openalex.org/keywords/system-call","display_name":"System call","score":0.44976434111595154},{"id":"https://openalex.org/keywords/user-space","display_name":"User space","score":0.4266358017921448},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.39923807978630066},{"id":"https://openalex.org/keywords/distributed-computing","display_name":"Distributed computing","score":0.3645329773426056},{"id":"https://openalex.org/keywords/engineering","display_name":"Engineering","score":0.07174497842788696}],"concepts":[{"id":"https://openalex.org/C95203288","wikidata":"https://www.wikidata.org/wiki/Q221682","display_name":"Semaphore","level":2,"score":0.8412494659423828},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8059514164924622},{"id":"https://openalex.org/C138101251","wikidata":"https://www.wikidata.org/wiki/Q213092","display_name":"Thread (computing)","level":2,"score":0.7735929489135742},{"id":"https://openalex.org/C206729178","wikidata":"https://www.wikidata.org/wiki/Q2271896","display_name":"Scheduling (production processes)","level":2,"score":0.6185615062713623},{"id":"https://openalex.org/C553261973","wikidata":"https://www.wikidata.org/wiki/Q14579","display_name":"Linux kernel","level":2,"score":0.5706052184104919},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.5667263269424438},{"id":"https://openalex.org/C174839445","wikidata":"https://www.wikidata.org/wiki/Q1134386","display_name":"Lock (firearm)","level":2,"score":0.5227894186973572},{"id":"https://openalex.org/C201410400","wikidata":"https://www.wikidata.org/wiki/Q1064412","display_name":"Multithreading","level":3,"score":0.4812171757221222},{"id":"https://openalex.org/C2778579508","wikidata":"https://www.wikidata.org/wiki/Q722192","display_name":"System call","level":2,"score":0.44976434111595154},{"id":"https://openalex.org/C2775877400","wikidata":"https://www.wikidata.org/wiki/Q1142183","display_name":"User space","level":2,"score":0.4266358017921448},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.39923807978630066},{"id":"https://openalex.org/C120314980","wikidata":"https://www.wikidata.org/wiki/Q180634","display_name":"Distributed computing","level":1,"score":0.3645329773426056},{"id":"https://openalex.org/C127413603","wikidata":"https://www.wikidata.org/wiki/Q11023","display_name":"Engineering","level":0,"score":0.07174497842788696},{"id":"https://openalex.org/C21547014","wikidata":"https://www.wikidata.org/wiki/Q1423657","display_name":"Operations management","level":1,"score":0.0},{"id":"https://openalex.org/C78519656","wikidata":"https://www.wikidata.org/wiki/Q101333","display_name":"Mechanical engineering","level":1,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/3342195.3387521","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3342195.3387521","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the Fifteenth European Conference on Computer Systems","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[{"id":"https://openalex.org/G604646414","display_name":null,"funder_award_id":"CNS-1421033, CNS-1763810, CNS-1838733","funder_id":"https://openalex.org/F4320309856","funder_display_name":"National Youth Science Foundation"}],"funders":[{"id":"https://openalex.org/F4320309856","display_name":"National Youth Science Foundation","ror":"https://ror.org/054yz2f06"}],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":50,"referenced_works":["https://openalex.org/W149998097","https://openalex.org/W1490153164","https://openalex.org/W1598001232","https://openalex.org/W1630733292","https://openalex.org/W1681426122","https://openalex.org/W1706983970","https://openalex.org/W1980747862","https://openalex.org/W1982060773","https://openalex.org/W1999052752","https://openalex.org/W2001738739","https://openalex.org/W2006421781","https://openalex.org/W2015574046","https://openalex.org/W2031844067","https://openalex.org/W2033386847","https://openalex.org/W2049013629","https://openalex.org/W2069278684","https://openalex.org/W2080484306","https://openalex.org/W2081461624","https://openalex.org/W2081904683","https://openalex.org/W2085407655","https://openalex.org/W2093127332","https://openalex.org/W2100817684","https://openalex.org/W2100844052","https://openalex.org/W2106341902","https://openalex.org/W2111087562","https://openalex.org/W2114375246","https://openalex.org/W2130621106","https://openalex.org/W2133883933","https://openalex.org/W2136545991","https://openalex.org/W2138404963","https://openalex.org/W2144141804","https://openalex.org/W2147323861","https://openalex.org/W2160293203","https://openalex.org/W2163961697","https://openalex.org/W2227501301","https://openalex.org/W2279278846","https://openalex.org/W2409236379","https://openalex.org/W2412976325","https://openalex.org/W2490675794","https://openalex.org/W2520381032","https://openalex.org/W2560215910","https://openalex.org/W2573173402","https://openalex.org/W2648490249","https://openalex.org/W2772129309","https://openalex.org/W2809782140","https://openalex.org/W2963951263","https://openalex.org/W2995394804","https://openalex.org/W4234562516","https://openalex.org/W4236890050","https://openalex.org/W6673819220"],"related_works":["https://openalex.org/W2365741265","https://openalex.org/W2369027488","https://openalex.org/W2368907619","https://openalex.org/W2349507549","https://openalex.org/W2388160063","https://openalex.org/W2348775109","https://openalex.org/W2358779924","https://openalex.org/W2537983160","https://openalex.org/W2087825597","https://openalex.org/W4362576811"],"abstract_inverted_index":{"We":[0,75,104],"introduce":[1,24],"the":[2,73,106,118,143],"scheduler":[3],"subversion":[4],"problem,":[5,22],"where":[6],"lock":[7,36,65,92,96,127,137],"usage":[8,37,128],"patterns":[9],"determine":[10],"which":[11,68],"thread":[12,70,134],"runs,":[13],"thereby":[14],"subverting":[15],"CPU":[16,144],"scheduling":[17,43],"goals.":[18],"To":[19],"mitigate":[20],"this":[21],"we":[23,148],"Scheduler-Cooperative":[25],"Locks":[26],"(SCLs),":[27],"a":[28,89,94,99],"new":[29],"family":[30],"of":[31,108,126,142],"locking":[32],"primitives":[33],"that":[34,83,132,139,150],"controls":[35],"and":[38,77,98,115,117,154],"thus":[39],"aligns":[40],"with":[41,86,158],"system-wide":[42],"goals;":[44],"our":[45],"initial":[46],"work":[47,84],"focuses":[48],"on":[49],"proportional":[50,136],"share":[51],"schedulers.":[52],"Unlike":[53],"existing":[54],"locks,":[55],"SCLs":[56,109,130,151],"provide":[57],"an":[58],"equal":[59],"(or":[60],"proportional)":[61],"time":[62],"window":[63],"called":[64],"opportunity":[66],"within":[67],"each":[69,133],"can":[71],"acquire":[72],"lock.":[74],"design":[76],"implement":[78],"three":[79,123],"different":[80],"scheduler-cooperative":[81],"locks":[82],"well":[85],"proportional-share":[87],"schedulers:":[88],"user-level":[90],"mutex":[91],"(u-SCL),":[93],"reader-writer":[95],"(RW-SCL),":[97],"simplified":[100],"kernel":[101],"implementation":[102],"(k-SCL).":[103],"demonstrate":[105],"effectiveness":[107],"in":[110],"two":[111],"user-space":[112],"applications":[113],"(UpScaleDB":[114],"KyotoCabinet)":[116],"Linux":[119],"kernel.":[120],"In":[121],"all":[122],"cases,":[124],"regardless":[125],"patterns,":[129],"ensure":[131],"receives":[135],"allocations":[138],"match":[140],"those":[141],"scheduler.":[145],"Using":[146],"microbenchmarks,":[147],"show":[149],"are":[152],"efficient":[153],"achieve":[155],"high":[156],"performance":[157],"minimal":[159],"overhead":[160],"under":[161],"extreme":[162],"workloads.":[163]},"counts_by_year":[{"year":2026,"cited_by_count":1},{"year":2025,"cited_by_count":1},{"year":2022,"cited_by_count":1},{"year":2021,"cited_by_count":2}],"updated_date":"2026-07-29T14:22:42.915294","created_date":"2025-10-10T00:00:00"}
