Ontology type: schema:Chapter
2020-08-13
AUTHORS ABSTRACTBuilding software packages from source is a complex and highly technical process. For this reason, most software comes with build instructions which have both a human-readable and an executable component. The latter in turn requires substantial infrastructure, which helps software authors deal with two major sources of complexity: first, generation and management of various build artefacts and their dependencies, and second, the differences between platforms, compiler toolchains and build environments.This poses a significant problem for white-box analysis tools, which often require that the source code of the program under test is compiled into an intermediate format, like the LLVM IR. In this paper, we present divcc, a drop-in replacement for C and C++ compilation tools which transparently fits into existing build tools and software deployment solutions. Additionally, divcc generates intermediate and native code in a single pass, ensuring that the final executable is built from the intermediate code that is being analysed. More... »
PAGES30-45
Formal Methods. FM 2019 International Workshops
ISBN
978-3-030-54993-0
978-3-030-54994-7
http://scigraph.springernature.com/pub.10.1007/978-3-030-54994-7_4
DOIhttp://dx.doi.org/10.1007/978-3-030-54994-7_4
DIMENSIONShttps://app.dimensions.ai/details/publication/pub.1130075594
JSON-LD is the canonical representation for SciGraph data.
TIP: You can open this SciGraph record using an external JSON-LD service: JSON-LD Playground Google SDTT
[
{
"@context": "https://springernature.github.io/scigraph/jsonld/sgcontext.json",
"about": [
{
"id": "http://purl.org/au-research/vocabulary/anzsrc-for/2008/08",
"inDefinedTermSet": "http://purl.org/au-research/vocabulary/anzsrc-for/2008/",
"name": "Information and Computing Sciences",
"type": "DefinedTerm"
},
{
"id": "http://purl.org/au-research/vocabulary/anzsrc-for/2008/0803",
"inDefinedTermSet": "http://purl.org/au-research/vocabulary/anzsrc-for/2008/",
"name": "Computer Software",
"type": "DefinedTerm"
}
],
"author": [
{
"affiliation": {
"alternateName": "Faculty of Informatics, Masaryk University, Brno, Czech Republic",
"id": "http://www.grid.ac/institutes/grid.10267.32",
"name": [
"Faculty of Informatics, Masaryk University, Brno, Czech Republic"
],
"type": "Organization"
},
"familyName": "Baranov\u00e1",
"givenName": "Zuzana",
"id": "sg:person.015764046444.46",
"sameAs": [
"https://app.dimensions.ai/discover/publication?and_facet_researcher=ur.015764046444.46"
],
"type": "Person"
},
{
"affiliation": {
"alternateName": "Faculty of Informatics, Masaryk University, Brno, Czech Republic",
"id": "http://www.grid.ac/institutes/grid.10267.32",
"name": [
"Faculty of Informatics, Masaryk University, Brno, Czech Republic"
],
"type": "Organization"
},
"familyName": "Ro\u010dkai",
"givenName": "Petr",
"id": "sg:person.07377571657.86",
"sameAs": [
"https://app.dimensions.ai/discover/publication?and_facet_researcher=ur.07377571657.86"
],
"type": "Person"
}
],
"datePublished": "2020-08-13",
"datePublishedReg": "2020-08-13",
"description": "Building software packages from source is a complex and highly technical process. For this reason, most software comes with build instructions which have both a human-readable and an executable component. The latter in turn requires substantial infrastructure, which helps software authors deal with two major sources of complexity: first, generation and management of various build artefacts and their dependencies, and second, the differences between platforms, compiler toolchains and build environments.This poses a significant problem for white-box analysis tools, which often require that the source code of the program under test is compiled into an intermediate format, like the LLVM IR. In this paper, we present divcc, a drop-in replacement for C and C++ compilation tools which transparently fits into existing build tools and software deployment solutions. Additionally, divcc generates intermediate and native code in a single pass, ensuring that the final executable is built from the intermediate code that is being analysed.",
"editor": [
{
"familyName": "Sekerinski",
"givenName": "Emil",
"type": "Person"
},
{
"familyName": "Moreira",
"givenName": "Nelma",
"type": "Person"
},
{
"familyName": "Oliveira",
"givenName": "Jos\u00e9 N.",
"type": "Person"
},
{
"familyName": "Ratiu",
"givenName": "Daniel",
"type": "Person"
},
{
"familyName": "Guidotti",
"givenName": "Riccardo",
"type": "Person"
},
{
"familyName": "Farrell",
"givenName": "Marie",
"type": "Person"
},
{
"familyName": "Luckcuck",
"givenName": "Matt",
"type": "Person"
},
{
"familyName": "Marmsoler",
"givenName": "Diego",
"type": "Person"
},
{
"familyName": "Campos",
"givenName": "Jos\u00e9",
"type": "Person"
},
{
"familyName": "Astarte",
"givenName": "Troy",
"type": "Person"
},
{
"familyName": "Gonnord",
"givenName": "Laure",
"type": "Person"
},
{
"familyName": "Cerone",
"givenName": "Antonio",
"type": "Person"
},
{
"familyName": "Couto",
"givenName": "Luis",
"type": "Person"
},
{
"familyName": "Dongol",
"givenName": "Brijesh",
"type": "Person"
},
{
"familyName": "Kutrib",
"givenName": "Martin",
"type": "Person"
},
{
"familyName": "Monteiro",
"givenName": "Pedro",
"type": "Person"
},
{
"familyName": "Delmas",
"givenName": "David",
"type": "Person"
}
],
"genre": "chapter",
"id": "sg:pub.10.1007/978-3-030-54994-7_4",
"isAccessibleForFree": false,
"isPartOf": {
"isbn": [
"978-3-030-54993-0",
"978-3-030-54994-7"
],
"name": "Formal Methods. FM 2019 International Workshops",
"type": "Book"
},
"keywords": [
"white-box analysis",
"build artifacts",
"compiler toolchain",
"build tools",
"executable components",
"software authors",
"native code",
"deployment solution",
"most software",
"compilation tools",
"LLVM IR",
"source code",
"intermediate code",
"intermediate format",
"build instructions",
"software package",
"analysis tools",
"code",
"technical processes",
"single pass",
"toolchain",
"executables",
"substantial infrastructure",
"tool",
"software",
"infrastructure",
"platform",
"complexity",
"format",
"significant problem",
"artifacts",
"environment",
"package",
"dependency",
"program",
"solution",
"instruction",
"management",
"generation",
"process",
"pass",
"source",
"components",
"authors",
"reasons",
"analysis",
"turn",
"major source",
"test",
"drop",
"replacement",
"differences",
"IR",
"paper",
"problem"
],
"name": "Compiling C and C++ Programs for Dynamic White-Box Analysis",
"pagination": "30-45",
"productId": [
{
"name": "dimensions_id",
"type": "PropertyValue",
"value": [
"pub.1130075594"
]
},
{
"name": "doi",
"type": "PropertyValue",
"value": [
"10.1007/978-3-030-54994-7_4"
]
}
],
"publisher": {
"name": "Springer Nature",
"type": "Organisation"
},
"sameAs": [
"https://doi.org/10.1007/978-3-030-54994-7_4",
"https://app.dimensions.ai/details/publication/pub.1130075594"
],
"sdDataset": "chapters",
"sdDatePublished": "2022-08-04T17:17",
"sdLicense": "https://scigraph.springernature.com/explorer/license/",
"sdPublisher": {
"name": "Springer Nature - SN SciGraph project",
"type": "Organization"
},
"sdSource": "s3://com-springernature-scigraph/baseset/20220804/entities/gbq_results/chapter/chapter_256.jsonl",
"type": "Chapter",
"url": "https://doi.org/10.1007/978-3-030-54994-7_4"
}
]
Download the RDF metadata as: json-ld nt turtle xml License info
JSON-LD is a popular format for linked data which is fully compatible with JSON.
curl -H 'Accept: application/ld+json' 'https://scigraph.springernature.com/pub.10.1007/978-3-030-54994-7_4'
N-Triples is a line-based linked data format ideal for batch operations.
curl -H 'Accept: application/n-triples' 'https://scigraph.springernature.com/pub.10.1007/978-3-030-54994-7_4'
Turtle is a human-readable linked data format.
curl -H 'Accept: text/turtle' 'https://scigraph.springernature.com/pub.10.1007/978-3-030-54994-7_4'
RDF/XML is a standard XML format for linked data.
curl -H 'Accept: application/rdf+xml' 'https://scigraph.springernature.com/pub.10.1007/978-3-030-54994-7_4'
This table displays all metadata directly associated to this object as RDF triples.
201 TRIPLES
22 PREDICATES
79 URIs
72 LITERALS
7 BLANK NODES