WO2015035774A1 - 一种基于用户空间文件系统的移动终端定制化方法及系统 - Google Patents
一种基于用户空间文件系统的移动终端定制化方法及系统 Download PDFInfo
- Publication number
- WO2015035774A1 WO2015035774A1 PCT/CN2014/075521 CN2014075521W WO2015035774A1 WO 2015035774 A1 WO2015035774 A1 WO 2015035774A1 CN 2014075521 W CN2014075521 W CN 2014075521W WO 2015035774 A1 WO2015035774 A1 WO 2015035774A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- partition
- directory
- user space
- customized
- kernel
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 54
- 238000005192 partition Methods 0.000 claims abstract description 225
- 230000008569 process Effects 0.000 claims description 8
- 238000012546 transfer Methods 0.000 claims description 7
- 238000012544 monitoring process Methods 0.000 claims description 6
- 230000009471 action Effects 0.000 claims description 4
- 230000006870 function Effects 0.000 description 18
- 238000010586 diagram Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000002194 synthesizing effect Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/11—File system administration, e.g. details of archiving or snapshots
- G06F16/122—File system administration, e.g. details of archiving or snapshots using management policies
Definitions
- the present invention relates to the field of mobile terminal customization technologies, and in particular, to a mobile terminal customization method and system based on a user space file system. Background technique
- the existing customized solution is as shown in Figure 1.
- the left side is the native Android system, and the right side is the existing method of the Android system. It is on the phone memory, and a custom partition is specially drawn to store the customization. Resources, and a dedicated customization team responsible for customizing this partition and generating the appropriate partition image file.
- the advantage of the above method is that the two tasks of software development (software logic, corresponding partition is system partition) and customization (resource side, corresponding partition is customized partition) can be stripped off, and different groups are responsible for this. Improve development efficiency.
- the present invention aims to provide a mobile terminal customization method and system based on a user space file system, which aims to solve the problem that the existing customized implementation method has a large workload and a large risk when the version is upgraded.
- the problem aims to provide a mobile terminal customization method and system based on a user space file system, which aims to solve the problem that the existing customized implementation method has a large workload and a large risk when the version is upgraded. The problem.
- a mobile terminal customization method based on a user space file system includes the following steps:
- the user program is transferred to the system partition and the customized partition, and the files are searched in the customized partition and the system partition according to the customized partition directory and the system partition directory. If the corresponding file is found, the user program is executed.
- step C specifically includes:
- step C5 according to the path within the partition in the customized partition to find the corresponding file, if found, then perform step C7, otherwise perform step C6;
- step C6 Find a corresponding file in the system partition according to the path in the partition. If found, perform step C7, otherwise execute the error processing flow;
- the user space file system-based mobile terminal customization method wherein, between the steps C1 and C2, when the kernel receives the operation request of the user program, the operation request is translated into a kernel request, and is forwarded to the background guard. program.
- the method for customizing a mobile terminal based on a user space file system wherein after the step C7, the method further includes:
- the method for customizing a mobile terminal based on a user space file system wherein after the step C8, the method further includes:
- a mobile terminal customization method based on a user space file system wherein the method includes the following steps:
- the user program is transferred to the system partition and the customized partition, and the files are searched in the customized partition and the system partition according to the customized partition directory and the system partition directory. If the corresponding file is found, the operation of the user program is performed;
- the mount in step A refers to the action of combining the directory structure of the corresponding partition into the system directory structure of Linux;
- step B creating a customized partition directory in the root directory is consistent with the directory hierarchy of the system partition directory. It requires the software development team and the customization team to adhere to the same definition directory hierarchy specification, except for the mount point and the specific file name.
- the remaining directories include the first-level directory and the second-level directory name in the partition, and the directory hierarchy of the two partitions is the same.
- step C specifically includes:
- the system directory under the root directory is set to the mount point of the user space file system through the mount API of the function library of the user space file system;
- step C5 according to the path within the partition in the customized partition to find the corresponding file, if found, then step C7, otherwise step C6; C6. Search for the corresponding file in the system partition according to the path in the partition. If found, perform step C7, otherwise execute the error processing flow;
- the user space file system-based mobile terminal customization method wherein, between the steps C1 and C2, when the kernel receives the operation request of the user program, the operation request is translated into a kernel request, and is forwarded to the background guard. program.
- the method for customizing a mobile terminal based on a user space file system wherein after the step C7, the method further includes:
- the method for customizing a mobile terminal based on a user space file system wherein after the step C8, the method further includes:
- a mobile terminal customization system based on a user space file system comprising: a system partition mounting module, configured to establish a system partition directory in a root directory, and mount the system partition to a system partition directory;
- a customized partition mount module is used to establish a customized partition directory in the root directory that is consistent with the directory hierarchy of the system partition, and mount the customized partition to the customized partition directory;
- the execution module is used to transfer the user program to the system partition and the customized partition through the background daemon of the user space file system, and then customize the partition and the system partition according to the established customized partition directory and the system partition directory. Find files in if found The corresponding file, the operation of the user program is executed.
- the user terminal file system-based mobile terminal customization system wherein the execution module includes:
- Mount point setting unit for mounting through the function library of the user space file system
- the listening unit is configured to listen to the kernel request through the listener API of the function space of the user space file system;
- the parsing unit is configured to parse the kernel request to obtain an absolute path after listening to the kernel request;
- a mount point removal unit configured to remove a mount point of an absolute path to obtain a path within the partition
- a first searching unit configured to search for a corresponding file in the customized partition according to the path within the partition
- a second searching unit configured to search for a corresponding file in the system partition according to the path within the partition
- An execution unit configured to perform a corresponding operation on the found file according to the kernel request.
- the user terminal file system-based mobile terminal customization system wherein the execution module further includes:
- the forwarding unit is configured to translate the operation request into a kernel request and forward it to the background daemon when the kernel receives the operation request of the user program.
- the user terminal file system-based mobile terminal customization system wherein the execution module further includes: Return unit, used to return data through the function library of the user space file system
- API returns the file data obtained after the operation is performed to the kernel.
- execution module further includes:
- the transmitting unit is configured to transmit the file data to the user program after the kernel receives the returned file data.
- the present invention uses a background daemon of the user space file system to transfer the operation of the user program to the system partition and the customized partition, and in the middle of the transfer process, sequentially finds whether the user program needs to exist in the customized partition and the system partition.
- the file realizes the purpose of synthesizing two actual partitions into one logical partition, and realizes accessing the two partitions separately without modifying the user code, which can ensure the simplicity and reliability of software development, and can also be customized. Convenient. DRAWINGS
- FIG. 1 is a block diagram of an implementation system of a mobile terminal customization method in the prior art.
- FIG. 2 is a flow chart of a preferred embodiment of a mobile terminal customization method based on a user space file system according to the present invention.
- FIG. 3 is a block diagram of an implementation system of a mobile terminal customization method according to the present invention.
- FIG. 4 is a structural block diagram of a preferred embodiment of a mobile terminal customization system based on a user space file system according to the present invention.
- the present invention provides a mobile terminal customization method and system based on a user space file system.
- the present invention will be further described in detail below. It is understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention.
- FIG. 2 is a flowchart of a method for customizing a mobile terminal based on a user space file system according to the present invention. As shown in the figure, it includes:
- step S101 first create a system partition directory (/MPS directory) in the root directory, and mount the system partition to the system partition directory (/MPS directory), where the mount refers to the directory structure of the corresponding partition.
- the action to the Linux system directory structure first create a system partition directory (/MPS directory) in the root directory, and mount the system partition to the system partition directory (/MPS directory), where the mount refers to the directory structure of the corresponding partition.
- step S102 a customized partition directory (/MPC directory) is created in the root directory, and the customized partition is mounted to the customized partition directory, and the customized partition directory is consistent with the directory hierarchy of the system partition directory, which requires software.
- the development team and the customization team adhere to the same definition directory hierarchy specification.
- the names of the other directories are the same.
- the directory hierarchy of the partitions is consistent.
- step S103 FUSE (user space file system, a file system completely implemented in user mode) is deployed on two actual partitions (system partition and customized partition), and the Linux kernel performs this through the FUSE kernel module.
- the user layer is supported by the function library libfuse, the Android system is based on Linux, so you can also use FUSE)
- the file access request of the user program will be sent to the background daemon of the user space file system by the FUSE kernel module.
- the background daemon (FUSE daemon) forwards the user's operations, and then searches for files in the customized partition and system partition. If the corresponding file is found, the user program is executed to implement the customized partition and the system partition. Unite.
- step S103 can be specifically refined into the following steps:
- the root directory is set to the mount point of the user space file system;
- the function library is the libfuse of the user space file system, that is, the function library of the user space file system, and the /system directory under the root directory is set by using the libfuse mount API.
- the mount point for the user space file system the mount point is now ready.
- step S211 Determine whether the user initiates the exit of the user program or stops the monitoring operation. If the user initiates the exit of the user program or stops the listening operation, step S211 is performed, otherwise, the process continues.
- step S204 listens to the kernel request through the listening API of the function library of the user space file system; at this time, the kernel request is monitored by the libfuse listening API, and when the kernel request is monitored, step S204 is performed; otherwise, the process returns to step S202 to continue the determination.
- the kernel receives an operation request from the user program, it translates the operation request into a kernel request and forwards it to the backend daemon.
- the absolute path is: /MPS/res/wallpaper/l.png (system partition), /MPC/res/wallpaper/cul .png ( Custom 4 ⁇ partition).
- step S208 according to the path within the partition in the customized partition (ie, customized partition directory: /MPC directory) to find the corresponding file, if found, then step S208, otherwise step S207;
- step S208 is performed, otherwise the error processing flow (ie, checking whether the request of the user program or other aspects is wrong) is performed, and the process proceeds to step S202.
- the step here is to perform the user's actions on the file being looked up, such as reading a file, writing a file, modifying a file attribute, and so on.
- the parsing file data is transmitted to the user program.
- the user program initiates a read operation (READ /system/res/wallpaper/ 1.png );
- S311 the FUSE kernel module receives the read operation request, and translates the read operation request into a FUSE read operation request and sends the request to the background daemon;
- the background daemon obtains a FUSE read operation request by listening
- the daemon parses the FUSE read operation request, and obtains the absolute path ( /system/res/wallpaper/1.png );
- the background daemon removes the mount point of the absolute path, and obtains the path within the partition ( res/wallpaper/ 1.png );
- the background daemon finds the file in the customized partition (FIND /MPC/res/wallpaper/1.png ), and the result is not found;
- S316 the background daemon finds the file in the customized partition (FIND /MPC/res/wallpaper/1.png ), and the result is found;
- the background daemon reads the file ( READ /MPS/res/wallpaper/1.png ), includes the file data in the FUSE return data, and sends the API to the kernel module using the FUSE return data API;
- the FUSE kernel module receives the FUSE return data, parses the file data, and transmits the file data to the user program;
- the user program receives the file data, and the read operation is completed.
- the two partitions can be accessed separately without modifying the user code, which is of great significance in the case that the current mobile phone system version is changing with each passing day and the user needs are constantly changing, which greatly reduces the The workload and risk ensure the simplicity and reliability of software development, as well as the convenience and convenience of customization.
- the present invention further provides a mobile terminal customization system based on a user space file system. As shown in FIG. 4, the method includes:
- the system partition mount module 100 is configured to establish a system partition directory in the root directory, and mount the system partition to the system partition directory;
- the customized partition mounting module 200 is configured to establish a customized partition directory in the root directory that is consistent with the directory hierarchy of the system partition, and mount the customized partition to the customized partition directory;
- the execution module 300 is configured to transfer the operation of the user program to the system partition and the customized partition by using a background daemon of the user space file system, and sequentially in the customized partition and the system partition according to the established customized partition directory and the system partition directory. Find files if When the corresponding file is found, the operation of the user program is performed.
- execution module 300 includes:
- a mount point setting unit is configured to set a system directory under the directory to a mount point of the user space file system through a mount API of a function library of the user space file system; a listening unit for passing the user space file system The listener API of the function library listens to the kernel request;
- the parsing unit is configured to parse the kernel request to obtain an absolute path after listening to the kernel request;
- a mount point removal unit configured to remove a mount point of an absolute path to obtain a path within the partition
- a first searching unit configured to search for a corresponding file in the customized partition according to the path within the partition
- a second searching unit configured to search for a corresponding file in the system partition according to the path within the partition
- An execution unit configured to perform a corresponding operation on the found file according to the kernel request. Further, the execution module 300 further includes:
- the forwarding unit is configured to translate the operation request into a kernel request and forward it to the background daemon when the kernel receives the operation request of the user program.
- execution module 300 further includes:
- the return unit is used to return the file data obtained after the execution of the operation to the kernel through the return data API of the function library of the user space file system.
- execution module 300 further includes: The transmitting unit is configured to send the file data to the user program after the kernel receives the returned file data.
- the present invention uses the background daemon of the user space file system to transfer the operation of the user program to the system partition and the customized partition, and in the process of transiting, sequentially finds whether there are users in the customized partition and the system partition.
- the file required by the program so as to realize the purpose of synthesizing two actual partitions into one logical partition, realizes accessing two partitions separately without modifying the user code, which can ensure the simplicity and reliability of software development, and can also customize Easy and fast.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开一种基于用户空间文件系统的移动终端定制化方法及系统,其中,方法包括步骤:在根目录下建立系统分区目录,将系统分区挂载到系统分区目录;在根目录下建立与系统分区的目录层级结构一致的定制化分区目录,将定制化分区挂载到定制化分区目录;通过用户空间文件系统的后台守护程序来中转用户程序对系统分区和定制化分区的操作,并根据建立的定制化分区目录和系统分区目录依次在定制化分区和系统分区中查找文件,若找到相应的文件,则执行用户程序的操作。
Description
一种基于用户空间文件系统的移动终端定制化方法及系统 技术领域
本发明涉及移动终端定制化技术领域,尤其涉及一种基于用户空 间文件系统的移动终端定制化方法及系统。 背景技术
现有的以 Android 系统为代表的智能手机, 经常会有定制化 ( Customize ) 的需求, 即根据客户的需求修改定制化资源, 如多媒 体内容(颜色, 声音, 图片, 字体等)、 预装软件等。
现有的定制化需求解决方法是:如图 1所示,左边为原生 Android 系统, 右边为现有方法的 Android系统, 其是在手机存储器上, 特别 划出一个定制化分区, 用以存放定制化资源, 并且利用专门的定制化 小组负责定制此分区内容, 以及生成相应的分区映像文件。
上述方法的优点是, 可以将软件开发(软件逻辑方面, 对应分区 为系统分区)和定制化(资源方面, 对应分区为定制化分区)两个任 务剥离, 并且由不同的小组来负责, 这样可以提高开发效率。
但现有方法的缺点也很明显: 需要在 Framework (框架)层(包 括 Java部分和 C语言部分)修改代码, 使之能够读取此定制化分区 中的资源, 尤其是在目前智能手机操作系统频繁升级的背景下, 这个 缺点更加明显, 因为每次版本升级都需要重新修改代码, 带来了较大
的工作量和较高的风险。
因此, 现有技术还有待于改进和发展。 发明内容
鉴于上述现有技术的不足,本发明的目的在于提供一种基于用户 空间文件系统的移动终端定制化方法及系统, 旨在解决现有的定制化 实现方法在版本升级时工作量大、 风险大的问题。
本发明的技术方案如下:
一种基于用户空间文件系统的移动终端定制化方法, 其中, 包括 步骤:
A、 在根目录下建立系统分区目录, 将系统分区挂载到系统分区 目录;
B、 在根目录下建立与系统分区的目录层级结构一致的定制化分 区目录, 将定制化分区挂载到定制化分区目录;
C、 通过用户空间文件系统的后台守护程序来中转用户程序对系 统分区和定制化分区的操作,并才艮据建立的定制化分区目录和系统分 区目录依次在定制化分区和系统分区中查找文件, 若找到相应的文 件, 则执行用户程序的操作。
所述的基于用户空间文件系统的移动终端定制化方法, 其中, 所 述步骤 C具体包括:
Cl、通过用户空间文件系统的函数库的挂载 API, 将根目录下的 系统目录设置为用户空间文件系统的挂载点;
C2、 通过用户空间文件系统的函数库的监听 API监听内核请求; C3、 监听到内核请求后, 对内核请求进行解析获得绝对路径; C4、 将绝对路径的挂载点去除获得分区内路径;
C5、 根据分区内路径在定制化分区查找相应的文件, 若查找到, 则执行步骤 C7, 否则执行步骤 C6;
C6、 根据分区内路径在系统分区查找相应的文件, 若查找到, 则执行步骤 C7, 否则执行差错处理流程;
C7、 根据内核请求对查找到的文件执行相应的操作。
所述的基于用户空间文件系统的移动终端定制化方法, 其中, 所 述步骤 C1与 C2之间, 在内核收到用户程序的操作请求时, 将操作 请求转译为内核请求, 并转发给后台守护程序。
所述的基于用户空间文件系统的移动终端定制化方法, 其中, 所 述步骤 C7之后还包括:
C8、通过用户空间文件系统的函数库的返回数据 API,返回执行 操作之后得到的文件数据给内核。
所述的基于用户空间文件系统的移动终端定制化方法, 其中, 所 述步骤 C8之后还包括:
C9、 内核收到返回的文件数据后, 将文件数据传送给用户程序。 一种基于用户空间文件系统的移动终端定制化方法, 其中, 包括 步骤:
A、 在根目录下建立系统分区目录, 将系统分区挂载到系统分区 目录;
B、 在根目录下建立与系统分区的目录层级结构一致的定制化分 区目录, 将定制化分区挂载到定制化分区目录;
C、 通过用户空间文件系统的后台守护程序来中转用户程序对系 统分区和定制化分区的操作,并才艮据建立的定制化分区目录和系统分 区目录依次在定制化分区和系统分区中查找文件, 若找到相应的文 件, 则执行用户程序的操作;
其中, 在步骤 A 中的挂载是指将相应的分区的目录结构, 结合 到 Linux的系统目录结构上去的动作;
在步骤 B 中在根目录下建立定制化分区目录与系统分区目录的 目录层级结构一致,其需要软件开发小组和定制化小组遵守相同的定 义目录层级结构规范, 除了挂载点以及具体文件名之外, 其余目录包 括分区中第一级目录和第二级目录名称都一致,这样的两个分区的目 录层级结构一致。
所述的基于用户空间文件系统的移动终端定制化方法, 其中, 所 述步骤 C具体包括:
Cl、通过用户空间文件系统的函数库的挂载 API, 将根目录下的 系统目录设置为用户空间文件系统的挂载点;
C2、 通过用户空间文件系统的函数库的监听 API监听内核请求; C3、 监听到内核请求后, 对内核请求进行解析获得绝对路径; C4、 将绝对路径的挂载点去除获得分区内路径;
C5、 根据分区内路径在定制化分区查找相应的文件, 若查找到, 则执行步骤 C7, 否则执行步骤 C6;
C6、 根据分区内路径在系统分区查找相应的文件, 若查找到, 则执行步骤 C7, 否则执行差错处理流程;
C7、 根据内核请求对查找到的文件执行相应的操作。
所述的基于用户空间文件系统的移动终端定制化方法, 其中, 所 述步骤 C1与 C2之间, 在内核收到用户程序的操作请求时, 将操作 请求转译为内核请求, 并转发给后台守护程序。
所述的基于用户空间文件系统的移动终端定制化方法, 其中, 所 述步骤 C7之后还包括:
C8、通过用户空间文件系统的函数库的返回数据 API,返回执行 操作之后得到的文件数据给内核。
所述的基于用户空间文件系统的移动终端定制化方法, 其中, 所 述步骤 C8之后还包括:
C9、 内核收到返回的文件数据后, 将文件数据传送给用户程序。 一种基于用户空间文件系统的移动终端定制化系统,其中,包括: 系统分区挂载模块, 用于在根目录下建立系统分区目录, 将系统 分区挂载到系统分区目录;
定制化分区挂载模块,用于在根目录下建立与系统分区的目录层 级结构一致的定制化分区目录, 将定制化分区挂载到定制化分区目 录;
执行模块,用于通过用户空间文件系统的后台守护程序来中转用 户程序对系统分区和定制化分区的操作,并才艮据建立的定制化分区目 录和系统分区目录依次在定制化分区和系统分区中查找文件,若找到
相应的文件, 则执行用户程序的操作。
所述的基于用户空间文件系统的移动终端定制化系统, 其中, 所 述执行模块包括:
挂载点设置单元, 用于通过用户空间文件系统的函数库的挂载
API, 将才艮目录下的系统目录设置为用户空间文件系统的挂载点; 监听单元,用于通过用户空间文件系统的函数库的监听 API监听 内核清求;
解析单元, 用于监听到内核请求后, 对内核请求进行解析获得绝 对路径;
挂载点去除单元, 用于将绝对路径的挂载点去除获得分区内路 径;
第一查找单元,用于根据分区内路径在定制化分区查找相应的文 件;
第二查找单元, 用于根据分区内路径在系统分区查找相应的文 件;
执行单元, 用于根据内核请求对查找到的文件执行相应的操作。 所述的基于用户空间文件系统的移动终端定制化系统, 其中, 所 述执行模块还包括:
转发单元, 用于在内核收到用户程序的操作请求时, 将操作请求 转译为内核请求, 并转发给后台守护程序。
所述的基于用户空间文件系统的移动终端定制化系统, 其中, 所 述执行模块还包括:
返回单元, 用于通过用户空间文件系统的函数库的返回数据
API, 返回执行操作之后得到的文件数据给内核。
所述的基于用户空间文件系统的移动终端定制化系统, 其中, 所 述执行模块还包括:
传送单元, 用于内核收到返回的文件数据后, 将文件数据传送给 用户程序。
有益效果: 本发明通过使用用户空间文件系统的后台守护程序, 来中转用户程序对系统分区以及定制化分区的操作,并且在中转过程 中, 依次查找定制化分区和系统分区中是否存在用户程序需要的文 件, 从而实现将两个实际分区合成为一个逻辑分区的目的, 实现了在 不修改用户代码的前提下, 分别访问两个分区, 既能保证软件开发的 简单可靠, 又能兼顾定制化的方便快捷。 附图说明
图 1为现有技术中移动终端定制化方法的实现系统框图。
图 2 为本发明基于用户空间文件系统的移动终端定制化方法较 佳实施例的流程图。
图 3为本发明中移动终端定制化方法的实现系统框图。
图 4 为本发明基于用户空间文件系统的移动终端定制化系统较 佳实施例的结构框图。 具体实施方式
本发明提供一种基于用户空间文件系统的移动终端定制化方法 及系统, 为使本发明的目的、 技术方案及效果更加清楚、 明确, 以下 对本发明进一步详细说明。应当理解, 此处所描述的具体实施例仅仅 用以解释本发明, 并不用于限定本发明。
请参阅图 2, 图 2为本发明基于用户空间文件系统的移动终端定 制化方法较佳实施例的流程图, 如图所示, 其包括:
5101、在根目录下建立系统分区目录,将系统分区挂载到系统分 区目录;
5102、在根目录下建立与系统分区的目录层级结构一致的定制化 分区目录, 将定制化分区挂载到定制化分区目录;
S 103、通过用户空间文件系统的后台守护程序来中转用户程序对 系统分区和定制化分区的操作,并依次在定制化分区和系统分区中查 找文件, 若找到相应的文件, 则执行用户程序的操作。
在步骤 S101 中, 首先在根目录下建立系统分区目录(/MPS 目 录), 将系统分区挂载到系统分区目录(/MPS 目录), 其中的挂载是 指将相应的分区的目录结构,结合到 Linux的系统目录结构上去的动 作。
在步骤 S102中,在根目录下建立定制化分区目录(/MPC目录), 将定制化分区挂载到定制化分区目录,该定制化分区目录与系统分区 目录的目录层级结构一致,其需要软件开发小组和定制化小组遵守相 同的定义目录层级结构规范。
下面举例说明目录层级结构的一致:
假设客户的定制化需求是定制一部分手机壁纸,那么将手机壁纸 分别放入到系统分区和定制化分区中, 其绝对路径(从根目录开始, 某一文件的路径)如下:
/MPS/res/wallpaper/1.png (系统分区)
/MPC/res/wallpaper/cul .png (定制 4匕分区)
他们对应的分区内路径 (绝对路径去除挂载点之后的路径) 为: res/wallpaper/1.png
res/wallpaper/cul .png
从上可知, 除了挂载点( MPS和 MPC )以及具体文件名( *.png ) 之外,其余目录(包括分区中第一级目录 res和第二级目录 wallpaper ) 名称都一致, 这样的两个分区的目录层级结构一致。
在步骤 S103中, 如图 3所示, 在两个实际分区 (系统分区及定 制化分区)部署 FUSE (用户空间文件系统, 完全在用户态实现的文 件系统, Linux内核通过 FUSE内核模块对此进行支持, 用户层通过 函数库 libfuse来进行支持, Android系统是基于 Linux的, 所以也可 以使用 FUSE ), 用户程序的文件访问请求, 会被 FUSE内核模块, 发 送给用户空间文件系统的后台守护程序, 在后台守护程序 (FUSE后 台守护程序)来转发用户的操作, 并依次在定制化分区和系统分区中 查找文件, 若找到相应的文件, 则执行用户程序的操作, 实现定制化 分区和系统分区的统一。
具体来说, 步骤 S103可具体细化为以下步骤:
S201、 通过用户空间文件系统的函数库的挂载 API, 将根目录下
的系统目录设置为用户空间文件系统的挂载点;该函数库为用户空间 文件系统的 libfuse, 即用户空间文件系统的函数库, 通过使用 libfuse 的挂载 API将根目录下的 /system目录设置为用户空间文件系统的挂 载点, 此时挂载点已经准备妥当。
5202、判断用户是否发起退出用户程序或者停止监听操作,若用 户发起退出用户程序或者停止监听操作, 则执行步骤 S211, 否则继 续。
5203、 通过用户空间文件系统的函数库的监听 API监听内核请 求; 此时通过 libfuse的监听 API监听内核请求, 当监听到内核请求 时, 则执行步骤 S204, 否则返回步骤 S202继续判断。 在内核接收到 用户程序的操作请求时,会将操作请求转译为内核请求, 并转发给后 台守护程序。
5204、 监听到内核请求后, 对内核请求进行解析获得绝对路径; 此处的绝对路径如: /MPS/res/wallpaper/l.png ( 系统分区 ), /MPC/res/wallpaper/cul .png (定制 4匕分区)。
5205、将绝对路径的挂载点去除获得分区内路径; 将上述的绝对 路径去除挂载点之后得到的分区内路径为: res/wallpaper/1.png, res/wallpaper/cul .png。
5206、才艮据分区内路径在定制化分区(即定制化分区目录: /MPC 目录) 查找相应的文件, 若查找到, 则执行步骤 S208, 否则执行步 骤 S207;
5207、 才艮据分区内路径在系统分区 (即系统分区目录: /MPS 目
录)查找相应的文件, 若查找到, 则执行步骤 S208, 否则执行差错 处理流程(即检查用户程序的请求或其他方面是否出错), 并跳转至 步骤 S202。
5208、根据内核请求对查找到的文件执行相应的操作。此处的步 骤是对查找的文件执行用户的操作, 例如读文件、 写文件、 修改文件 属性等等。
5209、 通过用户空间文件系统的函数库的返回数据 API, 返回文 件数据
5210、 内核收到返回的文件数据或者操作结果后,解析文件数据 传输给用户程序。
5211、 流程结束。
下面通过一具体实施例来对本发明的流程进行说明。
S310、用户程序发起读操作( READ /system/res/wallpaper/ 1.png ); S311、 FUSE内核模块收到读操作请求, 并将此读操作请求转译 为 FUSE读操作请求发给后台守护程序;
5312、 后台守护程序通过监听, 得到 FUSE读操作请求;
5313、 后台守护程序解析 FUSE读操作请求, 得到绝对路径 ( /system/res/wallpaper/1.png );
5314、后台守护程序将绝对路径的挂载点去除,得到分区内路径 ( res/wallpaper/ 1.png );
S315、 后台 守护程序在定制化分区查找文件 ( FIND /MPC/res/wallpaper/1.png ), 结果为未找到;
S316、 后台守护程序在定制化分区查找文件 ( FIND /MPC/res/wallpaper/1.png ), 结果为找到;
5317、后台守护程序读取文件( READ /MPS/res/wallpaper/1.png ), 将文件数据包含在 FUSE返回数据内, 使用 FUSE返回数据的 API 发送给内核模块;
5318、 FUSE内核模块收到 FUSE返回数据,解析得到文件数据, 将文件数据传送给用户程序;
5319、 用户程序收到文件数据, 读操作完成。
通过本发明的方法, 实现了在不修改用户代码的前提下, 即可实 现分别访问两个分区, 这在当前手机系统版本日新月异、用户需求经 常变化的情况下, 具有重要的意义, 大大降低了工作量和风险, 保证 了软件开发的简单可靠, 也兼顾了定制化的方便快捷。
基于上述方法,本发明还提供一种基于用户空间文件系统的移动 终端定制化系统, 如图 4所示, 其包括:
系统分区挂载模块 100, 用于在根目录下建立系统分区目录, 将 系统分区挂载到系统分区目录;
定制化分区挂载模块 200, 用于在根目录下建立与系统分区的目 录层级结构一致的定制化分区目录,将定制化分区挂载到定制化分区 目录;
执行模块 300, 用于通过用户空间文件系统的后台守护程序来中 转用户程序对系统分区和定制化分区的操作,并根据建立的定制化分 区目录和系统分区目录依次在定制化分区和系统分区中查找文件,若
找到相应的文件, 则执行用户程序的操作。
进一步, 所述执行模块 300包括:
挂载点设置单元, 用于通过用户空间文件系统的函数库的挂载 API, 将才艮目录下的系统目录设置为用户空间文件系统的挂载点; 监听单元,用于通过用户空间文件系统的函数库的监听 API监听 内核清求;
解析单元, 用于监听到内核请求后, 对内核请求进行解析获得绝 对路径;
挂载点去除单元, 用于将绝对路径的挂载点去除获得分区内路 径;
第一查找单元,用于根据分区内路径在定制化分区查找相应的文 件;
第二查找单元, 用于根据分区内路径在系统分区查找相应的文 件;
执行单元, 用于根据内核请求对查找到的文件执行相应的操作。 进一步, 所述执行模块 300还包括:
转发单元, 用于在内核收到用户程序的操作请求时, 将操作请求 转译为内核请求, 并转发给后台守护程序。
进一步, 所述执行模块 300还包括:
返回单元, 用于通过用户空间文件系统的函数库的返回数据 API, 返回执行操作之后得到的文件数据给内核。
进一步, 所述执行模块 300还包括:
传送单元, 用于内核收到返回的文件数据后, 将文件数据传送给 用户程序。 关于上述模块单元的技术细节在前面的方法中已有详述, 故不再赘述。
综上所述, 本发明通过使用用户空间文件系统的后台守护程序, 来中转用户程序对系统分区以及定制化分区的操作,并且在中转过程 中, 依次查找定制化分区和系统分区中是否存在用户程序需要的文 件, 从而实现将两个实际分区合成为一个逻辑分区的目的, 实现了在 不修改用户代码的前提下, 分别访问两个分区, 既能保证软件开发的 简单可靠, 又能兼顾定制化的方便快捷。
应当理解的是, 本发明的应用不限于上述的举例, 对本领域普通 技术人员来说, 可以根据上述说明加以改进或变换, 所有这些改进和 变换都应属于本发明所附权利要求的保护范围。
Claims
1、 一种基于用户空间文件系统的移动终端定制化方法, 其特征 在于, 包括步骤:
A、 在根目录下建立系统分区目录, 将系统分区挂载到系统分区 目录;
B、 在根目录下建立与系统分区的目录层级结构一致的定制化分 区目录, 将定制化分区挂载到定制化分区目录;
C、 通过用户空间文件系统的后台守护程序来中转用户程序对系 统分区和定制化分区的操作,并才艮据建立的定制化分区目录和系统分 区目录依次在定制化分区和系统分区中查找文件, 若找到相应的文 件, 则执行用户程序的操作。
2、 根据权利要求 1所述的基于用户空间文件系统的移动终端定 制化方法, 其特征在于, 所述步骤 C具体包括:
Cl、通过用户空间文件系统的函数库的挂载 API, 将根目录下的 系统目录设置为用户空间文件系统的挂载点;
C2、 通过用户空间文件系统的函数库的监听 API监听内核请求; C3、 监听到内核请求后, 对内核请求进行解析获得绝对路径; C4、 将绝对路径的挂载点去除获得分区内路径;
C5、 根据分区内路径在定制化分区查找相应的文件, 若查找到, 则执行步骤 C7, 否则执行步骤 C6;
C6、 根据分区内路径在系统分区查找相应的文件, 若查找到, 则执行步骤 C7, 否则执行差错处理流程;
C7、 根据内核请求对查找到的文件执行相应的操作。
3、 根据权利要求 2所述的基于用户空间文件系统的移动终端定 制化方法, 其特征在于, 所述步骤 C1与 C2之间, 在内核收到用户 程序的操作请求时, 将操作请求转译为内核请求, 并转发给后台守护 程序。
4、 根据权利要求 2所述的基于用户空间文件系统的移动终端定 制化方法, 其特征在于, 所述步骤 C7之后还包括:
C8、通过用户空间文件系统的函数库的返回数据 API,返回执行 操作之后得到的文件数据给内核。
5、 根据权利要求 4所述的基于用户空间文件系统的移动终端定 制化方法, 其特征在于, 所述步骤 C8之后还包括:
C9、 内核收到返回的文件数据后, 将文件数据传送给用户程序。
6、 一种基于用户空间文件系统的移动终端定制化方法, 其特征 在于, 包括步骤:
A、 在根目录下建立系统分区目录, 将系统分区挂载到系统分区 目录;
B、 在根目录下建立与系统分区的目录层级结构一致的定制化分 区目录, 将定制化分区挂载到定制化分区目录;
C、 通过用户空间文件系统的后台守护程序来中转用户程序对系 统分区和定制化分区的操作,并才艮据建立的定制化分区目录和系统分 区目录依次在定制化分区和系统分区中查找文件, 若找到相应的文 件, 则执行用户程序的操作;
其中, 在步骤 A 中的挂载是指将相应的分区的目录结构, 结合 到 Linux的系统目录结构上去的动作;
在步骤 B 中在根目录下建立定制化分区目录与系统分区目录的 目录层级结构一致,其需要软件开发小组和定制化小组遵守相同的定 义目录层级结构规范, 除了挂载点以及具体文件名之外, 其余目录包 括分区中第一级目录和第二级目录名称都一致,这样的两个分区的目 录层级结构一致。
7、 根据权利要求 6所述的基于用户空间文件系统的移动终端定 制化方法, 其特征在于, 所述步骤 C具体包括:
Cl、通过用户空间文件系统的函数库的挂载 API, 将根目录下的 系统目录设置为用户空间文件系统的挂载点;
C2、 通过用户空间文件系统的函数库的监听 API监听内核请求;
C3、 监听到内核请求后, 对内核请求进行解析获得绝对路径;
C4、 将绝对路径的挂载点去除获得分区内路径;
C5、 根据分区内路径在定制化分区查找相应的文件, 若查找到, 则执行步骤 C7, 否则执行步骤 C6;
C6、 根据分区内路径在系统分区查找相应的文件, 若查找到, 则执行步骤 C7, 否则执行差错处理流程;
C7、 根据内核请求对查找到的文件执行相应的操作。
8、 根据权利要求 7所述的基于用户空间文件系统的移动终端定 制化方法, 其特征在于, 所述步骤 C1与 C2之间, 在内核收到用户 程序的操作请求时, 将操作请求转译为内核请求, 并转发给后台守护
程序。
9、 根据权利要求 7所述的基于用户空间文件系统的移动终端定 制化方法, 其特征在于, 所述步骤 C7之后还包括:
C8、通过用户空间文件系统的函数库的返回数据 API,返回执行 操作之后得到的文件数据给内核。
10、根据权利要求 9所述的基于用户空间文件系统的移动终端定 制化方法, 其特征在于, 所述步骤 C8之后还包括:
C9、 内核收到返回的文件数据后, 将文件数据传送给用户程序。
11、 一种基于用户空间文件系统的移动终端定制化系统, 其特征 在于, 包括:
系统分区挂载模块, 用于在根目录下建立系统分区目录, 将系统 分区挂载到系统分区目录;
定制化分区挂载模块,用于在根目录下建立与系统分区的目录层 级结构一致的定制化分区目录, 将定制化分区挂载到定制化分区目 录;
执行模块,用于通过用户空间文件系统的后台守护程序来中转用 户程序对系统分区和定制化分区的操作,并才艮据建立的定制化分区目 录和系统分区目录依次在定制化分区和系统分区中查找文件,若找到 相应的文件, 则执行用户程序的操作。
12、 根据权利要求 11所述的基于用户空间文件系统的移动终端 定制化系统, 其特征在于, 所述执行模块包括:
挂载点设置单元, 用于通过用户空间文件系统的函数库的挂载
API, 将才艮目录下的系统目录设置为用户空间文件系统的挂载点; 监听单元,用于通过用户空间文件系统的函数库的监听 API监听 内核清求;
解析单元, 用于监听到内核请求后, 对内核请求进行解析获得绝 对路径;
挂载点去除单元, 用于将绝对路径的挂载点去除获得分区内路 径;
第一查找单元,用于根据分区内路径在定制化分区查找相应的文 件;
第二查找单元, 用于根据分区内路径在系统分区查找相应的文 件;
执行单元, 用于根据内核请求对查找到的文件执行相应的操作。
13、 根据权利要求 11所述的基于用户空间文件系统的移动终端 定制化系统, 其特征在于, 所述执行模块还包括:
转发单元, 用于在内核收到用户程序的操作请求时, 将操作请求 转译为内核请求, 并转发给后台守护程序。
14、 根据权利要求 11所述的基于用户空间文件系统的移动终端 定制化系统, 其特征在于, 所述执行模块还包括:
返回单元, 用于通过用户空间文件系统的函数库的返回数据 API, 返回执行操作之后得到的文件数据给内核。
15、 根据权利要求 14所述的基于用户空间文件系统的移动终端 定制化系统, 其特征在于, 所述执行模块还包括:
传送单元, 用于内核收到返回的文件数据后, 将文件数据传送给 用户程序。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310417072.1 | 2013-09-13 | ||
CN201310417072.1A CN103473062B (zh) | 2013-09-13 | 2013-09-13 | 一种基于用户空间文件系统的移动终端定制化方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2015035774A1 true WO2015035774A1 (zh) | 2015-03-19 |
Family
ID=49797934
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2014/075521 WO2015035774A1 (zh) | 2013-09-13 | 2014-04-16 | 一种基于用户空间文件系统的移动终端定制化方法及系统 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN103473062B (zh) |
WO (1) | WO2015035774A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10735529B2 (en) | 2017-12-07 | 2020-08-04 | At&T Intellectual Property I, L.P. | Operations control of network services |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103473062B (zh) * | 2013-09-13 | 2017-01-18 | Tcl移动通信科技(宁波)有限公司 | 一种基于用户空间文件系统的移动终端定制化方法及系统 |
CN106796509B (zh) * | 2014-09-26 | 2020-10-16 | 宇龙计算机通信科技(深圳)有限公司 | 操作系统分区的保护方法、保护装置和终端 |
CN104408053A (zh) * | 2014-10-29 | 2015-03-11 | 上海斐讯数据通信技术有限公司 | 一种移动终端存储卡扩展方法 |
CN107749916A (zh) * | 2017-08-28 | 2018-03-02 | 深圳市掌星立意科技有限公司 | 一种手机rom云端实时定制下载的方法及装置 |
CN107491551B (zh) * | 2017-08-30 | 2021-04-06 | 郑州云海信息技术有限公司 | 一种分布式文件系统实现客户端访问的方法及装置 |
CN108549555A (zh) * | 2018-04-10 | 2018-09-18 | Tcl通力电子(惠州)有限公司 | 客制化软件的处理方法、嵌入式系统设备及存储介质 |
CN110889774B (zh) * | 2018-09-07 | 2022-10-14 | Oppo(重庆)智能科技有限公司 | 多区域的手机生产方法、装置及电子设备 |
CN112632624B (zh) * | 2020-12-31 | 2022-10-18 | 中孚安全技术有限公司 | 一种存储块加解密方法、系统、终端及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101964035A (zh) * | 2010-10-11 | 2011-02-02 | 深圳创维-Rgb电子有限公司 | 一种Linux操作系统文件安全系统及电子设备 |
US8402051B2 (en) * | 2009-01-06 | 2013-03-19 | Emc Corporation | Consumer share quota feature |
CN103034684A (zh) * | 2012-11-27 | 2013-04-10 | 北京航空航天大学 | 一种基于内容寻址存储的虚拟机镜像存储优化方法 |
CN103473062A (zh) * | 2013-09-13 | 2013-12-25 | 惠州Tcl移动通信有限公司 | 一种基于用户空间文件系统的移动终端定制化方法及系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1235144C (zh) * | 2001-09-14 | 2006-01-04 | 北京瑞星科技股份有限公司 | 计算机系统及访问文件系统的方法 |
CN102724057B (zh) * | 2012-02-23 | 2017-03-08 | 北京市计算中心 | 一种面向云计算平台的分布式层次化自主管理方法 |
-
2013
- 2013-09-13 CN CN201310417072.1A patent/CN103473062B/zh active Active
-
2014
- 2014-04-16 WO PCT/CN2014/075521 patent/WO2015035774A1/zh active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8402051B2 (en) * | 2009-01-06 | 2013-03-19 | Emc Corporation | Consumer share quota feature |
CN101964035A (zh) * | 2010-10-11 | 2011-02-02 | 深圳创维-Rgb电子有限公司 | 一种Linux操作系统文件安全系统及电子设备 |
CN103034684A (zh) * | 2012-11-27 | 2013-04-10 | 北京航空航天大学 | 一种基于内容寻址存储的虚拟机镜像存储优化方法 |
CN103473062A (zh) * | 2013-09-13 | 2013-12-25 | 惠州Tcl移动通信有限公司 | 一种基于用户空间文件系统的移动终端定制化方法及系统 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10735529B2 (en) | 2017-12-07 | 2020-08-04 | At&T Intellectual Property I, L.P. | Operations control of network services |
US11277482B2 (en) | 2017-12-07 | 2022-03-15 | At&T Intellectual Property I, L.P. | Operations control of network services |
US11659053B2 (en) | 2017-12-07 | 2023-05-23 | At&T Intellectual Property I, L.P. | Operations control of network services |
Also Published As
Publication number | Publication date |
---|---|
CN103473062A (zh) | 2013-12-25 |
CN103473062B (zh) | 2017-01-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2015035774A1 (zh) | 一种基于用户空间文件系统的移动终端定制化方法及系统 | |
EP3441876B1 (en) | Patch upgrade-based file processing method and device, terminal, and storage medium | |
JP7515580B2 (ja) | ネットワークベースメディア処理ワークフローを使用した分割レンダリングのための方法、ワークフローマネージャおよびプログラム | |
CN109634718B (zh) | 云平台创建镜像的方法及系统 | |
CN104885055B (zh) | 一种应用数据同步的方法及装置 | |
US20160239387A1 (en) | Operation synchronization method, device and storage medium | |
KR102499219B1 (ko) | 동적 네트워크 인터페이스를 사용하는 상호운용가능 클라우드 기반 미디어 처리 | |
WO2017041649A1 (zh) | 一种应用部署方法及设备 | |
CN111865649B (zh) | 处理媒体内容的方法和装置、计算机设备和存储介质 | |
TW201629792A (zh) | 配置變更方法及設備 | |
US20200341802A1 (en) | Extensible schemes and scheme signaling for cloud based processing | |
EP3939235A1 (en) | Method and apparatus for envelope descriptor in moving picture experts group network based media processing | |
WO2019085780A1 (zh) | 一种云存储系统及用于云存储系统中实现自定义数据处理的方法 | |
CN103312489A (zh) | 一种终端与服务器进行同步的方法和装置 | |
US12045650B2 (en) | Extensible schemes and scheme signaling for cloud based processing | |
CN111212183A (zh) | 一种用于运行寄宿应用的方法与设备 | |
CN115576654A (zh) | 一种请求处理方法、装置、设备及存储介质 | |
Achanta et al. | Cloudlet-based multi-lingual dictionaries | |
CN117724852A (zh) | 一种云电脑计算资源分配方法及装置 | |
CN111858967A (zh) | 基于网络的媒体处理中处理媒体内容的方法、装置以及存储介质 | |
US11838390B2 (en) | Function repository selection mode and signaling for cloud based processing | |
WO2014043864A1 (zh) | 应用调用的方法及操作系统、浏览器 | |
JP7484022B2 (ja) | クラウドプラットフォームシステムの変数およびイベントを監視、報告、および通知するための方法、システム及びプログラム | |
CN110019059B (zh) | 一种定时同步的方法和装置 | |
WO2022225656A1 (en) | A method for signaling protocol characteristics for cloud workflow inputs and outputs |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 14843500 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 14843500 Country of ref document: EP Kind code of ref document: A1 |