[go: up one dir, main page]

CN101944034B - File Execution Method and System - Google Patents

File Execution Method and System Download PDF

Info

Publication number
CN101944034B
CN101944034B CN200910158704.0A CN200910158704A CN101944034B CN 101944034 B CN101944034 B CN 101944034B CN 200910158704 A CN200910158704 A CN 200910158704A CN 101944034 B CN101944034 B CN 101944034B
Authority
CN
China
Prior art keywords
file
operating system
address section
program
memory
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.)
Active
Application number
CN200910158704.0A
Other languages
Chinese (zh)
Other versions
CN101944034A (en
Inventor
李乾辅
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Phison Electronics Corp
Original Assignee
Phison Electronics Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Phison Electronics Corp filed Critical Phison Electronics Corp
Priority to CN200910158704.0A priority Critical patent/CN101944034B/en
Publication of CN101944034A publication Critical patent/CN101944034A/en
Application granted granted Critical
Publication of CN101944034B publication Critical patent/CN101944034B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)
  • Storage Device Security (AREA)

Abstract

The invention discloses a file execution method and system and a programmable storage device, which are used for executing a computer execution code group stored in a hidden storage area of the storage device in an operating system of a computer host. The method includes connecting a storage device to a host computer and providing a loader to manage a set of computer execution codes stored in a hidden storage area. The method also includes running a loader in a main memory of the host computer; requesting the operating system to allocate a first address section in main memory for running a loader; loading the computer execution code group into the first address section from the hidden storage area by the loading program; converting, by the loader, the loaded computer execution code set into executable content executable by the operating system and storing the converted executable content in the first address section; and executing the derivative executive by the loader to execute the converted executable content.

Description

文件执行方法及系统File Execution Method and System

技术领域technical field

本发明涉及一种文件执行方法及系统以及可程序存储装置,且特别是涉及一种用以执行储存在存储装置的隐藏存储区中的计算机执行码组(computer executable code set)的文件执行方法及系统以及可程序存储装置。The present invention relates to a file execution method and system and a programmable storage device, and in particular to a file execution method and system for executing a computer executable code set stored in a hidden storage area of the storage device. system and a programmable storage device.

背景技术Background technique

数码相机、手机与MP3在这几年来的成长十分迅速,使得消费者对存储媒体的需求也急速增加。由于快闪存储器(Flash Memory)具有数据非挥发性、省电、体积小与无机械结构等的特性,最适合用作为可携式存储装置。此外,随着即插即用的连接介面(例如,通用序列汇流排(Universal Serial Bus,USB))的发展,使得可携式存储装置已广泛应用于数字内容的储存上。The rapid growth of digital cameras, mobile phones, and MP3 players has led to a rapid increase in consumer demand for storage media. Because flash memory (Flash Memory) has the characteristics of non-volatile data, power saving, small size and no mechanical structure, it is most suitable for use as a portable storage device. In addition, with the development of plug-and-play connection interfaces (for example, Universal Serial Bus (USB)), portable storage devices have been widely used in digital content storage.

存储装置的制造商为了能够使所贩售的可携式存储装置更具市场竞争力,往往会于所贩售的可携式存储装置中存储应用程序以供购买此可携式存储装置的使用者使用。例如,制造商开发用于可携式存储装置的磁碟管理程序并预储存在可携式存储装置,以使得使用者可使用此磁碟管理程序来管理可携式存储装置的存储状态。In order to make the portable storage devices they sell more competitive in the market, manufacturers of storage devices often store application programs in the portable storage devices they sell for use when purchasing the portable storage devices or use. For example, a manufacturer develops a disk management program for a portable storage device and pre-stores it in the portable storage device, so that users can use the disk management program to manage the storage status of the portable storage device.

现有来说,为使使用者的计算机主机可执行此类制造商所提供的应用程序,此应用程序会预先储存在可携式存储装置的可正常存储数据的分割区(或存储区)中,以利计算机主机存取。由于应用程序可由计算机主机以一般存取文件的方式来存取,因此应用程序亦可轻易地被复制与散播,由此应用程序开发者的智慧财产将无法有效地被保障。尽管已由可携式存储装置的制造商于可携式存储装置中配置隐藏存储区(即,计算机主机无法存取的存储区)来储存欲保密的数据,然此类应用程序必须由计算机主机的操作系统执行方可运作,因此将应用程序储存在隐藏存储区虽可达到避免被复制与散布的目的,但同时也使使用者无法使用此应用程序。因此,有需要开发能够直接执行储存于隐藏存储区的计算机执行码组的方法。Conventionally, in order to enable the user's host computer to execute the application program provided by the manufacturer, the application program will be pre-stored in the partition (or storage area) of the portable storage device that can normally store data , to facilitate computer host access. Because the application program can be accessed by the computer host in the way of accessing files in general, the application program can also be easily copied and distributed, thus the intellectual property of the application program developer cannot be effectively protected. Although the manufacturer of the portable storage device has configured a hidden storage area (that is, a storage area that the host computer cannot access) in the portable storage device to store data to be kept secret, such applications must be controlled by the host computer. Therefore, storing the application program in a hidden storage area can achieve the purpose of avoiding being copied and distributed, but it also prevents the user from using the application program. Therefore, there is a need to develop a method capable of directly executing a computer executable code set stored in a hidden storage area.

发明内容Contents of the invention

本发明提供一种文件执行方法,其能够直接地执行存储在存储装置的隐藏存储区中的计算机执行码组。The present invention provides a file execution method, which can directly execute a computer execution code group stored in a hidden storage area of a storage device.

本发明提供一种文件执行系统,其能够直接地执行储存在存储装置的隐藏存储区中的计算机执行码组。The present invention provides a file execution system, which can directly execute the computer execution code group stored in the hidden storage area of the storage device.

