Font Size: a A A

Research On Automatic Segmentation And On-Demand Loading Of Software Based On Streaming Computing

Posted on:2023-01-10Degree:MasterType:Thesis
Country:ChinaCandidate:Y G GaoFull Text:PDF
GTID:2568307070483374Subject:Computer application technology
Abstract/Summary:PDF Full Text Request
As the volume of data on terminals explodes and privacy risks intensify,the computing mode has changed from ”ship data to code” to”ship code to data”.However,as the carrier of data processing and information service supply,software tends to pursue the comprehensiveness of functions.So that the development is too bloated,which cannot meet the personalized requitement in the form of simplification.For specific business needs,the software is not only too redundant,but also brings more security risks.Therefore,it has great research significance to design automatic segmentation and on-demand loading methods of software.The existing software debloating work usually depends on analyzing source code or proposing modularized software reconstruction scheme,which has high limitation.And some software debloating work based on binary code can not achieve high accuracy,which is easy to cause software running crash and affect user experience.To address these shortcomings,based on the idea of streaming computing,We propose an automatic software segmentation and on-demand loading method for lightweight devices.These methods can automatically divide the software into fine-grained computing tasks without source code,software reconstruction,and user awareness.Then we flow tasks to the target device as needed.Moreover,the overall performance of software executed in streaming mode is comparable to that of software executed natively on the target device.Based on the Linux kernel platform,this paper focuses on three aspects: software segmentation method for reducing computing granularity,loading on demand method based on analysis of computing characteristics,and prediction method for reducing the number of on-demand loading triggers.The main contributions are as follows:(1)An automatic software segmentation method with dynamically configurable granularity is proposed,to reduce the computing granularity for loading.The solution uses 4KB pages as a base granularity,without the hassle of refactoring software and incurring no additional space footprint.We also provide a dynamic granular configuration interface with kernel module programming.Finally,we perform automatic segmentation of 4KB and different granularity for ten common software on Linux.(2)An on-demand remote loading method is proposed,without user awareness.We uses the page fault handler to intercept the actual execution requirements and construct the remote loading request.To ensure timeliness,we conduct delay tests of remote load and design optimized solutions accordingly.Finally,the comparison experiment proves that the optimized remote loading is slightly faster than the local disk loading.(3)A prediction method for stable scenarios is proposed,to minimize the number of remote loading triggers.we propose an off-line dynamic pretrace method.We build the dependency set of each operation through pre-run and dynamic tracking of execution.Experiments on several software show that the prediction method can achieve higher accuracy and less memory consumption than Linux readahead mechanism in stable scenarios.
Keywords/Search Tags:streaming computing, software segmentation, linux kernel, page fault, ELF file
PDF Full Text Request
Related items