会员体验
专利管家(专利管理)
工作空间(专利管理)
风险监控(情报监控)
数据分析(专利分析)
侵权分析(诉讼无效)
联系我们
交流群
官方交流:
QQ群: 891211   
微信请扫码    >>>
现在联系顾问~
热词
    • 1. 发明公开
    • FUNCTION EXECUTION PRIORITIZATION
    • 功能执行优先
    • EP3249538A1
    • 2017-11-29
    • EP17171493.4
    • 2017-05-17
    • Semmle Limited
    • van SCHAIK, Sebastiaan Johannes
    • G06F11/36
    • G06F11/3688G06F8/71G06F8/73G06F11/3608G06F11/3672G06F11/3676G06F11/368
    • Methods, systems, and apparatus, including computer programs encoded on computer storage media, for assigning levels of priority to selected source code functions. One of the methods includes for each selected function, a respective associated first set of functions reachable from the selected function by at most N steps, and a respective associated second set of functions that are each reachable from the selected function by more than N steps and less than M steps are computed. A first partition having all selected functions whose respective associated first set of functions has at least one of the subject functions is computed. A second partition having selected functions not in the first partition and whose respective associated second set of functions has at least one of the subject functions is computed. Selected functions belonging to the first partition are assigned a higher priority than selected functions belonging to the second partition.
    • 包括在计算机存储介质上编码的计算机程序的方法,系统和装置,用于为选定的源代码功能分配优先级。 这些方法之一包括对于每个所选功能,从所选功能至多N步可达到的相应的第一组功能以及各自相关第二功能集,每个功能均可从所选功能达到多于N步,并且 计算少于M个步骤。 计算具有所有选定功能的第一分区,其各自关联的第一组功能具有至少一个主题功能。 计算具有不在第一分区中的选定功能并且其相应的相关联的第二组功能具有至少一个主题功能的第二分区。 属于第一分区的选定功能被分配比属于第二分区的选定功能更高的优先级。
    • 2. 发明公开
    • WRAPPER CALLS IDENTIFICATION
    • IDENTIFIZIERUNG VON INDIREKTEN AUFRUFEN
    • EP3147781A1
    • 2017-03-29
    • EP16191070.8
    • 2016-09-28
    • Semmle Limited
    • CAWLEY, Peter
    • G06F9/445
    • G06F8/37G06F8/41G06F8/423G06F8/433G06F8/48G06F9/445
    • Methods, systems, and apparatus, including computer programs encoded on computer storage media, for automatically determining configuration properties of a compiler. One of the methods includes determining that an executable of the newly created process is a compiler called by the build system to compile source code of a source code file. In response to the determining, a plurality of configuration properties of the compiler called by the build system are determined, the configuration properties including first properties of a plurality of built-in functions of the compiler, second properties of a plurality of built-in types of the compiler, or both. A compiler emulator is configured to emulate the behavior of the compiler called by the build system using the determined configuration properties. Access to the source code is provided to the compiler emulator configured using the determined configuration properties.
    • 方法,系统和装置,包括在计算机存储介质上编码的计算机程序,用于自动确定编译器的配置属性。 其中一种方法包括确定新创建的进程的可执行文件是构建系统调用的编译器来编译源代码文件的源代码。 响应于确定,确定由构建系统调用的编译器的多个配置属性,配置属性包括编译器的多个内置函数的第一属性,多个内置类型的第二属性 的编译器,或两者兼而有之。 编译器仿真器配置为使用确定的配置属性来模拟构建系统调用的编译器的行为。 访问源代码将提供给使用确定的配置属性配置的编译器仿真器。
    • 3. 发明公开
    • COMPUTING TRANSITIVE CLOSURES
    • BERECHNUNG VON TRANSITIVENHÜLLEN
    • EP3136254A1
    • 2017-03-01
    • EP16186253.7
    • 2016-08-30
    • Semmle Limited
    • LYNAGH, Ian
    • G06F17/10G06F17/30
    • G06N7/00G06F17/10
    • Methods, systems, and apparatus, including computer programs encoded on computer storage media, for computing transitive closures of relations. One of the methods includes initializing the transitive closure F of an initial iteration with the tuples in another relation f. New first tuples and new second tuples are iteratively computed until no new first tuples are generated, including: generating new first tuples on each iteration by matching destination elements of tuples in the auxiliary relation of a previous iteration with source elements of tuples in the auxiliary relation of the previous iteration, generating second tuples on each iteration by matching destination elements of the new first tuples with source elements of tuples in F of the previous iteration, and adding the new first tuples and the new second tuples to F of a current iteration.
    • 方法,系统和装置,包括在计算机存储介质上编码的计算机程序,用于计算关系的传递闭包。 其中一种方法包括使用另一关系f中的元组初始化初始迭代的传递闭包F. 新的第一个元组和新的第二个元组被迭代地计算,直到没有新的第一个元组被生成,包括:通过匹配先前迭代的辅助关系中的元组的目标元素与辅助关系中的元组的源元素相匹配,在每个迭代中生成新的第一个元组 通过将新的第一元组的目标元素与先前迭代的F中的元组的源元素相匹配,并且将新的第一元组和新的第二元组添加到当前迭代的F中,在每次迭代上生成第二元组。
    • 5. 发明公开
    • TRANSPARENT PROCESS INTERCEPTION
    • 透皮维生素C
    • EP3171275A1
    • 2017-05-24
    • EP16197499.3
    • 2016-11-07
    • Semmle Limited
    • CAWLEY, Peter
    • G06F11/36
    • G06F9/45558G06F8/433G06F2009/45562
    • Methods, systems, and apparatus, including computer programs encoded on computer storage media, for transparently instrumenting a build system. One of the methods includes setting, in an execution environment of a computer system, a first environment variable that specifies a custom agent to be executed in the execution environment. a request by the system to create a virtual machine using a default create VM function is intercepted by a custom create VM function. The custom create VM function removes the first environment variable from the execution environment, and the custom create VM function executes the default create VM function to invoke a VM having the custom agent without the execution environment having the first environment variable being set.
    • 方法,系统和装置,包括在计算机存储介质上编码的计算机程序,用于透明地装配构建系统。 其中一种方法包括在计算机系统的执行环境中设置指定要在执行环境中执行的定制代理的第一环境变量。 系统使用默认创建VM功能创建虚拟机的请求被自定义创建VM功能拦截。 自定义创建VM功能从执行环境中删除第一个环境变量,并且自定义创建VM功能将执行默认的创建VM功能,以调用具有自定义代理的虚拟机,而不执行设置了第一个环境变量的执行环境。
    • 6. 发明公开
    • IDENTIFYING SOURCE CODE USED TO BUILD EXECUTABLE FILES
    • IDENTIFYING未使用的可执行程序源代码的形成
    • EP3035191A1
    • 2016-06-22
    • EP15200803.3
    • 2015-12-17
    • Semmle Limited
    • CAWLEY, Peter
    • G06F9/445G06F11/36G06F9/44
    • Methods, systems, and apparatus, including computer programs encoded on computer storage media, for identifying source code used to build executable. One of the methods includes determining that a first newly created process is a compiler, the compiler being invoked to compile a source code file; after the compiler exits, generating a first hash value of an object file generated by the compiler; generating an object artifact that identifies the source code file and includes the first hash value of contents of the object file generated by the compiler; determining that the second newly created process is a linker, the linker being invoked to generate an executable file from one or more object files; generating a link artifact that includes respective hash values of each of the one or more object files used to generate the executable file; and providing the link artifact and object artifact to a static analysis system.
    • 方法,系统和装置,包括编码在计算机存储介质,用于鉴定用于构建可执行的源代码的计算机程序。 其中一种方法包括确定性挖掘做了第一新创建的进程是一个编译器,编译器被调用来编译源代码文件; 之后,编译器退出时,生成由编译器生成的目标文件中的第一散列值; 对象工件做的生成标识源代码文件,并且包括由编译器生成的目标文件的内容的第一散列值; 确定性挖掘做了第二新创建的进程是左,左被调用在从一个或多个对象文件的可执行文件来生成; 生成链路工件做respectivement包括每个用于生成可执行文件的所述一个或多个对象文件的散列值; 并提供链接神器神器对象静态分析系统。
    • 7. 发明公开
    • SOURCE CODE VIOLATION MATCHING AND ATTRIBUTION
    • QUELLCODEVERSTOSSANPASSUNG UND-ZUDNDNUNG
    • EP2937779A1
    • 2015-10-28
    • EP15164947.2
    • 2015-04-24
    • Semmle Limited
    • Henriksen, Anders StarckeBaars, ArthurAvgustinov, PavelTibble, JulianSchaefer, Maxde Moor, Oege
    • G06F9/44G06F11/36
    • G06F8/71G06F8/43G06F8/75G06F8/77G06F11/3616G06F17/30106G06Q10/06398
    • Methods, systems, and apparatus, including computer programs encoded on computer storage media, for matching and attributing code violations. One of the methods includes receiving a snapshot S of a code base of source code and a different snapshot T of the code base. Data representing first violations in the snapshot S and second violations in the snapshot T is received. Pairs of matching violations are determined using performing two or more matching processes, including performing a first matching process, the first matching process determining first pairs of matching violations according to a first matching algorithm and performing a second matching process, the second matching process determining second pairs of matching violations according to a second matching algorithm from violations not matched by the first matching process. The first pairs of matching violations and the second pairs of matching violations are included in the determined pairs of matching violations.
    • 方法,系统和装置,包括在计算机存储介质上编码的计算机程序,用于匹配和归因于代码违例。 其中一种方法包括接收源代码的代码库和代码库的不同快照T的快照S. 收到表示快照S中第一次违规的数据和快照T中的第二次违规。 通过执行两个或更多个匹配过程来确定对匹配违规,包括执行第一匹配过程,第一匹配过程根据第一匹配算法确定第一对匹配违规,并执行第二匹配过程,第二匹配过程确定第二匹配过程 根据第二匹配算法从违反第一匹配过程不匹配的匹配违规对。 在确定的匹配违规对中包括第一对匹配违规和第二对匹配违规。
    • 8. 发明公开
    • ALGEBRAIC DATA TYPES FOR DATABASE QUERY LANGUAGES
    • 用于数据库查询语言的代数数据类型
    • EP3301590A1
    • 2018-04-04
    • EP17179535.4
    • 2017-07-04
    • Semmle Limited
    • SCHAEFER, MaxEYERS-TAYLOR, Alexander
    • G06F17/30
    • G06F17/30427G06F17/30342G06F17/30404G06F17/30513
    • Methods, systems, and apparatus, including computer programs encoded on computer storage media, for implementing algebraic data types in database query languages. One of the methods includes receiving an expression in a database query language, the expression having a programming language construct representing an algebraic data type, wherein the expression specifies two or more alternative subtypes. Respective domain relations are generated using definitions of each of the alternative subtypes within the expression. Unique domain identifiers are assigned among domain tuples belonging to each alternative subtype. A union relation is generated for the algebraic data type. Unique union identifiers are assigned for union tuples belonging to the union relation. Respective injector relations are generated for each of the alternative subtypes.
    • 包括在计算机存储介质上编码的计算机程序的方法,系统和装置,用于在数据库查询语言中实现代数数据类型。 其中一种方法包括以数据库查询语言接收表达式,该表达式具有表示代数数据类型的编程语言结构,其中该表达式指定两个或更多个替代的子类型。 使用表达式中每个替代子类型的定义来生成各个域关系。 唯一的域标识符分配给属于每个备选子类型的域元组。 为代数数据类型生成一个联合关系。 唯一的联合标识符被分配给属于联合关系的联合元组。 针对每个替代子类型生成相应的注射器关系。
    • 9. 发明公开
    • SCALABLE TRANSITIVE VIOLATION MATCHING
    • 可扩展的传输违例匹配
    • EP3301583A1
    • 2018-04-04
    • EP17177908.5
    • 2017-06-26
    • Semmle Limited
    • HENRIKSEN, Anders Starcke
    • G06F11/36
    • G06F8/77G06F8/71G06F8/75G06F11/3604G06F11/3616G06F11/3692
    • Methods for reducing storage and performing static analysis on violations across code base revisions are disclosed. An example method begins with receiving a child snapshot representing a code base at a specific revision. A parent snapshot is identified. Then, canonical representations for violations representing coding defects in the parent and child snapshots are computed. An example method determines matching violations between the snapshots, unmatched parent violations, and unmatched child violations. For matching violations that have different canonical representations, a mapping between the parent snapshot violation and the child snapshot violation is stored using their respective canonical representations. For unmatched parent violations, each violation's canonical representation is stored with an indication that the violation has been eliminated from the child snapshot. For unmatched child violations, each violation's canonical representation is stored with an indication that the violation has been introduced in the child snapshot.
    • 公开了用于减少存储和对代码库修订中的违规进行静态分析的方法。 一个示例方法从接收代表特定修订版的代码库的子快照开始。 父快照被识别。 然后,计算代表父代和子代快照中的编码缺陷的违规的典型表示。 一个示例方法确定了快照之间的匹配违规,不匹配的父违规以及不匹配的子违规。 为了匹配具有不同规范表示的违规,使用它们各自的规范表示来存储父快照违例和子违规快照之间的映射。 对于不匹配的父级违规,每个违规的规范表示都会存储并显示违规已从子级快照中消除。 对于不匹配的子级违规,每个违规的规范表示都会存储并显示违规已引入子快照。
    • 10. 发明公开
    • COMPILATION CACHE WITH IMPORTS SCANNER
    • 编译高速缓存与进口扫描仪
    • EP3211526A1
    • 2017-08-30
    • EP17157775.2
    • 2017-02-24
    • Semmle Limited
    • SPOON, Alexander
    • G06F9/44
    • G06F8/41G06F8/71
    • Methods, systems, and apparatus, including computer programs encoded on computer storage media, for using an imports scanner to maintain a compilation cache. One of the methods includes receiving an original set of source code files to be compiled for a compilation target. Each file in in the original set having an entry point is added to a reduced set of source code files. Each unscanned file in the reduced set of source code files is scanned for import statements until no unscanned files in the reduced set of source code remain. Each file identified by an import statement is added to the reduced set of source code files. If the reduced set of files is not represented by an entry in a compilation cache, the compilation target is generated using only the reduced set of source code files instead of the original set of source code files.
    • 包括在计算机存储介质上编码的计算机程序的方法,系统和装置,用于使用导入扫描器来维护编译缓存。 其中一种方法包括接收要为编译目标编译的源代码文件的原始集合。 原始集合中的每个文件都有一个入口点被添加到一组缩减的源代码文件中。 对缩减的源代码文件集中的每个未扫描文件进行扫描以获取导入语句,直到缩减的源代码集中没有未扫描的文件保留为止。 由导入语句标识的每个文件都被添加到缩减的源代码文件集中。 如果缩减的文件集不是由编译缓存中的条目表示的,则仅使用缩减的源代码文件集而不是原始源代码文件集来生成编译目标。