本发明实施例提出一种文件执行方法,用以在计算机主机的操作系统中执行储存在存储装置中的计算机执行码组(computer executablefile),其中此存储装置包括一般存储区与隐藏存储区并且此计算机执行码组是储存在隐藏存储区中。根据本实施例的文件执行方法包括将存储装置连接至计算机主机,其中计算机主机具有主存储器。此文件执行方法还包括提供装入程序,以管理储存在隐藏存储区中的计算机执行码组。此文件执行方法还包括在主存储器中运转(Run)装入程序;请求操作系统在主存储器中分配(Allocate)用于运转装入程序的第一地址区段;由装入程序从隐藏存储区中将计算机执行码组载入至第一地址区段中;由装入程序将所载入的计算机执行码组转换为可由操作系统执行的可执行内容并将所转换的可执行内容的至少一部分储存在第一地址区段中;以及由装入程序建立一衍生执行程序(derivative executionprocedure)来执行所转换的可执行内容。An embodiment of the present invention proposes a file execution method for executing a computer executable file stored in a storage device in an operating system of a computer host, wherein the storage device includes a general storage area and a hidden storage area and the The computer executable code group is stored in the hidden storage area. The file execution method according to this embodiment includes connecting the storage device to a computer host, wherein the computer host has a main memory. The file execution method also includes providing a loading program to manage the computer executable code group stored in the hidden storage area. The file execution method also includes running (Run) the loading program in the main memory; requesting the operating system to allocate (Allocate) the first address segment for running the loading program in the main memory; The computer-executable code group is loaded into the first address segment; the loaded computer-executable code group is converted into executable content executable by the operating system by the loading program and at least a part of the converted executable content is stored in the first address segment; and a derivative execution procedure (derivative execution procedure) is established by the loading program to execute the converted executable content.

本发明实施例提出一种文件执行系统,用以执行储存在存储装置中的计算机执行码组,其中所述存储装置包括一一般存储区与一隐藏存储区并且所述计算机执行码组储存在所述隐藏存储区中。所述文件执行系统包括:计算机主机,包括一操作系统与一主存储器;以及装入模块,电性连接或可存取地连结至所述计算机主机与所述存储装置并且具有一应用程序执行单元,以执行储存在所述隐藏存储区中的所述计算机执行码组。所述操作系统在所述主存储器中运转所述装入模块并且在所述主存储器中分配用于所述装入模块的一第一地址区段。所述应用程序执行单元从所述隐藏存储区中将所述计算机执行码组载入至所述第一地址区段中,将所载入的所述计算机执行码组转换为可由所述操作系统执行的一可执行内容,并将所述可执行内容储存在所述第一地址区段中。所述应用程序执行单元建立一衍生执行程序来执行所述可执行内容。An embodiment of the present invention provides a file execution system for executing a computer-executable code group stored in a storage device, wherein the storage device includes a general storage area and a hidden storage area, and the computer-executable code group is stored in the storage device. in the hidden storage area described above. The file execution system includes: a computer host, including an operating system and a main memory; and a load module, electrically connected or accessible to the computer host and the storage device, and has an application execution unit , to execute the computer executable code set stored in the hidden storage area. The operating system runs the load module in the main memory and allocates a first address segment for the load module in the main memory. The application execution unit loads the computer-executable code group from the hidden storage area into the first address segment, and converts the loaded computer-executable code group into An executable content is executed, and the executable content is stored in the first address segment. The application execution unit creates a derivative execution program to execute the executable content.

基于上述,本发明实施例可直接地执行储存在存储装置的隐藏存储区中的计算机执行码组,并且使用者无法轻易地复制与散布储存在隐藏存储区中的计算机执行码组。Based on the above, the embodiment of the present invention can directly execute the computer executable code set stored in the hidden storage area of the storage device, and the user cannot easily copy and distribute the computer executable code set stored in the hidden storage area.

为让本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合所附图式作详细说明如下。In order to make the above-mentioned features and advantages of the present invention more comprehensible, the following specific embodiments are described in detail together with the accompanying drawings.

附图说明Description of drawings

图1是根据本发明第一实施例所示的文件执行系统的概要方块图;FIG. 1 is a schematic block diagram of a file execution system according to a first embodiment of the present invention;

图2是根据本发明第一实施例所示的装入程序的概要方块图;FIG. 2 is a schematic block diagram of a loading program according to a first embodiment of the present invention;

图3是根据本发明第一实施例所示运转装入程序来执行隐藏存储区中的计算机执行码组时主存储器的运作示意图;3 is a schematic diagram of the operation of the main memory when running the loader to execute the computer executable code group in the hidden storage area according to the first embodiment of the present invention;

图4是根据本发明第一实施例所示的文件执行方法的流程图;FIG. 4 is a flowchart of a file execution method according to the first embodiment of the present invention;

图5是根据本发明第二实施例所示的文件执行系统的概要方块图;5 is a schematic block diagram of a file execution system according to a second embodiment of the present invention;

图6是根据本发明第二实施例所示的文件执行方法的流程图。主要元件符号说明Fig. 6 is a flowchart of a file execution method according to the second embodiment of the present invention. Description of main component symbols

100:文件执行系统              110:计算机主机100: file execution system 110: computer host

112:中央处理单元              114:主存储器112: Central processing unit 114: Main memory

116:输入与输出单元            118:存储单元116: Input and output unit 118: Storage unit

118a:操作系统                 120:装入程序118a: Operating System 120: Loader

122:主控单元                  124:初始化单元122: Main control unit 124: Initialization unit

126:应用程序新增单元          128:应用程序编辑单元126: Application Add Unit 128: Application Edit Unit

130:应用程序删除单元          132:应用程序执行单元130: Application deletion unit 132: Application execution unit

150:存储装置                  152:隐藏存储区150: storage device 152: hidden storage area

154:一般存储区                156:控制器154: General storage area 156: Controller

158:快闪存储器晶片            160、160’:计算机执行码组158: Flash memory chip 160, 160': computer execution code group

162、162’:对应计算机执行码组 302、304:执行点162, 162’: Corresponding computer execution code group 302, 304: Execution point

的可执行内容The executable content of

310:第一地址区段              320:第二地址区段310: The first address segment 320: The second address segment

550:特殊存储区                502:自动执行文件550: Special storage area 502: Automatically execute files

S403、S405、S407、S409-1、S409-3、S409-5、S409-7:   文件执行的步骤S403, S405, S407, S409-1, S409-3, S409-5, S409-7: Steps for file execution

S601、S603、S605、S607:   文件执行的步骤S601, S603, S605, S607: Steps for file execution

具体实施方式Detailed ways

