Font Size: a A A

Routing Protocol Support Kernel Function Call Graph Tool Design

Posted on:2015-03-02Degree:MasterType:Thesis
Country:ChinaCandidate:X Y DuFull Text:PDF
GTID:2268330428481081Subject:Communication and Information System
Abstract/Summary:PDF Full Text Request
With the growing of scale and complexity in software system, the analysis of software system structure and software security vulnerabilities becomes more and more important. Now the existing source code analysis method and source code analysis tool, will not be able to meet the needs of the analysis of large-scale software source code architecture. For the large software, such as the Linux kernel, because of the many developers and no unified development documentations, it will take to takes a long time to understand it for developers who want to develop and improve the routing protocol of, this faces challenges and difficulties now.Based on the analysis of previous source code analysis methods and source code analysis tools, through the existing problems that most of the previous source code analysis cannot analyze the relationships between files or directories and the redundancy of the direct analysis for the source code, at the same time, combined with the compilation process to generate the register transfer language, this paper presents a register transfer language(RTL) call graph generator:CG-RTL (Call graph based on RTL, referred as CG-RTL). RTL, referred to as Register Transfer Language, contains the function definition information and the function call information. The kernel function call graph tool CG-RTL solves the above problems by obtaining information from the RTL and in combination with the LXR. The kernel function call graph tool CG-RTL extracts the function definition and call information from the RTL files generated by each source file when compiled, when a user’s input a selection of function call graphs and function call lists between directories, the kernel function call graph tool CG-RTL recursively generate a function call relationship between the directory through each file function call relationship, and then display it in the browser in the form of charts and lists. Because of SVG image’s good interactivity, the kernel function call graph tool CG-RTL expands the functionality of images, and creates the function call list for function annotations directly. The kernel function call graph tool CG-RTL (call graph based on RTL) analyzes the TCP/IP protocol stack parts in the Linux operating systems in this paper. The routing protocol analysis is an important part of the analysis for Linux kernel. AODV routing protocol worked as a network on-demand routing protocol is often used in ad-hoc, Ad Hoc network is a group of wireless mobile ad hoc network nodes, which does not depend on the specific facilities in areas that is not covered by the base station, it can send and receive information between nodes through intermediate nodes from the network. AODV routing protocol is usually ported to the Linux actual system as a user space application, its operation uses TCP/IP protocol stack in the Linux kernel processing mechanism, among which netlink is a special IPC communication mechanism, it is mainly used for communications between user space and kernel space, whereas netfilter acts as a filter layer in the IP layer to filter the packets and frames come in or go out of. By analyzing the actual system Linux TCP/IP protocol stack content, it can show that when it is in the analysis of complex software architecture of large-scale software, such as Linux source code which is with less document and more developers, the kernel function call graph tool CG-RTL(call graph based on RTL) is more easier and be able to spend less time, and closer to the source code at runtime compared with the traditional methods of source code analysis and source code analysis tools...
Keywords/Search Tags:Source Code Analysis, TCP/IP Protocol Stack, CompilerIntermediate Results, CG-RTL
PDF Full Text Request
Related items