CN116501713A - 一种分布式文件系统的实现方法 - Google Patents
一种分布式文件系统的实现方法 Download PDFInfo
- Publication number
- CN116501713A CN116501713A CN202310752241.0A CN202310752241A CN116501713A CN 116501713 A CN116501713 A CN 116501713A CN 202310752241 A CN202310752241 A CN 202310752241A CN 116501713 A CN116501713 A CN 116501713A
- Authority
- CN
- China
- Prior art keywords
- file
- function
- interface
- file system
- name
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 35
- 230000006870 function Effects 0.000 claims abstract description 214
- 230000008569 process Effects 0.000 claims description 15
- 238000012217 deletion Methods 0.000 claims description 7
- 230000037430 deletion Effects 0.000 claims description 7
- 230000002159 abnormal effect Effects 0.000 claims description 6
- 230000005856 abnormality Effects 0.000 claims description 3
- 230000007246 mechanism Effects 0.000 claims description 3
- 238000012546 transfer Methods 0.000 claims description 3
- 230000009286 beneficial effect Effects 0.000 abstract description 3
- 238000004891 communication Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000001960 triggered effect Effects 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/18—File system types
- G06F16/182—Distributed file systems
-
- 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/16—File or folder operations, e.g. details of user interfaces specifically adapted to file systems
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
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)
- Human Computer Interaction (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明属于分布式文件系统技术领域,涉及一种分布式文件系统的实现方法,包括配置分布式文件系统的文件接口、文件系统接口以及文件管理接口;所述文件接口用于提供对分布式文件系统内文件的读写能力;所述文件系统接口定义远程访问物理文件系统的操作,用户能够通过文件管理器访问分布式文件系统;所述文件管理接口在继承文件系统接口的同时还具备挂载和卸载的操作;基于函数配置文件接口、文件系统接口以及文件管理接口的各类操作或属性。基于本发明实现了文件接口、文件系统接口和文件管理接口的功能,有利于读\写、创建、打开、复制、查询文件以及挂载和卸载;并基于文件接口、文件系统接口以及文件管理接口支撑了分布式文件系统的实现。
Description
技术领域
本申请属于分布式文件系统技术领域,更具体地说,涉及一种分布式文件系统的实现方法。
背景技术
目前,JTRS计划提出了软件通信体系结构(SCA),其主要用来实现软件无限电系统平台,是目前应用最广泛、理论最成熟、结构最规范的系统架构,通过合理的软件通信体系结构设计,可以有效地提高软件系统的可扩展性、互操作性和易用性。
SCA核心框架(CF)包含一组应用编程接口、组件、裁减要求和配置文件,CF接口包括通用接口、基本应用接口、框架控制接口、基本设备接口、框架服务接口,其中框架服务接口包括:文件接口、文件系统接口和文件管理器接口。配置文件采用可扩展描述语言(XML)进行编写,如软件装配描述文件、软件包描述文件、设备配置描述文件和域管理器配置描述文件等,要对这些配置文件进行操作和管理,就需要文件接口、文件系统接口和文件管理接口的支持。
在SCA中,分布式文件系统被定义为一种可插拔的组件,可以在不同的软件应用程序之间共享和重复使用。与普通的分布式文件系相比,SCA中的分布式文件系统基于公共对象请求代理架构实现,通过远程调用的方式实现资源受限平台上文件系统的访问和管理,支持软件组件之间的交互和数据共享。分布式文件系统的功能在软件通信体系架构中通过接口定义语言描述所需要的文件接口、文件系统接口和文件管理器接口,所以要实现分布式系统的功能,就需要实现文件接口和文件系统接口以及文件管理接口的功能。
但目前并未发现在SCA领域中如何具体的去实现文件接口、文件系统接口以及文件管理接口的功能,因此本发明拟提出文件接口、文件系统接口以及文件管理接口的具体实现方法,使得其能够支撑分布式文件系统。
发明内容
本发明提供了一种分布式文件系统的实现方法,拟实现文件接口、文件系统接口以及文件管理接口的具体实现方法,使得能够在符合SCA(软件通信体系结构)规范和SRTF(软件无线电通信装备体系结构)标准的前提下支撑分布式文件系统实现。
一种分布式文件系统的实现方法,包括配置分布式文件系统的文件接口、文件系统接口以及文件管理接口;
所述文件接口、文件系统接口以及文件管理接口的实现包括客户端和服务器端;所述客户端用于提供接口的定义,所述服务器端用于提供接口的具体实现;
所述文件接口用于提供对分布式文件系统内文件的读写能力;基于函数配置文件接口的各操作和属性;
所述文件系统接口定义远程访问物理文件系统的操作,用户能够通过文件管理器访问分布式文件系统;基于函数配置文件系统接口的各类操作;
所述文件管理接口在继承文件系统接口的同时还具备挂载和卸载的操作;基于函数配置文件管理接口的各类操作;
当应用调用文件、文件系统或文件管理的某个接口的某个操作时,首先应用调用客户端的对应接口并把相应的参数传递给所述客户端,然后客户端使用EORB_Object_invoke()函数将文件系统对象和操作作为参数进行传递,通过CORBA远程调用该操作;在远程调用的过程中,通过对象适配器触发文件系统服务端对象进行响应,通过文件系统服务端的结构体指针找到对应的操作并将结果传递给客户端,最后客户端将结果返回给应用。
优选的,所述文件接口的属性包括文件名属性和文件指针属性;
所述文件名属性的实现步骤如下:
定义用于获取文件读写接口实例的文件名读取函数,文件名读取函数使用一个参数,并将参数强制转换为文件实现类型,通过该文件实现类型返回指向文件名字符串的副本的指针,创建文件名字符串的新副本,并返回指向新副本的指针,指针返回完成后,释放返回值指向的内存;
所述文件指针属性的实现步骤如下:
定义用于获取文件读写接口实例的当前指针位置获取函数,当前指针位置获取函数使用一个参数,并将该参数强制转换为文件实现类型,通过该我呢间实现类型直接返回文件接口内部对应的文件名字符串变量,所述文件名字符串变量记录当前指针位置。
优选的,所述文件接口的操作包括读取操作、写入操作、文件大小获取操作、文件关闭操作以及设置文件读写指针位置操作;
所述读取操作的实现步骤如下:
定义用于从文件中读取指定长度数据的读取函数,所述读取函数使用两个参数来输出要读取的数据和所读取数据的长度,再使用分配函数从堆上分配一个CORBA对象,并将CORBA对象的最大值设置为指定长度,再分配一个缓冲区保存数据,接着将读取数据的参数标记为已释放状态,表示所有权已传递给调用方,最后从文件描述符中读取指定数量的数据块到缓冲区中,并将读取的数据存储在变量中;若读取操作中出现错误,则抛出异常;
所述写入操作的实现步骤如下:
定义用于将指定长度的数据写入文件中的写入函数,所述写入函数包括两个参数,两个所述参数分别指定要写入的数据和所写入的数据的长度;若数据长度大于0,则从文件描述符中写入相应数量的数据,对应的写入操作的实际字节数被存储在变量中,若写入操作期间出现错误,则抛出异常;若没有错误且成功写入了所有数据,则在文件接口内部对应的变量上增加写入数据块的字节数;
所述文件大小获取操作的实现步骤如下:
定义用于获取文件大小的文件大小获取函数,所述文件大小获取函数通过一个参数来设置CORBA环境变量,接着创建一个指向完整路径名的字符串指针,将完整的路径名保存在完整路径名变量中,接着调用文件大小获取函数来获得文件的大小,并将结果保存在大小值变量中;若在获取文件大小的过程中出现错误,则抛出异常,并返回异常值,最后释放完整路径名变量所占用的内存,并返回文件大小;
所述文件关闭操作的实现步骤如下:
定义用于关闭文件的文件关闭调用函数,通过文件关闭调用函数来调用文件关闭函数来实现文件的关闭,并判断是否关闭成功,若关闭失败则抛出异常并打印错误信息;若关闭成功,则调用在POA中卸载对象的函数将当前对象从POA中退出;
所述设置文件读写指针位置操作的实现步骤如下:
定义用于将文件读写指针移动到指定位置的指针移动函数,首先检查目标位置是否超出文件大小的范围,若超出则抛出异常,若未超出则调用设置文件位置的函数设置文件读写指针的位置,并将结果保存在变量中。
优选的,在所述文件接口中定义一个文件实现接口的结构体变量,所述结构体变量包含多个函数指针,用于表示结构体变量所代表的文件接口中的各函数,接着定义一个用于获取文件实现接口的文件接口获取函数,返回所述结构体变量的地址。
优选的,所述文件系统接口包括文件删除操作、复制操作、存在操作、文件列出操作、打开操作、创建操作、目录创建操作、目录删除操作以及文件系统属性查询操作。
优选的,所述文件删除操作的实现步骤如下:
定义用于删除文件的文件删除函数,检查文件名是否合法,若合法则获取文件的完整路径名,并将路径名存储在完整路径名变量中,接着调用文件删除函数来删除文件,并判断是否删除成功,若删除失败则抛出异常;若删除成功则释放完整路径名变量字符串所占用的空间;
所述复制操作的实现步骤如下:
定义用于从源文件复制内容到目标文件的复制函数,首先判断源文件名称和目标文件名称是否相同,若相同则生成异常;若不相同,则调用复制函数来完成文件复制,接着判断是否复制成功,复制成功后释放对象所占用的资源;
所述存在操作的实现步骤如下:
定义用于判断文件是否存在的判断函数,首先检查文件名是否合法,若合法则获取文件的完整路径名,并将该路径名存储在完整路径名变量中,再调用判断函数来确认文件是否存在,若文件存在则释放完整路径名变量字符串所占用的空间,并返回表示文件存在的值;若文件不存在,则释放完整路径名变量字符串所占用的空间,并返回表示文件不存在的值;
所述文件列出操作的实现步骤如下:
定义用于列出指定模式匹配的文件系统中的所有文件信息的匹配函数,首先将要查找的路径模式存储在本地模式中,接着检查模式是否为合法的文件名模式,如果模式合法,则通过匹配函数查找匹配项,若存在匹配项,则创建一个包含匹配项数量的对象,并通过设置该对象的最大值和长度来指定缓冲区的最大容量和长度,接着迭代遍历匹配到的每个文件中,并将文件信息添加到对象中,最后释放资源并返回对象;
所述打开操作的实现步骤如下:
定义用于打开指定文件的打开函数,以便后续进行读取或写入操作,打开函数的参数包括文件系统对象的服务端、文件名称、“只读”和“创建”,在打开操作实现过程中,“创建”参数的值为0,表示如果文件不存在,不会自动创建一个新的文件,首先检查文件名称是否合法,若合法,将文件名称与文件系统路径合并,并存在完整路径名变量中,接着打开文件,并获取文件对象,最后释放完整路径名变量并返回打开的文件对象;
所述创建操作的实现步骤如下:
定义用于创建指定名称文件的创建函数,首先传入一个参数和文件名,然后通过调用打开函数来打开或创建该文件,并将得到的对象返回;使用打开函数进行调用时,将“只读”参数设为0,并将“创建”参数设为1;其中“只读”值为0时表示创建文件时既具备读取又具备写入的权限;“创建”值为1时则表示如果该文件不存在,则文件打开函数将创建该文件;
所述目录创建操作的实现步骤如下:
定义用于创建新目录的目录创建函数,首先检查目录名是否有效,若有效则将根目录路径与给定的目录名相连,得到它的绝对路径,最后调用核心框架文件系统的内部创建目录的机制来创建目录,并将计算出的绝对路径作为参数传递,目录创建函数最后释放动态分配的内存并返回;
所述目录删除操作的实现步骤如下:
定义用于删除文件系统中的目录的目录删除函数,首先检查目录名是否有效,如果有效则将根目录与给定的目录名相连,得到其完整路径,然后在该目录不包含任何文件时直接删除该目录,若该目录包含文件,则返回错误信息,目录删除函数最后释放动态分配的内存并返回;
所述文件系统属性查询操作的实现步骤如下:
定义用于查询文件系统属性的查询函数,获取指定目录的大小和可用空间,并遍历传入的属性列表,若属性为CF_FileSystem_SIZE则将“大小”值放入属性值,若属性为CF_FileSystem_AVAILABLE_SPACE则将“可用空间”值放入属性值,否则返回出错信息,最后根据是否有无效属性将对应的异常信息返回或释放分配的内存并返回。
优选的,在所述文件系统接口中定义一个文件系统实现接口的结构体变量,所述结构体变量包含多个函数指针,用于表示文件系统接口中的各函数;接着定义一个获取文件系统接口的获取函数,返回上述结构体变量的地址,也就是将该结构体作为函数的返回值,便于在实现过程中调用该函数时得到一个指向具有完整文件系统接口实现的结构体指针,使得调用者能够访问该接口内部定义的各个函数。
优选的,所述文件管理接口包括挂载操作、卸载操作以及获取挂载文件操作。
优选的,所述挂载操作的实现步骤如下:
定义用于挂载分布式文件系统的挂载函数,所述挂载函数的输入参数包括服务端、挂载点、文件系统和环境变量,首先挂载函数会对输入的参数进行检查,检查输入的文件系统参数是否为空,输入的挂载点名称是否有效和是否存在,如果不存在则进行挂载操作,首先将传入的挂载点名称以及文件系统对象分别赋值给两个变量,接着获取已存在挂载点的数量并计算出该挂载点的位置,以便将挂载点添加到文件系统管理器的数组中,如果当前系统存在的挂载点数量超出了数组的最大容量,则需要重新分配内存,把已有的数据复制到新分配的内存中,并将挂载点和文件系统对象添加到其中,并将文件系统对象与挂载点相关联,完成一次挂载操作,挂载点数量加一,最后挂载函数判断是否设置了挂载回调函数,若设置则会调用该挂载回调函数;
所述卸载操作的实现步骤如下:
定义用于卸载分布式文件系统的卸载函数,所述卸载函数的输入参数包括服务端、挂载点和环境变量,首先卸载函数会遍历挂载点和文件系统的空间查找要卸载的挂载点,并从空间中删除该挂载点和文件系统,若查找到了该挂载点,则将该挂载点对应的文件系统对象释放掉,并清空其在空间中的位置,若未找到挂载点,则抛出相应的异常并返回错误信息;
所述获取挂载文件操作的实现步骤如下:
定义用于获取文件管理器实例中已挂载文件系统信息的文件获取函数,首先文件获取函数创建一个临时变量,并对临时变量进行初始化,其中初始化包括:设置长度、最大长度以及分配缓冲区;然后通过文件获取函数遍历保存在文件管理器实例中的文件系统和挂载点列表,并逐一复制挂载点和文件系统的信息到临时变量中,并返回该临时变量。
优选的,在所述文件管理接口中定义文件管理实现接口的结构体变量,所述结构体变量包含多个函数指针,用于表示文件管理接口中的各个函数,然后定义一个用于获取文件管理接口的获取函数,通过该获取函数返回所述结构体变量的地址。
本发明的有益效果包括:
1.在符合SCA(软件通信体系结构)规范和SRTF(软件无线电通信装备体系结构)标准的前提下实现了文件接口、文件系统接口和文件管理接口的功能,有利于在SCA、SRTF等可重构系统领域通过CORBA远程调用的方式实现读\写、创建、打开、复制、查询文件以及挂载和卸载等功能,在执行过程中,通过调用文件接口,可以使分布式文件系统内的文件具有读写能力;通过调用文件管理接口可以访问分布式文件系统;通过调用文件系统接口,可以打开读取各类文件,便于核心框架中的域管理器和设备管理器调取文件中的信息并执行,同时还能通过文件系统查询属性是否匹配。
2.通过返回结构体变量地址的方式,让调用者访问文件/文件系统中的各种操作,这种方式实现了多态性,在不同的对象上调用同名函数时,根据对象所属的类而调用对应的函数实现
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1 为本发明的整个方法的实现框图。
图2为本发明的分布式系统中参数以及文件的传递流程框图。
实施方式
为了使本申请所要解决的技术问题、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
需要说明的是,当元件被称为“固定于”或“设置于”另一个元件,它可以直接在另一个元件上或者间接在该另一个元件上。当一个元件被称为是“连接于”另一个元件,它可以是直接连接到另一个元件或间接连接至该另一个元件上。
需要理解的是,术语“长度”、“宽度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本申请和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本申请的限制。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本申请的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
参见图1 ,一种分布式文件系统的实现方法,包括配置分布式文件系统的文件接口、文件系统接口以及文件管理接口;
所述文件接口、文件系统接口以及文件管理接口的实现包括客户端和服务器端;所述客户端用于提供接口的定义,所述服务器端用于提供接口的具体实现;
所述文件接口用于提供对分布式文件系统内文件的读写能力;基于函数配置文件接口的各操作和属性;
所述文件系统接口定义远程访问物理文件系统的操作,用户能够通过文件管理器访问分布式文件系统;基于函数配置文件系统接口的各类操作;
所述文件管理接口在继承文件系统接口的同时还具备挂载和卸载的操作;基于函数配置文件管理接口的各类操作;
当应用调用文件、文件系统或文件管理的某个接口的某个操作时,首先应用调用客户端的对应接口并把相应的参数传递给所述客户端,然后客户端使用EORB_Object_invoke()函数将文件系统对象和操作作为参数进行传递,通过CORBA远程调用该操作;在远程调用的过程中,通过对象适配器触发文件系统服务端对象进行响应,通过文件系统服务端的结构体指针找到对应的操作并将结果传递给客户端,最后客户端将结果返回给应用。
所述文件接口的属性包括文件名属性和文件指针属性;
所述文件名属性的实现步骤如下:
定义用于获取文件读写接口实例的文件名读取函数,文件名读取函数使用一个参数,并将参数强制转换为文件实现类型,通过该文件实现类型返回指向文件名字符串的副本的指针,创建文件名字符串的新副本,并返回指向新副本的指针,指针返回完成后,释放返回值指向的内存;
所述文件指针属性的实现步骤如下:
定义用于获取文件读写接口实例的当前指针位置获取函数,当前指针位置获取函数使用一个参数,并将该参数强制转换为文件实现类型,通过该我呢间实现类型直接返回文件接口内部对应的文件名字符串变量,所述文件名字符串变量记录当前指针位置。
所述文件接口的操作包括读取操作、写入操作、文件大小获取操作、文件关闭操作以及设置文件读写指针位置操作;
所述读取操作的实现步骤如下:
定义用于从文件中读取指定长度数据的读取函数,所述读取函数使用两个参数来输出要读取的数据和所读取数据的长度,再使用分配函数从堆上分配一个CORBA对象,并将CORBA对象的最大值设置为指定长度,再分配一个缓冲区保存数据,接着将读取数据的参数标记为已释放状态,表示所有权已传递给调用方,最后从文件描述符中读取指定数量的数据块到缓冲区中,并将读取的数据存储在变量中;若读取操作中出现错误,则抛出异常;
所述写入操作的实现步骤如下:
定义用于将指定长度的数据写入文件中的写入函数,所述写入函数包括两个参数,两个所述参数分别指定要写入的数据和所写入的数据的长度;若数据长度大于0,则从文件描述符中写入相应数量的数据,对应的写入操作的实际字节数被存储在变量中,若写入操作期间出现错误,则抛出异常;若没有错误且成功写入了所有数据,则在文件接口内部对应的变量上增加写入数据块的字节数;
所述文件大小获取操作的实现步骤如下:
定义用于获取文件大小的文件大小获取函数,所述文件大小获取函数通过一个参数来设置CORBA环境变量,接着创建一个指向完整路径名的字符串指针,将完整的路径名保存在完整路径名变量中,接着调用文件大小获取函数来获得文件的大小,并将结果保存在大小值变量中;若在获取文件大小的过程中出现错误,则抛出异常,并返回异常值,最后释放完整路径名变量所占用的内存,并返回文件大小;
所述文件关闭操作的实现步骤如下:
定义用于关闭文件的文件关闭调用函数,通过文件关闭调用函数来调用文件关闭函数来实现文件的关闭,并判断是否关闭成功,若关闭失败则抛出异常并打印错误信息;若关闭成功,则调用在POA中卸载对象的函数将当前对象从POA中退出;
所述设置文件读写指针位置操作的实现步骤如下:
定义用于将文件读写指针移动到指定位置的指针移动函数,首先检查目标位置是否超出文件大小的范围,若超出则抛出异常,若未超出则调用设置文件位置的函数设置文件读写指针的位置,并将结果保存在变量中。
在所述文件接口中定义一个文件实现接口的结构体变量,所述结构体变量包含多个函数指针,用于表示结构体变量所代表的文件接口中的各函数,接着定义一个用于获取文件实现接口的文件接口获取函数,返回所述结构体变量的地址;也就是将该结构体作为函数的返回值,便于在文件实现过程中调用该函数时得到一个指向具有完整文件接口实现的结构体指针,使得调用者能够访问该接口内部定义的各个函数。
所述文件系统接口包括文件删除操作、复制操作、存在操作、文件列出操作、打开操作、创建操作、目录创建操作、目录删除操作以及文件系统属性查询操作。
所述文件删除操作的实现步骤如下:
定义用于删除文件的文件删除函数,检查文件名是否合法,若合法则获取文件的完整路径名,并将路径名存储在完整路径名变量中,接着调用文件删除函数来删除文件,并判断是否删除成功,若删除失败则抛出异常;若删除成功则释放完整路径名变量字符串所占用的空间;
所述复制操作的实现步骤如下:
定义用于从源文件复制内容到目标文件的复制函数,首先判断源文件名称和目标文件名称是否相同,若相同则生成异常;若不相同,则调用复制函数来完成文件复制,接着判断是否复制成功,复制成功后释放对象所占用的资源;
所述存在操作的实现步骤如下:
定义用于判断文件是否存在的判断函数,首先检查文件名是否合法,若合法则获取文件的完整路径名,并将该路径名存储在完整路径名变量中,再调用判断函数来确认文件是否存在,若文件存在则释放完整路径名变量字符串所占用的空间,并返回表示文件存在的值;若文件不存在,则释放完整路径名变量字符串所占用的空间,并返回表示文件不存在的值;
所述文件列出操作的实现步骤如下:
定义用于列出指定模式匹配的文件系统中的所有文件信息的匹配函数,首先将要查找的路径模式存储在本地模式中,接着检查模式是否为合法的文件名模式,如果模式合法,则通过匹配函数查找匹配项,若存在匹配项,则创建一个包含匹配项数量的对象,并通过设置该对象的最大值和长度来指定缓冲区的最大容量和长度,接着迭代遍历匹配到的每个文件中,并将文件信息添加到对象中,最后释放资源并返回对象;
所述打开操作的实现步骤如下:
定义用于打开指定文件的打开函数,以便后续进行读取或写入操作,打开函数的参数包括文件系统对象的服务端、文件名称、“只读”和“创建”,在打开操作实现过程中,“创建”参数的值为0,表示如果文件不存在,不会自动创建一个新的文件,首先检查文件名称是否合法,若合法,将文件名称与文件系统路径合并,并存在完整路径名变量中,接着打开文件,并获取文件对象,最后释放完整路径名变量并返回打开的文件对象;
所述创建操作的实现步骤如下:
定义用于创建指定名称文件的创建函数,首先传入一个参数和文件名,然后通过调用打开函数来打开或创建该文件,并将得到的对象返回;使用打开函数进行调用时,将“只读”参数设为0,并将“创建”参数设为1;其中“只读”值为0时表示创建文件时既具备读取又具备写入的权限;“创建”值为1时则表示如果该文件不存在,则文件打开函数将创建该文件;
所述目录创建操作的实现步骤如下:
定义用于创建新目录的目录创建函数,首先检查目录名是否有效,若有效则将根目录路径与给定的目录名相连,得到它的绝对路径,最后调用核心框架文件系统的内部创建目录的机制来创建目录,并将计算出的绝对路径作为参数传递,目录创建函数最后释放动态分配的内存并返回;
所述目录删除操作的实现步骤如下:
定义用于删除文件系统中的目录的目录删除函数,首先检查目录名是否有效,如果有效则将根目录与给定的目录名相连,得到其完整路径,然后在该目录不包含任何文件时直接删除该目录,若该目录包含文件,则返回错误信息,目录删除函数最后释放动态分配的内存并返回;
所述文件系统属性查询操作的实现步骤如下:
定义用于查询文件系统属性的查询函数,获取指定目录的大小和可用空间,并遍历传入的属性列表,若属性为CF_FileSystem_SIZE则将“大小”值放入属性值,若属性为CF_FileSystem_AVAILABLE_SPACE则将“可用空间”值放入属性值,否则返回出错信息,最后根据是否有无效属性将对应的异常信息返回或释放分配的内存并返回。
在所述文件系统接口中定义一个文件系统实现接口的结构体变量,所述结构体变量包含多个函数指针,用于表示文件系统接口中的各函数;接着定义一个获取文件系统接口的获取函数,返回上述结构体变量的地址,也就是将该结构体作为函数的返回值,便于在实现过程中调用该函数时得到一个指向具有完整文件系统接口实现的结构体指针,使得调用者能够访问该接口内部定义的各个函数。
所述文件管理接口包括挂载操作、卸载操作以及获取挂载文件操作。
所述挂载操作的实现步骤如下:
定义用于挂载分布式文件系统的挂载函数,所述挂载函数的输入参数包括服务端、挂载点、文件系统和环境变量,首先挂载函数会对输入的参数进行检查,检查输入的文件系统参数是否为空,输入的挂载点名称是否有效和是否存在,如果不存在则进行挂载操作,首先将传入的挂载点名称以及文件系统对象分别赋值给两个变量,接着获取已存在挂载点的数量并计算出该挂载点的位置,以便将挂载点添加到文件系统管理器的数组中,如果当前系统存在的挂载点数量超出了数组的最大容量,则需要重新分配内存,把已有的数据复制到新分配的内存中,并将挂载点和文件系统对象添加到其中,并将文件系统对象与挂载点相关联,完成一次挂载操作,挂载点数量加一,最后挂载函数判断是否设置了挂载回调函数,若设置则会调用该挂载回调函数;
所述卸载操作的实现步骤如下:
定义用于卸载分布式文件系统的卸载函数,所述卸载函数的输入参数包括服务端、挂载点和环境变量,首先卸载函数会遍历挂载点和文件系统的空间查找要卸载的挂载点,并从空间中删除该挂载点和文件系统,若查找到了该挂载点,则将该挂载点对应的文件系统对象释放掉,并清空其在空间中的位置,若未找到挂载点,则抛出相应的异常并返回错误信息;
所述获取挂载文件操作的实现步骤如下:
定义用于获取文件管理器实例中已挂载文件系统信息的文件获取函数,首先文件获取函数创建一个临时变量,并对临时变量进行初始化,其中初始化包括:设置长度、最大长度以及分配缓冲区;然后通过文件获取函数遍历保存在文件管理器实例中的文件系统和挂载点列表,并逐一复制挂载点和文件系统的信息到临时变量中,并返回该临时变量;由于函数将挂载点和文件系统的信息都复制了一份到临时变量中,因此对临时变量所指向的内存的释放需要在调用完毕之后手动释放。
在所述文件管理接口中定义文件管理实现接口的结构体变量,所述结构体变量包含多个函数指针,用于表示文件管理接口中的各个函数,然后定义一个用于获取文件管理接口的获取函数,通过该获取函数返回所述结构体变量的地址,也就是将该结构体作为函数的返回值,便于调用该函数时得到一个指向具有完整文件管理接口实现的结构体指针,使得调用者能够访问该接口内部定义的各个函数。
参见图2所示,在分布式文件系统中,所有接口(文件接口、文件系统接口以及文件管理接口)的实现包括客户端和服务器端,客户端只提供接口的定义,服务器端提供接口的具体实现,当应用调用文件、文件系统或文件管理的某个接口的某个操作时,首先应用调用客户端的对应接口并把相应的参数传递给客户端,然后客户端使用EORB_Object_invoke()函数,并将文件系统对象和操作作为参数传递,通过CORBA远程调用该操作,在远程调用过程中,是通过对象适配器(POA)触发文件系统服务端对象进行响应,通过服务端的结构体指针找到对应的操作并将结果传递给客户端,最后客户端再将结果返回给应用;例如:域管理器调用文件系统接口中的存在操作,首先域管理调用客户端的存在操作,并把文件系统、文件名称等参数传递给客户端,然后客户端使用EORB_Object_invoke()函数,通过CORBA远程调用存在操作,并将文件系统对象、操作和文件名称作为参数传递,在远程调用过程中,是通过对象适配器(POA)触发文件系统服务端对象进行响应,通过服务端的结构体指针找到存在操作并将结果传递给客户端,最后客户端再将结果返回给应用。
以上仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本申请的保护范围之内。
Claims (10)
1.一种分布式文件系统的实现方法,其特征在于,包括配置分布式文件系统的文件接口、文件系统接口以及文件管理接口;
所述文件接口、文件系统接口以及文件管理接口的实现包括客户端和服务器端;所述客户端用于提供接口的定义,所述服务器端用于提供接口的具体实现;
所述文件接口用于提供对分布式文件系统内文件的读写能力;基于函数配置文件接口的各操作和属性;
所述文件系统接口定义远程访问物理文件系统的操作,用户能够通过文件管理器访问分布式文件系统;基于函数配置文件系统接口的各类操作;
所述文件管理接口在继承文件系统接口的同时还具备挂载和卸载的操作;基于函数配置文件管理接口的各类操作;
当应用调用文件、文件系统或文件管理的某个接口的某个操作时,首先应用调用客户端的对应接口并把相应的参数传递给所述客户端,然后客户端使用EORB_Object_invoke()函数将文件系统对象和操作作为参数进行传递,通过CORBA远程调用该操作;在远程调用的过程中,通过对象适配器触发文件系统服务端对象进行响应,通过文件系统服务端的结构体指针找到对应的操作并将结果传递给客户端,最后客户端将结果返回给应用。
2.根据权利要求1所述的一种分布式文件系统的实现方法,其特征在于,所述文件接口的属性包括文件名属性和文件指针属性;
所述文件名属性的实现步骤如下:
定义用于获取文件读写接口实例的文件名读取函数,文件名读取函数使用一个参数,并将参数强制转换为文件实现类型,通过该文件实现类型返回指向文件名字符串的副本的指针,创建文件名字符串的新副本,并返回指向新副本的指针,指针返回完成后,释放返回值指向的内存;
所述文件指针属性的实现步骤如下:
定义用于获取文件读写接口实例的当前指针位置获取函数,当前指针位置获取函数使用一个参数,并将该参数强制转换为文件实现类型,通过文件实现类型直接返回文件接口内部对应的文件名字符串变量,所述文件名字符串变量记录当前指针位置。
3.根据权利要求1所述的一种分布式文件系统的实现方法,其特征在于,所述文件接口的操作包括读取操作、写入操作、文件大小获取操作、文件关闭操作以及设置文件读写指针位置操作;
所述读取操作的实现步骤如下:
定义用于从文件中读取指定长度数据的读取函数,所述读取函数使用两个参数来输出要读取的数据和所读取数据的长度,再使用分配函数从堆上分配一个CORBA对象,并将CORBA对象的最大值设置为指定长度,再分配一个缓冲区保存数据,接着将读取数据的参数标记为已释放状态,表示所有权已传递给调用方,最后从文件描述符中读取指定数量的数据块到缓冲区中,并将读取的数据存储在变量中;若读取操作中出现错误,则抛出异常;
所述写入操作的实现步骤如下:
定义用于将指定长度的数据写入文件中的写入函数,所述写入函数包括两个参数,两个所述参数分别指定要写入的数据和所写入的数据的长度;若数据长度大于0,则从文件描述符中写入相应数量的数据,对应的写入操作的实际字节数被存储在变量中,若写入操作期间出现错误,则抛出异常;若没有错误且成功写入了所有数据,则在文件接口内部对应的变量上增加写入数据块的字节数;
所述文件大小获取操作的实现步骤如下:
定义用于获取文件大小的文件大小获取函数,所述文件大小获取函数通过一个参数来设置CORBA环境变量,接着创建一个指向完整路径名的字符串指针,将完整的路径名保存在完整路径名变量中,接着调用文件大小获取函数来获得文件的大小,并将结果保存在大小值变量中;若在获取文件大小的过程中出现错误,则抛出异常,并返回异常值,最后释放完整路径名变量所占用的内存,并返回文件大小;
所述文件关闭操作的实现步骤如下:
定义用于关闭文件的文件关闭调用函数,通过文件关闭调用函数来调用文件关闭函数来实现文件的关闭,并判断是否关闭成功,若关闭失败则抛出异常并打印错误信息;若关闭成功,则调用在POA中卸载对象的函数将当前对象从POA中退出;
所述设置文件读写指针位置操作的实现步骤如下:
定义用于将文件读写指针移动到指定位置的指针移动函数,首先检查目标位置是否超出文件大小的范围,若超出则抛出异常,若未超出则调用设置文件位置的函数设置文件读写指针的位置,并将结果保存在变量中。
4.根据权利要求1所述的一种分布式文件系统的实现方法,其特征在于,在所述文件接口中定义一个文件实现接口的结构体变量,所述结构体变量包含多个函数指针,用于表示结构体变量所代表的文件接口中的各函数,接着定义一个用于获取文件实现接口的文件接口获取函数,返回所述结构体变量的地址。
5.根据权利要求1所述的一种分布式文件系统的实现方法, 其特征在于,所述文件系统接口包括文件删除操作、复制操作、存在操作、文件列出操作、打开操作、创建操作、目录创建操作、目录删除操作以及文件系统属性查询操作。
6.根据权利要求5所述的一种分布式文件系统的实现方法,其特征在于,所述文件删除操作的实现步骤如下:
定义用于删除文件的文件删除函数,检查文件名是否合法,若合法则获取文件的完整路径名,并将路径名存储在完整路径名变量中,接着调用文件删除函数来删除文件,并判断是否删除成功,若删除失败则抛出异常;若删除成功则释放完整路径名变量字符串所占用的空间;
所述复制操作的实现步骤如下:
定义用于从源文件复制内容到目标文件的复制函数,首先判断源文件名称和目标文件名称是否相同,若相同则生成异常;若不相同,则调用复制函数来完成文件复制,接着判断是否复制成功,复制成功后释放对象所占用的资源;
所述存在操作的实现步骤如下:
定义用于判断文件是否存在的判断函数,首先检查文件名是否合法,若合法则获取文件的完整路径名,并将该路径名存储在完整路径名变量中,再调用判断函数来确认文件是否存在,若文件存在则释放完整路径名变量字符串所占用的空间,并返回表示文件存在的值;若文件不存在,则释放完整路径名变量字符串所占用的空间,并返回表示文件不存在的值;
所述文件列出操作的实现步骤如下:
定义用于列出指定模式匹配的文件系统中的所有文件信息的匹配函数,首先将要查找的路径模式存储在本地模式中,接着检查模式是否为合法的文件名模式,如果模式合法,则通过匹配函数查找匹配项,若存在匹配项,则创建一个包含匹配项数量的对象,并通过设置该对象的最大值和长度来指定缓冲区的最大容量和长度,接着迭代遍历匹配到的每个文件中,并将文件信息添加到对象中,最后释放资源并返回对象;
所述打开操作的实现步骤如下:
定义用于打开指定文件的打开函数,以便后续进行读取或写入操作,打开函数的参数包括文件系统对象的服务端、文件名称、“只读”和“创建”,在打开操作实现过程中,“创建”参数的值为0,表示如果文件不存在,不会自动创建一个新的文件,首先检查文件名称是否合法,若合法,将文件名称与文件系统路径合并,并存在完整路径名变量中,接着打开文件,并获取文件对象,最后释放完整路径名变量并返回打开的文件对象;
所述创建操作的实现步骤如下:
定义用于创建指定名称文件的创建函数,首先传入一个参数和文件名,然后通过调用打开函数来打开或创建该文件,并将得到的对象返回;使用打开函数进行调用时,将“只读”参数设为0,并将“创建”参数设为1;其中“只读”值为0时表示创建文件时既具备读取又具备写入的权限;“创建”值为1时则表示如果该文件不存在,则文件打开函数将创建该文件;
所述目录创建操作的实现步骤如下:
定义用于创建新目录的目录创建函数,首先检查目录名是否有效,若有效则将根目录路径与给定的目录名相连,得到它的绝对路径,最后调用核心框架文件系统的内部创建目录的机制来创建目录,并将计算出的绝对路径作为参数传递,目录创建函数最后释放动态分配的内存并返回;
所述目录删除操作的实现步骤如下:
定义用于删除文件系统中的目录的目录删除函数,首先检查目录名是否有效,如果有效则将根目录与给定的目录名相连,得到其完整路径,然后在该目录不包含任何文件时直接删除该目录,若该目录包含文件,则返回错误信息,目录删除函数最后释放动态分配的内存并返回;
所述文件系统属性查询操作的实现步骤如下:
定义用于查询文件系统属性的查询函数,获取指定目录的大小和可用空间,并遍历传入的属性列表,若属性为CF_FileSystem_SIZE则将“大小”值放入属性值,若属性为CF_FileSystem_AVAILABLE_SPACE则将“可用空间”值放入属性值,否则返回出错信息,最后根据是否有无效属性将对应的异常信息返回或释放分配的内存并返回。
7.根据权利要求1所述的一种分布式文件系统的实现方法,其特征在于,在所述文件系统接口中定义一个文件系统实现接口的结构体变量,所述结构体变量包含多个函数指针,用于表示文件系统接口中的各函数;接着定义一个获取文件系统接口的获取函数,返回上述结构体变量的地址。
8.根据权利要求1所述的一种分布式文件系统的实现方法,其特征在于,所述文件管理接口包括挂载操作、卸载操作以及获取挂载文件操作。
9.根据权利要求8所述的一种分布式文件系统的实现方法,其特征在于,所述挂载操作的实现步骤如下:
定义用于挂载分布式文件系统的挂载函数,所述挂载函数的输入参数包括服务端、挂载点、文件系统和环境变量,首先挂载函数会对输入的参数进行检查,检查输入的文件系统参数是否为空,输入的挂载点名称是否有效和是否存在,如果不存在则进行挂载操作,首先将传入的挂载点名称以及文件系统对象分别赋值给两个变量,接着获取已存在挂载点的数量并计算出该挂载点的位置,以便将挂载点添加到文件系统管理器的数组中,如果当前系统存在的挂载点数量超出了数组的最大容量,则需要重新分配内存,把已有的数据复制到新分配的内存中,并将挂载点和文件系统对象添加到其中,并将文件系统对象与挂载点相关联,完成一次挂载操作,挂载点数量加一,最后挂载函数判断是否设置了挂载回调函数,若设置则会调用该挂载回调函数;
所述卸载操作的实现步骤如下:
定义用于卸载分布式文件系统的卸载函数,所述卸载函数的输入参数包括服务端、挂载点和环境变量,首先卸载函数会遍历挂载点和文件系统的空间查找要卸载的挂载点,并从空间中删除该挂载点和文件系统,若查找到了该挂载点,则将该挂载点对应的文件系统对象释放掉,并清空其在空间中的位置,若未找到挂载点,则抛出相应的异常并返回错误信息;
所述获取挂载文件操作的实现步骤如下:
定义用于获取文件管理器实例中已挂载文件系统信息的文件获取函数,首先文件获取函数创建一个临时变量,并对临时变量进行初始化,其中初始化包括:设置长度、最大长度以及分配缓冲区;然后通过文件获取函数遍历保存在文件管理器实例中的文件系统和挂载点列表,并逐一复制挂载点和文件系统的信息到临时变量中,并返回该临时变量。
10.根据权利要求1所述的一种分布式文件系统的实现方法,其特征在于,在所述文件管理接口中定义文件管理实现接口的结构体变量,所述结构体变量包含多个函数指针,用于表示文件管理接口中的各个函数,然后定义一个用于获取文件管理接口的获取函数,通过该获取函数返回所述结构体变量的地址。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310752241.0A CN116501713B (zh) | 2023-06-26 | 2023-06-26 | 一种分布式文件系统的实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310752241.0A CN116501713B (zh) | 2023-06-26 | 2023-06-26 | 一种分布式文件系统的实现方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116501713A true CN116501713A (zh) | 2023-07-28 |
CN116501713B CN116501713B (zh) | 2023-09-22 |
Family
ID=87323419
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310752241.0A Active CN116501713B (zh) | 2023-06-26 | 2023-06-26 | 一种分布式文件系统的实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116501713B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118467060A (zh) * | 2024-07-15 | 2024-08-09 | 成都谐盈科技有限公司 | 基于sca及srtf分布式文件系统的组件加载系统及方法 |
Citations (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20030043398A (ko) * | 2001-11-28 | 2003-06-02 | 엘지전자 주식회사 | 망 요소 관리 시스템의 장치 연동부 구성 및 연동 방법 |
US20050108186A1 (en) * | 2003-10-31 | 2005-05-19 | Eric Anderson | Textual filesystem interface method and apparatus |
CN1852209A (zh) * | 2006-05-31 | 2006-10-25 | 北京和利时系统工程股份有限公司 | 一种分布式控制系统中的远程过程调用方法及系统 |
CN1859702A (zh) * | 2006-03-30 | 2006-11-08 | 华为技术有限公司 | 一种icr配置数据的配置管理方法及系统 |
CN1984149A (zh) * | 2006-04-27 | 2007-06-20 | 华为技术有限公司 | 一种基于消息的分布式系统以及在其中通信的方法 |
CN102546791A (zh) * | 2011-12-30 | 2012-07-04 | 南京师范大学 | 基于状态机-交互事件模型的分布式服务系统及方法 |
CN102882969A (zh) * | 2012-09-25 | 2013-01-16 | 浙江图讯科技有限公司 | 一种工矿企业的安全生产云服务平台 |
CN102917032A (zh) * | 2012-09-25 | 2013-02-06 | 浙江图讯科技有限公司 | 一种工矿企业的安全生产云服务平台 |
CN103197664A (zh) * | 2013-03-07 | 2013-07-10 | 重庆邮电大学 | 基于corba的嵌入式控制器参数标定系统及方法 |
CN104331453A (zh) * | 2014-10-30 | 2015-02-04 | 北京思特奇信息技术股份有限公司 | 一种分布式文件系统及分布式文件系统的构建方法 |
CN105634767A (zh) * | 2014-10-29 | 2016-06-01 | 中兴通讯股份有限公司 | 北向接口分布式管理方法及装置 |
CN106406765A (zh) * | 2016-09-22 | 2017-02-15 | 江苏赞奇科技股份有限公司 | 基于文件链接的异构分布式存储系统及其文件管理方法 |
CN107045530A (zh) * | 2017-01-20 | 2017-08-15 | 华中科技大学 | 一种将对象存储系统实现为本地文件系统的方法 |
CN107491551A (zh) * | 2017-08-30 | 2017-12-19 | 郑州云海信息技术有限公司 | 一种分布式文件系统实现客户端访问的方法及装置 |
US20200334156A1 (en) * | 2019-04-22 | 2020-10-22 | Ctera Networks, Ltd. | System and method for cache pre-warming |
CN113360136A (zh) * | 2021-05-31 | 2021-09-07 | 成都谐盈科技有限公司 | 一种基于sca核心框架控制接口的实现方法 |
WO2022029290A1 (en) * | 2020-08-07 | 2022-02-10 | Carlos Ardanza Azcondo | Interfacing between file client and file server |
CN114973029A (zh) * | 2022-05-20 | 2022-08-30 | 成都软智科技有限公司 | 一种可扩展的异构多无人机协同灭火系统 |
-
2023
- 2023-06-26 CN CN202310752241.0A patent/CN116501713B/zh active Active
Patent Citations (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20030043398A (ko) * | 2001-11-28 | 2003-06-02 | 엘지전자 주식회사 | 망 요소 관리 시스템의 장치 연동부 구성 및 연동 방법 |
US20050108186A1 (en) * | 2003-10-31 | 2005-05-19 | Eric Anderson | Textual filesystem interface method and apparatus |
CN1859702A (zh) * | 2006-03-30 | 2006-11-08 | 华为技术有限公司 | 一种icr配置数据的配置管理方法及系统 |
CN1984149A (zh) * | 2006-04-27 | 2007-06-20 | 华为技术有限公司 | 一种基于消息的分布式系统以及在其中通信的方法 |
CN1852209A (zh) * | 2006-05-31 | 2006-10-25 | 北京和利时系统工程股份有限公司 | 一种分布式控制系统中的远程过程调用方法及系统 |
CN102546791A (zh) * | 2011-12-30 | 2012-07-04 | 南京师范大学 | 基于状态机-交互事件模型的分布式服务系统及方法 |
CN102882969A (zh) * | 2012-09-25 | 2013-01-16 | 浙江图讯科技有限公司 | 一种工矿企业的安全生产云服务平台 |
CN102917032A (zh) * | 2012-09-25 | 2013-02-06 | 浙江图讯科技有限公司 | 一种工矿企业的安全生产云服务平台 |
CN103197664A (zh) * | 2013-03-07 | 2013-07-10 | 重庆邮电大学 | 基于corba的嵌入式控制器参数标定系统及方法 |
CN105634767A (zh) * | 2014-10-29 | 2016-06-01 | 中兴通讯股份有限公司 | 北向接口分布式管理方法及装置 |
CN104331453A (zh) * | 2014-10-30 | 2015-02-04 | 北京思特奇信息技术股份有限公司 | 一种分布式文件系统及分布式文件系统的构建方法 |
CN106406765A (zh) * | 2016-09-22 | 2017-02-15 | 江苏赞奇科技股份有限公司 | 基于文件链接的异构分布式存储系统及其文件管理方法 |
CN107045530A (zh) * | 2017-01-20 | 2017-08-15 | 华中科技大学 | 一种将对象存储系统实现为本地文件系统的方法 |
CN107491551A (zh) * | 2017-08-30 | 2017-12-19 | 郑州云海信息技术有限公司 | 一种分布式文件系统实现客户端访问的方法及装置 |
US20200334156A1 (en) * | 2019-04-22 | 2020-10-22 | Ctera Networks, Ltd. | System and method for cache pre-warming |
WO2022029290A1 (en) * | 2020-08-07 | 2022-02-10 | Carlos Ardanza Azcondo | Interfacing between file client and file server |
CN113360136A (zh) * | 2021-05-31 | 2021-09-07 | 成都谐盈科技有限公司 | 一种基于sca核心框架控制接口的实现方法 |
CN114973029A (zh) * | 2022-05-20 | 2022-08-30 | 成都软智科技有限公司 | 一种可扩展的异构多无人机协同灭火系统 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118467060A (zh) * | 2024-07-15 | 2024-08-09 | 成都谐盈科技有限公司 | 基于sca及srtf分布式文件系统的组件加载系统及方法 |
CN118467060B (zh) * | 2024-07-15 | 2024-09-17 | 成都谐盈科技有限公司 | 基于sca及srtf分布式文件系统的组件加载系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN116501713B (zh) | 2023-09-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6119118A (en) | Method and system for extending file system metadata | |
EP0629960B1 (en) | Extendible file system | |
US6360230B1 (en) | Method and system for uniformly accessing multiple directory services | |
US6173289B1 (en) | Apparatus and method for performing actions on object-oriented software objects in a directory services system | |
KR100243717B1 (ko) | 객체 지향 환경에서 객체에 대한 지속형 메타상태를 가능하게 하기위한 방법 및 장치 | |
US5761672A (en) | Distributed data base system | |
US6205466B1 (en) | Infrastructure for an open digital services marketplace | |
US7765189B2 (en) | Data migration apparatus, method, and program for data stored in a distributed manner | |
US6611898B1 (en) | Object-oriented cache management system and method | |
US5771384A (en) | Method and system for replacement and extension of container interfaces | |
US6449607B1 (en) | Disk storage with modifiable data management function | |
EP0647902A1 (en) | A data processing system | |
CN116501713B (zh) | 一种分布式文件系统的实现方法 | |
JPH08263292A (ja) | オブジェクト指向プログラミング・インターフェース及びマップする方法 | |
CN110457385B (zh) | 多租户环境中的可实体化的数据库对象 | |
US6941309B2 (en) | Object integrated management system | |
CN103559231A (zh) | 一种文件系统配额管理方法、装置及系统 | |
WO2005076128A1 (en) | Generating device specific requests | |
CA2449534A1 (en) | On-demand software module deployment | |
US6751796B1 (en) | Integration of systems management services with an underlying system object model | |
CN116760913B (zh) | k8s集群协议转换平台配置下发方法及系统 | |
US6029229A (en) | Digital data storage subsystem including directory for efficiently providing formatting information for stored records | |
US5900009A (en) | System and method for accessing records in a cache slot which are associated with a current owner storage element or at least one previous owner storage element | |
CN115563075B (zh) | 基于微内核的虚拟文件系统实现方法 | |
US7350210B2 (en) | Generic data persistence application program interface |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
PE01 | Entry into force of the registration of the contract for pledge of patent right | ||
PE01 | Entry into force of the registration of the contract for pledge of patent right |
Denomination of invention: A Implementation Method of Distributed File System Granted publication date: 20230922 Pledgee: Agricultural Bank of China Limited by Share Ltd. Chengdu high tech Industrial Development Zone Branch Pledgor: Chengdu Xieying Technology Co.,Ltd. Registration number: Y2024510000088 |