图1是根据本发明第一实施例所示的文件执行系统的概要方块图。FIG. 1 is a schematic block diagram of a file execution system according to a first embodiment of the present invention.

请参照图1,文件执行系统100能够执行储存在存储装置150的隐藏存储区152中的计算机执行码组160。具体来说,存储装置150包括隐藏存储区152与一般存储区154,其中隐藏存储区152是计算机的操作系统无法存取的存储区(即,计算机的操作系统无法依一般程序直接在隐藏存储区中读取与写入数据),而一般存储区154是计算机的操作系统可存取的存储区。在本实施例中,存储装置150为以快闪存储器作为存储媒体的可携式存储装置(例如,随身碟、行动硬碟等)。例如,存储装置150包括控制器156与快闪存储器晶片158,其中控制器156用以控制存储装置150的整体运作,快闪存储器晶片158包括用以储存数据与计算机应用程序的隐藏存储区152与一般存储区154。然而,必须了解的是,本发明不限于此,存储装置150可以是磁带、软碟、光学数据存储装置或其他存储装置。此外,值得一提的是,控制器156更可以将数据或应用程序加密后储存至隐藏存储区152,由此提供数据或应用程序更进一步的保护。此外,此计算机执行码组160可不在存储装置150的文件配置表(File Allocation Table,FAT)中显示相关信息,也就是说,操作系统118a无法辨视此计算机执行码组160为一文件。Referring to FIG. 1 , the file execution system 100 can execute the computer executable code group 160 stored in the hidden storage area 152 of the storage device 150 . Specifically, the storage device 150 includes a hidden storage area 152 and a general storage area 154, wherein the hidden storage area 152 is a storage area that cannot be accessed by the operating system of the computer (that is, the operating system of the computer cannot directly access the hidden storage area according to the general program). read and write data), and the general storage area 154 is a storage area accessible by the operating system of the computer. In this embodiment, the storage device 150 is a portable storage device (for example, a flash drive, a mobile hard disk, etc.) that uses a flash memory as a storage medium. For example, the storage device 150 includes a controller 156 and a flash memory chip 158, wherein the controller 156 is used to control the overall operation of the storage device 150, and the flash memory chip 158 includes a hidden storage area 152 and a hidden storage area 152 for storing data and computer applications. General storage area 154 . However, it must be understood that the present invention is not limited thereto and the storage device 150 may be a magnetic tape, a floppy disk, an optical data storage device or other storage devices. In addition, it is worth mentioning that the controller 156 can encrypt data or application programs and store them in the hidden storage area 152 , thereby providing further protection for data or application programs. In addition, the computer executable code set 160 may not display related information in the file allocation table (File Allocation Table, FAT) of the storage device 150, that is, the operating system 118a cannot recognize the computer executable code set 160 as a file.

文件执行系统100包括计算机主机110与装入程序120。The file execution system 100 includes a computer host 110 and a loader 120 .

计算机主机110是用以执行计算机执行程序160的平台。在本实施例中,计算机主机110为一桌上型个人计算机。必须了解的是,本发明不限于此,在本发明另一实施例中,计算机主机110亦可以是笔记型计算机、伺服器或其他任何能够执行地计算机程序的计算机主机。The host computer 110 is a platform for executing the computer execution program 160 . In this embodiment, the host computer 110 is a desktop personal computer. It must be understood that the present invention is not limited thereto. In another embodiment of the present invention, the host computer 110 may also be a notebook computer, a server, or any other host computer capable of executing computer programs.

计算机主机110包括中央处理单元112、主存储器114、输入与输出单元116以及存有操作系统118a的存储单元118。The host computer 110 includes a central processing unit 112, a main memory 114, an input and output unit 116, and a storage unit 118 storing an operating system 118a.

中央处理单元112用以解释计算机指令以及处理计算机软件中的数据。The central processing unit 112 is used for interpreting computer instructions and processing data in computer software.

主存储器114是电性连接至中央处理单元112并且用以载入各式各样的程序与数据以供中央处理单元112直接执行与运用。具体来说,主存储器114具可随时读写且较快的读写速度等特性,因此主存储器114是用以作为操作系统118a或其他正在执行中的程序的临时数据存储媒介。在本实施例中,主存储器114为动态随机存取存储器(DynamicRandom Access Memory,DRAM)。此外,必须了解的是,在本发明另一实施例中,操作系统亦可藉由存储装置的存储空间所模拟的虚拟存储器来作为执行应用程序的临时数据存储媒介,在此例子中,主存储器还包括此类虚拟存储器。The main memory 114 is electrically connected to the central processing unit 112 and used for loading various programs and data for the central processing unit 112 to directly execute and use. Specifically, the main memory 114 has characteristics such as being readable and writable at any time and having a fast reading and writing speed. Therefore, the main memory 114 is used as a temporary data storage medium for the operating system 118a or other programs being executed. In this embodiment, the main memory 114 is a dynamic random access memory (Dynamic Random Access Memory, DRAM). In addition, it must be understood that in another embodiment of the present invention, the operating system can also use the virtual memory simulated by the storage space of the storage device as a temporary data storage medium for executing application programs. In this example, the main memory Also includes such virtual storage.

输入与输出单元116电性连接至中央处理单元112用以提供一介面以供使用者输入数据或指令至计算机主机110或者从计算机主机110中输出数据。在本实施例中,输入与输出单元116包括键盘、滑鼠与显示器(未在图中示出)。The input and output unit 116 is electrically connected to the central processing unit 112 to provide an interface for the user to input data or commands to the computer host 110 or output data from the computer host 110 . In this embodiment, the input and output unit 116 includes a keyboard, a mouse and a display (not shown in the figure).

