Data processing: software development – installation – and managem – Software program development tool – Translation of code
Reexamination Certificate
1999-03-29
2002-01-29
Powell, Mark R. (Department: 2122)
Data processing: software development, installation, and managem
Software program development tool
Translation of code
C717S152000, C717S152000
Reexamination Certificate
active
06343378
ABSTRACT:
BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention relates to a method of making a link directive file, and a tool for making the link directive file, and more specifically to a method of making and updating a link directive file used for a link processing when a compiler converts a source file to an execute type file for storing directive data being memory disposition instruction information of an instruction code and variable data, and to a tool used for realizing the aforesaid method.
2. Description of the Related Art
Upon developing a program for a microcomputer a programmer performs a number of works of previously making a source file with a predetermined language, and then converting with the aid of a compiler the source file to a file (execute form) of the form which is read and executed by the microcomputer. The works are performed by the programmer who assembles a microcomputer in a desired electronic device (hereinafter referred to a target system.), and the program of the execute type file is written into a ROM (Read Only Memory). The microcomputer executes the program by reading instruction codes and variable data written in the ROM.
Recently, microcomputers have wide applications and hence sizes of programs are increased. When a new program is developed, the program is divided into a plurality of blocks, and a plurality of programmers prepare a source file for each block. These blocks are finally collected (hereinafter referred to link.) into one completed program. A processing routine frequently used in such a program is defined in a library as a function and a macro, whereby a programmer can actually makes a source file. Such a library is also linked in a final stage. Several thousand types of microcomputers are known in the world, and a programmer can select an optimum microcomputer in conformity with his application.
However, it is impossible that since instruction codes executed by microcomputers are different depending upon the types of the microcomputers, a programmer memorizes instruction codes of each type of the microcomputers. Further, it is uneconomical to prepare a program developing device for microcomputers for each type of microcomputers. For this, a programmer makes a source file in a predetermined language to which the programmer is familiar, and converts the source file to an execute form file corresponding to each type of the microcomputers using a program developing device and a conversion program supplied by a microcomputer maker. The programmer deal with various microcomputers using a program developing device by setting to the program developing device software required for program development such as a compiler, an assembler, and a linker, and inherent information for each type of microcomputers such as a device file and a link directive file (hereinafter referred to LDF).
FIG. 15
is a block diagram schematically illustrating the construction of a prior art program developing device. As illustrated in the same figure, the prior art program developing device comprises an LDF making section
73
, a program making/processing section
74
, an LDF
53
, and a device file
61
. The LDF
53
includes link directive data (hereinafter referred to LDF data) being an instruction document when a link processing is executed. The LDF making section
73
comprises a text making tool
56
, a display
59
, and input means
62
. The programmer
51
prepares the LDF data required for the link processing while referring to a manual
52
a
of the microcomputer and a manual
52
b
of a linker
54
, and stores the data in the LDF
53
. The program making/processing section
74
comprises a compiler
57
and a linker, in which source files
55
a
to
55
c
are converted into object files
58
a
to
58
c
, which object files are integrated into one through the linker
54
to make an execute form file
60
. The compiler
57
, when converting the source files
55
a
to
55
c
to the object files
58
a
to
58
c
, refers to the device file
61
specific to each microcomputer to perform a conversion processing corresponding to each microcomputer. The linker
54
likewise refers to the device file
61
for a link processing. In the following, there will be exemplarily illustrated a program development procedure in which after the source file is made, it is converted to the execute form file.
As illustrated in
FIG. 15
, the three source files
55
a
to
55
c
are first converted to the execute form file
60
. Thereupon, in the intermediate stage compiler
57
the source files
55
a
to
55
c
are converted to the object files
58
a
to
58
c
after passage through the assembly source file.
FIG. 10
is an example of the source file, and
FIG. 11
is an example of the assembly source file indicating contents in the object file, obtained by compiling the source file. The assembly source file is described in a mnemonic language corresponding to the type of each microcomputer, and is a program before it is converted to the object file. The assembly source file is a program for which conversion and addresses to which the operation jumps are undefined, and in which those addresses are represented with use of labels (L
4
, L
5
) and symbols (A
5
[sp], [lp]). The program
51
can be executed in this status using a target system, and be debugged for each object file
58
a
to
58
c.
Then, the programmer
51
performs a link processing for integrating the three object files
58
a
to
58
c
into one file using a linker
54
. The link processing is performed with use of the linker
54
. The linker
54
links the object files
58
a
to
58
c
to make the execute form file
60
with reference to information from the LDF
53
and the device file
61
.
In general, microcomputers use different types of useable instruction codes depending upon the types of themselves, and use different registers included in the microcomputers and different address spaces. ROMs (Read Only Memory)and RAMs(Random Access Memory) included in a microcomputer itself are different in their sizes depending upon the type thereof, and arrangement on the address is previously defined. Microcomputers of a certain type contain internally a RAM that operates at a high speed and contain externally a large capacity RAM that operates at a low speed. These RAMs are arranged in different address spaces. The programmer
51
develops a program to obtain maximum performance, taking performances and functions of these microcomputers into consideration. For example, the programmer
51
improves a processing speed of a program by instructing that variable data having high reference frequency are stored in the high speed RAM.
In contrast, microcomputer makers describe device information peculiar to each type of microcomputers in a manual
52
a
of the microcomputers, a manual
52
b
of the linker, and the device file
61
, and provide such device information to the programmer
51
. In the device file
61
there are recorded information defining the number and names of registers, the number of terminals of an input/output port, and so on. The programmer
51
prepares the LDF
53
in conformity with the construction of a microcomputer upon developing a program referring to such information. Herein, the LDF
53
means a file in which there is described an instruction to allocate various instruction codes and variable data (hereinafter referred to a section) included in the object files
58
a
to
58
c
to predetermined addresses in a memory space. For achieving the link processing as above the LED
53
is necessary.
When the object files
58
a
to
58
c
are converted to the execute form file
60
, there are an instruction part(instruction code) and a variable data part (variable data) in the object files
58
a
to
58
c
. Conventionally, in the linker
54
, its instruction code and variable data are disposed in a predetermined area of a memory (ROM and RAM) in conformity with ROM and RAM disposition information (hereinafter referred to memory disposition information ) of a microcomput
Foley & Lardner
Kendall Chuck
Powell Mark R.
LandOfFree
Method of making link directive file and tool for making... does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Method of making link directive file and tool for making..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method of making link directive file and tool for making... will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-2839107