Method for generating an item of software, comprising at least two software components (38, 42), on the basis of source files (40, 44) associated with the software components (38, 42), the source files (40, 44) comprising variables initialized to zero (56, 58) and variables (60, 62) initialized to specific values (64, 66), suitable for being executed on a terminal comprising an operating system without virtual memory and a physical memory, the physical memory comprising a random-access memory, suitable for containing at least one data storage segment and at least one data segment, and a read-only memory, suitable for containing at least one data initialization segment, the method comprising, for each software component (38, 42), one at least of which is suitable for a specific rebooting during an execution of the item of software, the following steps: - a compilation step, using a compiler suitable for allocating, for each source file (40, 44), the variables initialized to zero (56, 58) to a data storage segment, the initialized variables (60, 62) to a data segment, and the specific values (64, 66) of the initialized variables to a data initialization segment, and to transform the source files (40, 44) into object files (48, 50), and - a step of editing links, using a link editor suitable for grouping together the variables initialized to zero, the initialized variables and their specific values in a respective block (70, 72, 74) within their respective segment (32, 34, 36) allocated during the compilation step, suitable for allotting a predetermined area (76, 78, 80) of the memory for each block (70, 72, 74) and suitable for grouping together the object files arising from the compilation step, so as to constitute an executable file corresponding to the item of software, characterized in that it comprises, furthermore, for at least one software component suitable for a rebooting: - a step of renaming the data storage segment, the data segment and the data initialization segment, allocated during the compilation step and associated with each object file arising from this compilation step, for the software component to be rebooted, and - a step of configuring the link editor by using link editing directives, so as to carry out a specific link editing step which contiguously allocates the renamed data storage segments, data segments, and data initialization segments for each object file of the software component to be rebooted in areas specific to the software component to be rebooted and which are named in accordance with the software component to be rebooted, respectively in random-access memory for the renamed data storage segments and data segments and in read-only memory for the renamed data initialization segments. - a compilation step, using a compiler suitable for allocating, for each source file (40, 44), the variables initialized to zero (56, 58) to a data storage segment, the initialized variables (60, 62) to a data segment, and the specific values (64, 66) of the initialized variables to a data initialization segment, and to transform the source files (40, 44) into object files (48, 50), and - a step of editing links, using a link editor suitable for grouping together the variables initialized to zero, the initialized variables and their specific values in a respective block (70, 72, 74) within their respective segment (32, 34, 36) allocated during the compilation step, suitable for allotting a predetermined area (76, 78, 80) of the memory for each block (70, 72, 74) and suitable for grouping together the object files arising from the compilation step, so as to constitute an executable file corresponding to the item of software, - a step of renaming the data storage segment, the data segment and the data initialization segment, allocated during the compilation step and associated with each object file arising from this compilation step, for the software component to be rebooted, and - a step of configuring the link editor by using link editing directives, so as to carry out a specific link editing step which contiguously allocates the renamed data storage segments, data segments, and data initialization segments for each object file of the software component to be rebooted in areas specific to the software component to be rebooted and which are named in accordance with the software component to be rebooted, respectively in random-access memory for the renamed data storage segments and data segments and in read-only memory for the renamed data initialization segments.