存储单元118电性连接至中央处理器单元112用以作为计算机主机110的主要存储媒体。在本实施例中,存储单元118为一硬碟,然而,必须了解的是,本发明不限于此。存储单元118存有操作系统118a用以管理计算机硬件(Computer hardware)与计算机软件(Computersoftware)资源的程序,同时也是计算机主机110的核心与基石。具体来说,操作系统118a用以管理与配置主存储器114、决定系统资源(例如,中央处理单元112、主存储器114、输入与输出单元116)供需的优先次序、控制输入与输出单元116、管理文件系统等运作。在本实施例中,操作系统118a为微软(Microsoft)公司的视窗(Windows)操作系统。然而,必须了解的是,本发明不限于此,本发明亦可应用于其他操作系统中。The storage unit 118 is electrically connected to the CPU unit 112 to serve as the main storage medium of the computer host 110 . In this embodiment, the storage unit 118 is a hard disk, however, it must be understood that the present invention is not limited thereto. The storage unit 118 stores the programs used by the operating system 118a to manage computer hardware (Computer hardware) and computer software (Computer software) resources, and is also the core and cornerstone of the computer host 110. Specifically, the operating system 118a is used to manage and configure the main memory 114, determine the priority of supply and demand of system resources (such as the central processing unit 112, the main memory 114, the input and output unit 116), control the input and output unit 116, manage File system operations, etc. In this embodiment, the operating system 118a is the Windows operating system of Microsoft Corporation. However, it must be understood that the present invention is not limited thereto, and the present invention can also be applied to other operating systems.

装入程序120可电性连接或可储存于计算机主机110与存储装置150,并且具有以硬件型式或韧/软件型式实作的多个逻辑闸或控制指令来管理储存在存储装置150的隐藏存储区152中的应用程序(例如,计算机执行码组160)。更详细来说,在本实施例中,装入程序120是由存储装置150的制造商所提供,并且能够依据隐藏存储区152的规格来存取存储在隐藏存储区152中的数据或应用程序。The loader 120 can be electrically connected or stored in the computer host 110 and the storage device 150, and has a plurality of logic gates or control instructions implemented in hardware or firmware/software to manage the hidden memory stored in the storage device 150. Applications in area 152 (eg, computer executable code group 160). In more detail, in this embodiment, the loading program 120 is provided by the manufacturer of the storage device 150, and can access data or application programs stored in the hidden storage area 152 according to the specification of the hidden storage area 152 .

在本实施例中,装入程序120的控制指令是以软件型式来实作,并且事先储存于存储装置150的一般存储区154中。也就是说,当使用者操作计算机主机110来浏览与计算机主机110连接的存储装置150时,使用者可点选储存在一般存储区154的装入程序120以使装入程序120的控制指令在操作系统118a中运转(Run),由此对隐藏存储区152来进行存取。其中,详细地说,装入程序120的控制指令在操作系统118a中运转(Run)后,会对存储装置150发送一预定的指令,存储装置150在接受此指令时即会至隐藏存储区152中读取预定的数据。此外,在本发明另一实施例中,以软件型式来实作的装入程序120亦可储存在光碟或计算机主机110的硬碟(未在图中示出)中,由此于使用者点选时装入程序120可于操作系统118a中运转。In this embodiment, the control instructions loaded into the program 120 are implemented in software and stored in the general storage area 154 of the storage device 150 in advance. That is to say, when the user operates the computer mainframe 110 to browse the storage device 150 connected to the computer mainframe 110, the user can click the loading program 120 stored in the general storage area 154 so that the control instructions of the loading program 120 are in the The operating system 118a runs (Run), thereby accessing the hidden storage area 152 . Wherein, in detail, after the control command of the loading program 120 runs (Run) in the operating system 118a, it will send a predetermined command to the storage device 150, and the storage device 150 will go to the hidden storage area 152 when receiving this command. Read the scheduled data in. In addition, in another embodiment of the present invention, the loading program 120 implemented in the form of software can also be stored in an optical disc or the hard disk (not shown in the figure) of the host computer 110, so that when the user clicks The runtime loader 120 may run within the operating system 118a.

值得一提的是,在本发明另一实施例中,装入程序120亦可以一硬件型式实作在存储装置150或计算机主机110中。It is worth mentioning that, in another embodiment of the present invention, the loading program 120 may also be implemented in the storage device 150 or the host computer 110 in a hardware form.

图2是根据本发明第一实施例所示的装入程序的概要方块图。Fig. 2 is a schematic block diagram of a loader according to a first embodiment of the present invention.

请参照图2,装入程序120包括主控单元122、初始化单元124、应用程序新增单元126、应用程序编辑单元128、应用程序删除单元130与应用程序执行单元132。Referring to FIG. 2 , the loading program 120 includes a main control unit 122 , an initialization unit 124 , an application adding unit 126 , an application editing unit 128 , an application deleting unit 130 and an application executing unit 132 .

主控单元122用以控制装入程序120的整体运作。The main control unit 122 is used for controlling the overall operation of the loading program 120 .

初始化单元124电性连接(couple)或连结(link)至主控单元122并且用以初始化存储装置150的隐藏存储区152。具体来说,当初始化单元124运作时,初始化单元124会确认隐藏存储区152的地址、大小等资讯,并且对隐藏存储区152进行抹除与格式化。The initialization unit 124 is electrically coupled or linked to the main control unit 122 and used for initializing the hidden storage area 152 of the storage device 150 . Specifically, when the initialization unit 124 operates, the initialization unit 124 will confirm information such as the address and size of the hidden storage area 152 , and erase and format the hidden storage area 152 .

应用程序新增单元126电性连接或连结至主控单元122并且用以将使用者欲储存的应用程序(例如,计算机执行码组160)写入至隐藏存储区152中。The application program adding unit 126 is electrically connected or linked to the main control unit 122 and used for writing the application program (for example, the computer execution code group 160 ) to be stored by the user into the hidden storage area 152 .

应用程序编辑单元128电性连接或连结至主控单元122并且用以编辑一应用程序清单(Application List)以浏览储存在存储装置150的隐藏存储区152中的应用程序。The application program editing unit 128 is electrically connected or connected to the main control unit 122 and used for editing an application program list (Application List) to browse the application programs stored in the hidden storage area 152 of the storage device 150 .

应用程序删除单元130电性连接或连结至主控单元122并且用以删除储存在存储装置150的隐藏存储区152中的应用程序。例如,应用程序删除单元130可将计算机执行码组160从隐藏存储区152中删除。The application deleting unit 130 is electrically connected or linked to the main control unit 122 and used for deleting the application stored in the hidden storage area 152 of the storage device 150 . For example, the application deletion unit 130 can delete the computer executable code group 160 from the hidden storage area 152 .

