{"id":"https://openalex.org/W3137263380","doi":"https://doi.org/10.1109/cgo51591.2021.9370313","title":"Cinnamon: A Domain-Specific Language for Binary Profiling and Monitoring","display_name":"Cinnamon: A Domain-Specific Language for Binary Profiling and Monitoring","publication_year":2021,"publication_date":"2021-02-27","ids":{"openalex":"https://openalex.org/W3137263380","doi":"https://doi.org/10.1109/cgo51591.2021.9370313","mag":"3137263380"},"language":"en","primary_location":{"id":"doi:10.1109/cgo51591.2021.9370313","is_oa":false,"landing_page_url":"https://doi.org/10.1109/cgo51591.2021.9370313","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"2021 IEEE/ACM International Symposium on Code Generation and Optimization (CGO)","raw_type":"proceedings-article"},"type":"article","indexed_in":["crossref","datacite"],"open_access":{"is_oa":true,"oa_status":"green","oa_url":"https://figshare.com/articles/conference_contribution/Cinnamon_a_domain-specific_language_for_binary_profiling_and_monitoring/23481086","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5101104555","display_name":"Mahwish Arif","orcid":null},"institutions":[{"id":"https://openalex.org/I241749","display_name":"University of Cambridge","ror":"https://ror.org/013meh722","country_code":"GB","type":"education","lineage":["https://openalex.org/I241749"]}],"countries":["GB"],"is_corresponding":true,"raw_author_name":"Mahwish Arif","raw_affiliation_strings":["University of Cambridge,Cambridge,UK","University of Cambridge, Cambridge, UK"],"affiliations":[{"raw_affiliation_string":"University of Cambridge,Cambridge,UK","institution_ids":["https://openalex.org/I241749"]},{"raw_affiliation_string":"University of Cambridge, Cambridge, UK","institution_ids":["https://openalex.org/I241749"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5042675306","display_name":"Ruoyu Zhou","orcid":"https://orcid.org/0000-0002-3403-2022"},"institutions":[{"id":"https://openalex.org/I241749","display_name":"University of Cambridge","ror":"https://ror.org/013meh722","country_code":"GB","type":"education","lineage":["https://openalex.org/I241749"]}],"countries":["GB"],"is_corresponding":false,"raw_author_name":"Ruoyu Zhou","raw_affiliation_strings":["University of Cambridge,Cambridge,UK","University of Cambridge, Cambridge, UK"],"affiliations":[{"raw_affiliation_string":"University of Cambridge,Cambridge,UK","institution_ids":["https://openalex.org/I241749"]},{"raw_affiliation_string":"University of Cambridge, Cambridge, UK","institution_ids":["https://openalex.org/I241749"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5022195841","display_name":"Hsi-Ming Ho","orcid":"https://orcid.org/0000-0003-0387-4857"},"institutions":[{"id":"https://openalex.org/I162608824","display_name":"University of Sussex","ror":"https://ror.org/00ayhx656","country_code":"GB","type":"education","lineage":["https://openalex.org/I162608824"]}],"countries":["GB"],"is_corresponding":false,"raw_author_name":"Hsi-Ming Ho","raw_affiliation_strings":["University of Sussex,Brighton,UK","University of Sussex, Brighton, UK"],"affiliations":[{"raw_affiliation_string":"University of Sussex,Brighton,UK","institution_ids":["https://openalex.org/I162608824"]},{"raw_affiliation_string":"University of Sussex, Brighton, UK","institution_ids":["https://openalex.org/I162608824"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5047443783","display_name":"Timothy M. Jones","orcid":"https://orcid.org/0000-0002-4114-7661"},"institutions":[{"id":"https://openalex.org/I241749","display_name":"University of Cambridge","ror":"https://ror.org/013meh722","country_code":"GB","type":"education","lineage":["https://openalex.org/I241749"]}],"countries":["GB"],"is_corresponding":false,"raw_author_name":"Timothy M. Jones","raw_affiliation_strings":["University of Cambridge,Cambridge,UK","University of Cambridge, Cambridge, UK"],"affiliations":[{"raw_affiliation_string":"University of Cambridge,Cambridge,UK","institution_ids":["https://openalex.org/I241749"]},{"raw_affiliation_string":"University of Cambridge, Cambridge, UK","institution_ids":["https://openalex.org/I241749"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":4,"corresponding_author_ids":["https://openalex.org/A5101104555"],"corresponding_institution_ids":["https://openalex.org/I241749"],"apc_list":null,"apc_paid":null,"fwci":0.2799,"has_fulltext":false,"cited_by_count":3,"citation_normalized_percentile":{"value":0.61836188,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":90,"max":95},"biblio":{"volume":null,"issue":null,"first_page":"103","last_page":"114"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T11424","display_name":"Security and Verification in Computing","score":0.9998999834060669,"subfield":{"id":"https://openalex.org/subfields/1702","display_name":"Artificial Intelligence"},"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/T11424","display_name":"Security and Verification in Computing","score":0.9998999834060669,"subfield":{"id":"https://openalex.org/subfields/1702","display_name":"Artificial Intelligence"},"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/T12127","display_name":"Software System Performance and Reliability","score":0.9988999962806702,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8370625972747803},{"id":"https://openalex.org/keywords/profiling","display_name":"Profiling (computer programming)","score":0.731242835521698},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.679694414138794},{"id":"https://openalex.org/keywords/compiler","display_name":"Compiler","score":0.6640120148658752},{"id":"https://openalex.org/keywords/domain-specific-language","display_name":"Domain-specific language","score":0.5882196426391602},{"id":"https://openalex.org/keywords/binary-number","display_name":"Binary number","score":0.5503848195075989},{"id":"https://openalex.org/keywords/programmer","display_name":"Programmer","score":0.5467965006828308},{"id":"https://openalex.org/keywords/static-analysis","display_name":"Static analysis","score":0.5127947926521301},{"id":"https://openalex.org/keywords/instrumentation","display_name":"Instrumentation (computer programming)","score":0.46962738037109375},{"id":"https://openalex.org/keywords/source-code","display_name":"Source code","score":0.43147212266921997},{"id":"https://openalex.org/keywords/rewriting","display_name":"Rewriting","score":0.42980632185935974},{"id":"https://openalex.org/keywords/compile-time","display_name":"Compile time","score":0.41614076495170593}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8370625972747803},{"id":"https://openalex.org/C187191949","wikidata":"https://www.wikidata.org/wiki/Q1138496","display_name":"Profiling (computer programming)","level":2,"score":0.731242835521698},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.679694414138794},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.6640120148658752},{"id":"https://openalex.org/C135257023","wikidata":"https://www.wikidata.org/wiki/Q691358","display_name":"Domain-specific language","level":2,"score":0.5882196426391602},{"id":"https://openalex.org/C48372109","wikidata":"https://www.wikidata.org/wiki/Q3913","display_name":"Binary number","level":2,"score":0.5503848195075989},{"id":"https://openalex.org/C2778514511","wikidata":"https://www.wikidata.org/wiki/Q1374194","display_name":"Programmer","level":2,"score":0.5467965006828308},{"id":"https://openalex.org/C97686452","wikidata":"https://www.wikidata.org/wiki/Q7604153","display_name":"Static analysis","level":2,"score":0.5127947926521301},{"id":"https://openalex.org/C118530786","wikidata":"https://www.wikidata.org/wiki/Q1134732","display_name":"Instrumentation (computer programming)","level":2,"score":0.46962738037109375},{"id":"https://openalex.org/C43126263","wikidata":"https://www.wikidata.org/wiki/Q128751","display_name":"Source code","level":2,"score":0.43147212266921997},{"id":"https://openalex.org/C154690210","wikidata":"https://www.wikidata.org/wiki/Q1668499","display_name":"Rewriting","level":2,"score":0.42980632185935974},{"id":"https://openalex.org/C200833197","wikidata":"https://www.wikidata.org/wiki/Q333707","display_name":"Compile time","level":3,"score":0.41614076495170593},{"id":"https://openalex.org/C94375191","wikidata":"https://www.wikidata.org/wiki/Q11205","display_name":"Arithmetic","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}],"mesh":[],"locations_count":5,"locations":[{"id":"doi:10.1109/cgo51591.2021.9370313","is_oa":false,"landing_page_url":"https://doi.org/10.1109/cgo51591.2021.9370313","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"2021 IEEE/ACM International Symposium on Code Generation and Optimization (CGO)","raw_type":"proceedings-article"},{"id":"pmh:oai:figshare.com:article/23481086","is_oa":true,"landing_page_url":"https://figshare.com/articles/conference_contribution/Cinnamon_a_domain-specific_language_for_binary_profiling_and_monitoring/23481086","pdf_url":null,"source":{"id":"https://openalex.org/S4377196282","display_name":"Figshare","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I4210132348","host_organization_name":"Figshare (United Kingdom)","host_organization_lineage":["https://openalex.org/I4210132348"],"host_organization_lineage_names":[],"type":"repository"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"","raw_type":"Text"},{"id":"pmh:oai:sro.sussex.ac.uk:98050","is_oa":false,"landing_page_url":"http://sro.sussex.ac.uk/id/eprint/98050/1/arif21-cgo.pdf","pdf_url":null,"source":{"id":"https://openalex.org/S4306400129","display_name":"Sussex Research Online (University of Sussex)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I162608824","host_organization_name":"University of Sussex","host_organization_lineage":["https://openalex.org/I162608824"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"","raw_type":"Conference Proceedings"},{"id":"pmh:oai:www.repository.cam.ac.uk:1810/317253","is_oa":false,"landing_page_url":"https://www.repository.cam.ac.uk/handle/1810/317253","pdf_url":null,"source":{"id":"https://openalex.org/S4306401777","display_name":"Apollo (University of Cambridge)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I241749","host_organization_name":"University of Cambridge","host_organization_lineage":["https://openalex.org/I241749"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":"Conference Object"},{"id":"doi:10.17863/cam.64366","is_oa":true,"landing_page_url":"https://doi.org/10.17863/cam.64366","pdf_url":null,"source":{"id":"https://openalex.org/S7407050737","display_name":"Apollo","issn_l":null,"issn":[],"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":null,"is_accepted":false,"is_published":null,"raw_source_name":null,"raw_type":"article"}],"best_oa_location":{"id":"pmh:oai:figshare.com:article/23481086","is_oa":true,"landing_page_url":"https://figshare.com/articles/conference_contribution/Cinnamon_a_domain-specific_language_for_binary_profiling_and_monitoring/23481086","pdf_url":null,"source":{"id":"https://openalex.org/S4377196282","display_name":"Figshare","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I4210132348","host_organization_name":"Figshare (United Kingdom)","host_organization_lineage":["https://openalex.org/I4210132348"],"host_organization_lineage_names":[],"type":"repository"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"","raw_type":"Text"},"sustainable_development_goals":[],"awards":[{"id":"https://openalex.org/G256726586","display_name":null,"funder_award_id":"EP/P020011/1","funder_id":"https://openalex.org/F4320334627","funder_display_name":"Engineering and Physical Sciences Research Council"},{"id":"https://openalex.org/G6886552787","display_name":"Automatic Binary Parallelisation","funder_award_id":"EP/P020011/1","funder_id":"https://openalex.org/F4320334627","funder_display_name":"Engineering and Physical Sciences Research Council"}],"funders":[{"id":"https://openalex.org/F4320334627","display_name":"Engineering and Physical Sciences Research Council","ror":"https://ror.org/0439y7842"}],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":75,"referenced_works":["https://openalex.org/W17195072","https://openalex.org/W145355838","https://openalex.org/W189772944","https://openalex.org/W229745036","https://openalex.org/W1489781149","https://openalex.org/W1522250664","https://openalex.org/W1524336136","https://openalex.org/W1537077670","https://openalex.org/W1543865847","https://openalex.org/W1582456956","https://openalex.org/W1585630533","https://openalex.org/W1744150050","https://openalex.org/W1823377586","https://openalex.org/W1942295288","https://openalex.org/W1988502524","https://openalex.org/W1989988531","https://openalex.org/W1994742583","https://openalex.org/W1997978901","https://openalex.org/W1999129135","https://openalex.org/W2003164052","https://openalex.org/W2008015263","https://openalex.org/W2027832933","https://openalex.org/W2052897520","https://openalex.org/W2056608406","https://openalex.org/W2064452120","https://openalex.org/W2065540707","https://openalex.org/W2078094206","https://openalex.org/W2086010014","https://openalex.org/W2088056808","https://openalex.org/W2100583963","https://openalex.org/W2103742248","https://openalex.org/W2104789737","https://openalex.org/W2111825754","https://openalex.org/W2116729357","https://openalex.org/W2117115928","https://openalex.org/W2119251836","https://openalex.org/W2134633067","https://openalex.org/W2144789413","https://openalex.org/W2153919898","https://openalex.org/W2155943969","https://openalex.org/W2156858199","https://openalex.org/W2157575657","https://openalex.org/W2161992906","https://openalex.org/W2170922286","https://openalex.org/W2281932119","https://openalex.org/W2338369509","https://openalex.org/W2466114212","https://openalex.org/W2514974017","https://openalex.org/W2755555760","https://openalex.org/W2788011716","https://openalex.org/W2789599444","https://openalex.org/W2883504296","https://openalex.org/W2890671018","https://openalex.org/W2914503388","https://openalex.org/W2921932275","https://openalex.org/W2927513058","https://openalex.org/W2952416601","https://openalex.org/W4210676563","https://openalex.org/W4230888301","https://openalex.org/W4236668560","https://openalex.org/W4239813889","https://openalex.org/W4250948891","https://openalex.org/W4285719527","https://openalex.org/W6605980827","https://openalex.org/W6608934814","https://openalex.org/W6629170583","https://openalex.org/W6631155369","https://openalex.org/W6632150593","https://openalex.org/W6637655436","https://openalex.org/W6638559843","https://openalex.org/W6640643845","https://openalex.org/W6675068526","https://openalex.org/W6677520968","https://openalex.org/W6726333596","https://openalex.org/W6759111002"],"related_works":["https://openalex.org/W2103548574","https://openalex.org/W2765641823","https://openalex.org/W4297908618","https://openalex.org/W2064970225","https://openalex.org/W2007413754","https://openalex.org/W2020841721","https://openalex.org/W1535216022","https://openalex.org/W2001303892","https://openalex.org/W4285356836","https://openalex.org/W2111447644"],"abstract_inverted_index":{"Binary":[0],"instrumentation":[1,121,149],"and":[2,13,34,46,50,89,120,125,148,172,193],"rewriting":[3],"frameworks":[4,28,163],"provide":[5],"a":[6,79,103,152,166,189],"powerful":[7],"way":[8],"of":[9,62,64,133,154,185,191],"implementing":[10,99,165],"custom":[11,167],"analysis":[12,119,147],"transformation":[14],"techniques":[15],"for":[16,71,86],"applications":[17],"ranging":[18],"from":[19],"performance":[20],"profiling":[21,88,192],"to":[22,29,41,83,96,117,139,142,159,169,187],"security":[23],"monitoring.":[24,90],"However,":[25],"using":[26],"these":[27,115,178],"write":[30,42,84],"even":[31],"simple":[32],"analyses":[33],"transformations":[35],"is":[36],"non-trivial.":[37],"Developers":[38],"often":[39],"need":[40],"framework-specific":[43],"boilerplate":[44],"code":[45,176],"work":[47],"with":[48],"low-level":[49],"complex":[51,109],"programming":[52],"details.":[53,111],"This":[54],"not":[55],"only":[56],"results":[57],"in":[58,102,128],"hundreds":[59],"(or":[60],"thousands)":[61],"lines":[63],"code,":[65],"but":[66],"also":[67,135],"leaves":[68],"significant":[69],"room":[70],"error.":[72],"To":[73],"address":[74],"this,":[75],"we":[76,156],"introduce":[77],"Cinnamon,":[78],"domain-specific":[80],"language":[81],"designed":[82],"programs":[85,138],"binary":[87,162],"Cinnamon's":[91],"abstractions":[92,116],"allow":[93],"the":[94,129,174,183],"programmer":[95],"focus":[97],"on":[98],"their":[100],"technique":[101],"platform-independent":[104],"way,":[105],"without":[106],"worrying":[107],"about":[108],"lower-level":[110],"Programmers":[112],"can":[113],"use":[114],"perform":[118],"at":[122],"different":[123,161,197],"locations":[124],"granularity":[126],"levels":[127],"binary.":[130],"The":[131],"flexibility":[132],"Cinnamon":[134,158,168,186],"enables":[136],"its":[137],"be":[140],"mapped":[141],"static,":[143],"dynamic":[144],"or":[145],"hybrid":[146],"approaches.":[150],"As":[151],"proof":[153],"concept,":[155],"target":[157],"three":[160],"by":[164],"C/C++":[170],"compiler":[171],"integrating":[173],"generated":[175],"within":[177],"frameworks.":[179],"We":[180],"further":[181],"demonstrate":[182],"ability":[184],"express":[188],"range":[190],"monitoring":[194],"tools":[195],"through":[196],"use-cases.":[198]},"counts_by_year":[{"year":2025,"cited_by_count":1},{"year":2024,"cited_by_count":1},{"year":2023,"cited_by_count":1}],"updated_date":"2026-04-05T17:49:38.594831","created_date":"2025-10-10T00:00:00"}