应用程序执行单元132电性连接或连结至主控单元122用以执行储存在存储装置150的隐藏存储区152中的应用程序。例如,应用程序执行单元132会将计算机执行码组160载入至主存储器114中并且在计算机主机110的操作系统118a上执行计算机执行码组160。The application executing unit 132 is electrically connected or linked to the main control unit 122 for executing the application stored in the hidden storage area 152 of the storage device 150 . For example, the application execution unit 132 loads the computer-executable code set 160 into the main memory 114 and executes the computer-executable code set 160 on the operating system 118 a of the host computer 110 .

图3是根据本发明第一实施例所示运转装入程序来执行隐藏存储区中的计算机执行码组时主存储器的运作示意图。FIG. 3 is a schematic diagram of the operation of the main memory when running the loader to execute the computer executable code group in the hidden storage area according to the first embodiment of the present invention.

请参照图3,当使用者透过输入与输出单元116操作计算机主机110的操作系统118a来点选装入程序120时,操作系统118a会在主存储器114中指定用以执行装入程序的一个执行点302并且以此执行点为起始点分配(allocate)一第一地址区段310(如图3的(a)所示)用于载入装入程序120的控制指令及暂存装入程序120运转时所使用的数据。Please refer to FIG. 3, when the user operates the operating system 118a of the host computer 110 through the input and output unit 116 to select the loading program 120, the operating system 118a will specify a program in the main memory 114 for executing the loading program. Execute the point 302 and allocate (allocate) a first address segment 310 (as shown in (a) of FIG. 3 ) with this execution point as the starting point for loading the control instruction of the loader 120 and the temporary storage loader 120 data used during operation.

另外,当使用者藉由已运转的装入程序120执行储存在隐藏存储区152中的计算机执行码组160时,应用程序执行单元132会将储存在隐藏存储区152中的计算机执行码组160载入到第一地址区段310中(如图3的(b)所示的计算机执行码组160’)并且将所载入的计算机执行码组160’转换为可由操作系统118a执行的可执行内容162。同时,应用程序执行单元132会将可执行内容162储存在第一地址区段310中(如图3的(c)所示)。在本实施例中,对应计算机执行码组160的可执行内容162是相容于视窗操作系统的一可携式可执行文件格式(portableexecutable(PE)file format)。In addition, when the user executes the computer execution code set 160 stored in the hidden storage area 152 through the running loader 120 , the application execution unit 132 will store the computer execution code set 160 in the hidden storage area 152 loaded into the first address segment 310 (such as the computer executable code group 160' shown in (b) of FIG. 3 ) and convert the loaded computer executable code group 160' into executable Content 162. At the same time, the application execution unit 132 stores the executable content 162 in the first address segment 310 (as shown in (c) of FIG. 3 ). In this embodiment, the executable content 162 corresponding to the computer executable code group 160 is a portable executable (PE) file format compatible with the Windows operating system.

在本实施例中,应用程序执行单元132更用以向操作系统118a请求用于再次运转装入程序120的衍生执行程序的一个执行点304及衍生执行程序所需的第二地位区段320,其中,在本实施例中,衍生执行程序(derivative execution procedure)是使用分叉进程(fork process)方式来再次运转装入程序120,但亦可使用如多线程(multi-thread)等其他多工执行方式来实施。具体来说,操作系统118a会在应用程序执行单元132的请求下于主存储器114中指定执行衍生执行程序的起始点(即,执行点304)以及分配用于此衍生执行程序的第二地址区段320(如图3的(d)所示)。In this embodiment, the application execution unit 132 is further used to request the operating system 118a for an execution point 304 of the derived execution program of the loaded program 120 and the second status section 320 required by the derived execution program again, Wherein, in this embodiment, the derivative execution procedure (derivative execution procedure) is to use the fork process (fork process) to run the loading program 120 again, but other multiple processes such as multi-thread (multi-thread) can also be used. Execution method to implement. Specifically, the operating system 118a will specify in the main memory 114 the starting point for executing the derived execution program (i.e., the execution point 304) and allocate the second address area for the derived execution program under the request of the application execution unit 132 Segment 320 (shown in (d) of FIG. 3 ).

特别是,根据本实施例的应用程序执行单元132会使用衍生执行程序来执行对应计算机执行码组160的可执行内容162。In particular, the application program execution unit 132 according to the present embodiment uses the derived execution program to execute the executable content 162 corresponding to the computer execution code group 160 .

具体来说,当应用程序执行单元132建立衍生执行程序后,应用程序执行单元132会暂停执行衍生执行程序、将对应计算机执行码组160的可执行内容162从执行点304开始覆写至第二地址区段320中(即,可执行内容162')并且继续执行衍生执行程序。此时,由于衍生执行程序中的程序码已被对应计算机执行码组160的可执行内容162’所置换,因此计算机执行码组160就可成功地由计算机主机110所执行。具体来说,应用程序执行单元132将计算机执行码组160转换为可执行内容162时,其会在可执行内容162的标头加入关于计算机执行码组160的资讯(例如,程序码大小),因此操作系统118a从执行点304开始执行由可执行内容162’写入的衍生执行程序时,其可正确地执行对应的程序码。Specifically, after the application execution unit 132 creates the derived execution program, the application execution unit 132 will suspend the execution of the derived execution program, and overwrite the executable content 162 corresponding to the computer execution code group 160 from the execution point 304 to the second address block 320 (ie, executable content 162') and continue executing the derivative execution. At this point, since the program codes in the derived execution program have been replaced by the executable content 162' corresponding to the computer executable code set 160, the computer executable code set 160 can be successfully executed by the host computer 110. Specifically, when the application execution unit 132 converts the computer-executable code group 160 into the executable content 162, it will add information about the computer-executable code group 160 (for example, program code size) to the header of the executable content 162, Therefore, when the operating system 118a executes the derived execution program written by the executable content 162' from the execution point 304, it can correctly execute the corresponding program code.

值得一提的是,由于衍生执行程序是用以再次执行装入程序120,因此第二地址区段320的大小是相同于第一地址区段310。在本发明另一实施例中,应用程序执行单元132更用以判断第二地址区段320的大小是否足以容纳可执行内容162’,其中当第二地址区段320的容量小于可执行内容162’的大小时,应用程序执行单元132会向操作系统118a请求主存储器114中的第三地址区段(未在图中示出)以确保在主存储器114中有足够的存储器地址来写入可执行内容162’。It is worth mentioning that the size of the second address segment 320 is the same as that of the first address segment 310 because the derived execution program is used to execute the loader 120 again. In another embodiment of the present invention, the application execution unit 132 is further used to determine whether the size of the second address segment 320 is sufficient to accommodate the executable content 162 ′, wherein when the capacity of the second address segment 320 is smaller than the executable content 162 ', the application execution unit 132 will request the operating system 118a for a third address segment (not shown in the figure) in the main memory 114 to ensure that there are enough memory addresses in the main memory 114 to write the available The content 162' is executed.

图4是根据本发明第一实施例所示的文件执行方法的流程图。Fig. 4 is a flowchart of a file execution method according to the first embodiment of the present invention.

请参照图4,首先,在步骤S401中将存储装置150连接至计算机主机110,并且在步骤S403中在主存储器114中分配第一地址区段310与运转装入程序120,其中装入程序120的运转已详细描述如上,在此不重复描述。Please refer to FIG. 4 , first, in step S401, the storage device 150 is connected to the computer mainframe 110, and in step S403, the first address segment 310 and the running loader 120 are allocated in the main memory 114, wherein the loader 120 The operation of has been described in detail above, and will not be repeated here.

之后,在步骤S405中使用装入程序120从存储装置150的隐藏存储区152中载入计算机执行码组160至第一地址区段320成为计算机执行码组160’。然后,在步骤S407中使用装入程序120将所载入的计算机执行码组160’转换为可执行内容162并且将可执行内容162储存于第一地址区段320中。Afterwards, in step S405, use the loading program 120 to load the computer executable code group 160 from the hidden storage area 152 of the storage device 150 to the first address segment 320 to become the computer executable code group 160'. Then, in step S407, use the loading program 120 to convert the loaded computer executable code group 160' into executable content 162 and store the executable content 162 in the first address segment 320.

然后,在步骤S409中使用装入程序120执行可执行内容。具体来说,步骤S409-1中向操作系统118a请求在主存储器114中建立用于再次运转装入程序120的衍生执行程序并请求操作系统118a在主存储器114中分配用于衍生执行程序的第二地址区段320。然后,在步骤S409-3中使用装入程序120暂停执行衍生执行程序,并且在步骤S409-5中将可执行内容162写入至第二地址区段320中成为可执行内容162’。最后,在步骤S409-7中继续执行衍生执行程序。Then, the executable content is executed using the loader 120 in step S409. Specifically, in step S409-1, request the operating system 118a to create a derivative execution program for rerunning the loader 120 in the main memory 114 and request the operating system 118a to allocate the first derivative execution program for the derivative execution program in the main memory 114. Two address segments 320 . Then, in step S409-3, the loader 120 is used to suspend the execution of the derived execution program, and in step S409-5, the executable content 162 is written into the second address segment 320 to become the executable content 162'. Finally, continue to execute the derivative execution program in step S409-7.

如上所述,在本发明另一实施例中,步骤S409中可还包括判断第二地址区段320的大小是否小于可执行内容162’的大小,并且倘若第二地址区段320的大小小于可执行内容162’的大小时请求操作系统118a在主存储器114中更分配第三地址区段。As mentioned above, in another embodiment of the present invention, step S409 may further include judging whether the size of the second address segment 320 is smaller than the size of the executable content 162', and if the size of the second address segment 320 is smaller than the executable content 162', The size of the execution content 162 ′ requests the operating system 118 a to allocate a third address segment in the main memory 114 .

图5是根据本发明第二实施例所示的文件执行系统的概要方块图。FIG. 5 is a schematic block diagram of a file execution system according to a second embodiment of the present invention.

请参照图5,第二实施例的文件执行系统与第一实施例的文件执行系统的不同之处在于第二实施例的文件执行系统是配置自动执行文件502来自动地执行装入程序120。具体来说,当存储装置150电性连接至计算机主机110时,自动执行文件502会被自动地执行并且自动执行文件502会在主存储器114中运转装入程序120。例如,在本实施例中,存储装置150还包括相容于ISO9660标准的一特殊存储区550,并且特殊存储区550中储存以autorun.inf的型式实作的自动执行文件502和装入程序120,因此当存储装置150电性连接至计算机主机110时操作系统118a会自动地执行自动执行文件502并由此运转装入程序120。特别是,使用者可于装入程序120中预先设定欲执行的应用程序(例如,计算机执行码组160),并且当装入程序120运转时,预先设定的应用程序即可自动地被执行。Please refer to FIG. 5 , the difference between the file execution system of the second embodiment and the file execution system of the first embodiment is that the file execution system of the second embodiment configures an auto-execution file 502 to automatically execute the loader 120 . Specifically, when the storage device 150 is electrically connected to the computer host 110 , the auto-execution file 502 is automatically executed and the auto-execution file 502 runs the loader 120 in the main memory 114 . For example, in this embodiment, the storage device 150 also includes a special storage area 550 compatible with the ISO9660 standard, and the automatic execution file 502 and the loading program 120 implemented in the form of autorun.inf are stored in the special storage area 550 Therefore, when the storage device 150 is electrically connected to the host computer 110 , the operating system 118 a will automatically execute the auto-execution file 502 and thereby run the loader 120 . In particular, the user can pre-set the application program to be executed in the loader 120 (for example, the computer execution code group 160), and when the loader 120 runs, the preset application program can be automatically executed. implement.

图6是根据本发明第二实施例所示的文件执行方法的流程图。Fig. 6 is a flowchart of a file execution method according to the second embodiment of the present invention.

请参照图6,首先,在步骤S601中将存储装置150连接至计算机主机110,并且在步骤S603中操作系统118a自动地执行自动执行文件502。之后,在步骤S605中装入程序120被自动地执行并且在步骤S607中自动地执行隐藏存储区152中的预设应用程序(例如,计算机执行码组160),其中执行装入程序120及执行储存在隐藏存储区152中的应用程序的步骤是相同于图4的步骤S403、S405、S407、S409-1、S409-3、S409-5与S409-7,在此不重复描述。Referring to FIG. 6 , firstly, in step S601 , the storage device 150 is connected to the host computer 110 , and in step S603 , the operating system 118 a automatically executes the auto-execution file 502 . Afterwards, in step S605, the loading program 120 is automatically executed and in step S607, the default application program (for example, the computer execution code group 160) in the hidden storage area 152 is automatically executed, wherein the loading program 120 is executed and the The steps of the application program stored in the hidden storage area 152 are the same as steps S403 , S405 , S407 , S409-1 , S409-3 , S409-5 and S409-7 in FIG. 4 , and will not be repeated here.

在本发明另一实施例中,装入程序120会于自动地执行预设的应用程序之后自动地关闭(即,结束装入程序120的运作)。In another embodiment of the present invention, the loading program 120 automatically closes (ie, ends the operation of the loading program 120 ) after automatically executing a preset application program.

本发明实施例的文件执行方法可实作为计算机可读记录媒体(或可程序存储装置)上的计算机可读码。计算机可读记录媒体可以是任何数据存储装置,其之后可藉由计算机系统读取。计算机可读记录媒体的包括唯读存储器(read-only memory,ROM)、随机存取存储器(random-access memory,RAM)、CD-ROM、磁带、软碟、光学数据存储装置以及载波(例如透过网际网路的数据传输)。The file execution method of the embodiment of the present invention can be implemented as computer-readable codes on a computer-readable recording medium (or a program storage device). The computer readable recording medium can be any data storage device, which can be thereafter read by a computer system. The computer-readable recording medium includes read-only memory (read-only memory, ROM), random-access memory (random-access memory, RAM), CD-ROM, magnetic tape, floppy disk, optical data storage device, and carrier wave (such as transparent data transmission over the Internet).

综上所述,本发明藉由装入程序来读取存储装置的隐藏存储区中的计算机执行码组,在计算机主机的主存储器中将计算机执行码组转换为可执行内容,并且以置换的衍生执行程序来执行所转换的可执行内容,由此可成功地在计算机主机上执行储存在计算机主机无法存取的隐藏存储区中的计算机执行码组。再者,由于计算机执行码组与对应计算机执行码组的可执行内容是以非文件型式暂存于主存储器中,因此使用者无法轻易地复制与散布储存在隐藏存储区中的计算机执行码组。In summary, the present invention reads the computer-executable code group in the hidden storage area of the storage device by loading a program, converts the computer-executable code group into executable content in the main memory of the computer host, and replaces the computer-executable code group with The executable program is derived to execute the converted executable content, so that the computer executable code set stored in the hidden storage area that the computer host cannot access can be successfully executed on the computer host. Furthermore, since the computer executable code set and the corresponding executable content of the computer executable code set are temporarily stored in the main memory in a non-file format, users cannot easily copy and distribute the computer executable code set stored in the hidden storage area. .

最后应说明的是:以上实施例仅用以说明本发明的技术方案而非对其进行限制,尽管参照较佳实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对本发明的技术方案进行修改或者等同替换,而这些修改或者等同替换亦不能使修改后的技术方案脱离本发明技术方案的精神和范围。Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention and not to limit them. Although the present invention has been described in detail with reference to the preferred embodiments, those of ordinary skill in the art should understand that: it still Modifications or equivalent replacements can be made to the technical solutions of the present invention, and these modifications or equivalent replacements cannot make the modified technical solutions deviate from the spirit and scope of the technical solutions of the present invention.

Claims (16)

1. a file executing method, in order to carry out the computing machine being stored in a memory storage in an operating system of a main frame, carry out code character, wherein said memory storage comprises that a general memory block and hides memory block and described computing machine execution code character is stored in described hiding memory block, and described file executing method comprises:
Described memory storage is connected to described main frame, and wherein said main frame has a primary memory;
Provide one to load program, to manage the described computing machine being stored in described hiding memory block, carry out code character;
In described primary memory, described in running, load program;
The one first address section of asking described operating system to be loaded program described in minute being used in described primary memory;
By described loading program, from described hiding memory block, described computing machine execution code character is loaded in described the first address section;
By described loading program, loaded described computing machine execution code character is converted to the executable content that can be carried out by described operating system and at least one part of described executable content is stored in described the first address section; And
By described loading program, set up a derivative executive routine and carry out described executable content.
2. file executing method according to claim 1, wherein by described loading program, set up the step that described derivative executive routine carries out described executable content and comprise:
By the described described operating system of request of loading program, set up described derivative executive routine and asked described operating system in described primary memory, to divide the one second address section that is used in described derivative executive routine in described primary memory, wherein said derivative executive routine is to load program described in again turning round;
By described loading program, suspend the described derivative executive routine of execution;
By described loading program, described executable content is write in described the second address section; And
By described loading program, continue to carry out described derivative executive routine.
3. file executing method according to claim 2, also comprises:
By described loading program, judge whether the size of described the second address section is less than the size of described executable content; And
When the size of described the second address section is less than described executable content big or small, by the described described operating system of request of loading program, in described primary memory, distribute one the 3rd address section, so that the size big or small and that be greater than described executable content of described the second address section and described the 3rd address section.
4. file executing method according to claim 1, also comprises:
In described memory storage, configure one and automatically perform file, the wherein said file that automatically performs loads program described in turning round in described primary memory; And
Described in automatically being carried out by described operating system, automatically perform file.
5. file executing method according to claim 1, also comprises:
Described loading program is configured in the described general memory block of described memory storage.
6. file executing method according to claim 4, also comprises:
In described memory storage, configure a special memory block; And
By described automatically perform file with described in load program and be configured in a special memory block of described memory storage, wherein said special memory block is compatible to ISO9660 standard.
7. file executing method according to claim 1, also comprises:
Described in inciting somebody to action, load program and be configured in described main frame.
8. file executing method according to claim 1, also comprises described computing machine is carried out to code character deciphering.
9. file executing method according to claim 1, also comprises by hiding memory block described in the described initialization of loading program.
10. file executing method according to claim 1, wherein said executable content is compatible to a Portable executable file format.
11. 1 kinds of file executive systems, in order to carry out the computing machine being stored in a memory storage, carry out code character, wherein said memory storage comprises that a general memory block and hides memory block and described computing machine execution code character is stored in described hiding memory block, and described file executive system comprises:
One main frame, comprises an operating system and a primary memory; And
One load module, is electrically connected or can be linked to access described main frame and described memory storage and have an application execution unit, to carry out the described computing machine being stored in described hiding memory block, carries out code character,
Turn round in described primary memory described load module and minute be used in one first address section of described load module in described primary memory of wherein said operating system,
Wherein said application execution unit is carried out code character by described computing machine and is loaded in described the first address section from described hiding memory block, loaded described computing machine is carried out to code character and be converted to the executable content that can be carried out by described operating system, and described executable content is stored in described the first address section
Wherein said application execution unit is set up a derivative executive routine and is carried out described executable content.
12. file executive systems according to claim 11,
Described in wherein said application execution unit request, operating system is set up described derivative executive routine and is asked described operating system in described primary memory, to divide the one second address section that is used in described derivative executive routine in described primary memory, wherein said derivative executive routine is for the described load module that again turns round
Wherein said application execution unit is suspended the described derivative executive routine of execution, described executable content is write in described the second address section, and continue to carry out described derivative executive routine.
13. file executive systems according to claim 12, wherein said application execution unit judges whether the size of described the second address section is less than the size of described executable content; And
When the size of described the second address section is less than described executable content big or small, described in described application execution unit request, operating system is distributed one the 3rd address section in described primary memory, so that the size big or small and that be greater than described executable content of described the second address section and described the 3rd address section.
14. file executive systems according to claim 11, also comprise that one automatically performs file, are configured in described memory storage,
Wherein when described memory storage is electrically connected to described main frame, described operating system automatically perform described in automatically carrying out file and described in automatically perform the file described load module that can turn round in described primary memory.
15. file executive systems according to claim 11, wherein said load module is configured in the described general memory block of described memory storage.
16. file executive systems according to claim 14,
Wherein said memory storage also comprises a special memory block,
Wherein saidly automatically perform file and described load module is configured in a special memory block of described memory storage, wherein said special memory block is compatible to ISO9660 standard and automatically performs file.
CN200910158704.0A 2009-07-03 2009-07-03 File Execution Method and System Active CN101944034B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN200910158704.0A CN101944034B (en) 2009-07-03 2009-07-03 File Execution Method and System

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200910158704.0A CN101944034B (en) 2009-07-03 2009-07-03 File Execution Method and System

Publications (2)

Publication Number Publication Date
CN101944034A CN101944034A (en) 2011-01-12
CN101944034B true CN101944034B (en) 2014-04-16

Family

ID=43436035

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200910158704.0A Active CN101944034B (en) 2009-07-03 2009-07-03 File Execution Method and System

Country Status (1)

Country Link
CN (1) CN101944034B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101199014B1 (en) * 2012-08-06 2012-11-09 (주)네오위즈게임즈 Method of providing program for multiprocessing, server performing the same and storage media storing the same
US9450952B2 (en) 2013-05-29 2016-09-20 Microsoft Technology Licensing, Llc Live tiles without application-code execution

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1949194A (en) * 2005-10-10 2007-04-18 群联电子股份有限公司 Portable access device with security function and access method
CN101236499A (en) * 2007-07-31 2008-08-06 北京理工大学 A Method of Embedding Kernel Driver in Windows Operating System Using USB Device
CN101286121A (en) * 2007-04-12 2008-10-15 深圳市顶星数码网络技术有限公司 Method for installing computer drivers without optical disc

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6141756A (en) * 1998-04-27 2000-10-31 Motorola, Inc. Apparatus and method of reading a program into a processor
JP3767818B2 (en) * 2002-10-28 2006-04-19 株式会社サスライト Detachable device and program startup method
US20050015540A1 (en) * 2003-07-18 2005-01-20 Hung-Chou Tsai Auto-executable portable data storage device and the method of auto-execution thereof

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1949194A (en) * 2005-10-10 2007-04-18 群联电子股份有限公司 Portable access device with security function and access method
CN101286121A (en) * 2007-04-12 2008-10-15 深圳市顶星数码网络技术有限公司 Method for installing computer drivers without optical disc
CN101236499A (en) * 2007-07-31 2008-08-06 北京理工大学 A Method of Embedding Kernel Driver in Windows Operating System Using USB Device

Also Published As

Publication number Publication date
CN101944034A (en) 2011-01-12

Similar Documents

Publication Publication Date Title
CN102124436B (en) Dynamic file system restriction for portable storage devices
WO2018099292A1 (en) Process management method and apparatus
WO2017107415A1 (en) Application loading method and device
CN107870769A (en) The installation method and device of operating system
CN115658160B (en) Multi-operating system upgrading method, device and system based on multi-core heterogeneous SOC
CN103218227B (en) The method of compatible multiple file system and device on a kind of Android device built-in hard disk
US6158002A (en) Method and apparatus of boot device switching by a floppy disk
US9672047B1 (en) Systems and methods for accessing a bootable partition on a serial peripheral interface device
KR20060060668A (en) Systems, apparatus, and methods for controlling storage devices
US8090927B2 (en) Method and system for executing applicatons, storage medium controller and storage device
CN101944034B (en) File Execution Method and System
TWI497414B (en) File executing method and system
TW201504937A (en) Virtual storage devices formed by selected partitions of a physical storage device
CN109426511B (en) Soft core updating method and system
CN110825421B (en) Firmware upgrading method, system and readable storage medium
US8266108B2 (en) Medium drive apparatus, operation method for medium drive apparatus, information processing apparatus, recording and reproduction accessing method for information processing apparatus, program, and program recording medium
US12288076B2 (en) Reversible virtual factory reset
JP7522775B2 (en) Non-volatile storage partition identifier
TWI390399B (en) External device having a virtual storage device
JP2008171367A (en) Information processor and recordable file management software
JPWO2014091629A1 (en) Storage device management program, electronic device, and storage device management method
CN102222007A (en) Installation method of application software
CN115904623A (en) Container creation method and system, electronic device, and storage medium
US20100057981A1 (en) Methods and devices for executing decompressed option memory in shadow memory
KR101538487B1 (en) Data storage device and method of providing data

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant