KR20110110509A - System and method for remote programming - Google Patents

System and method for remote programming Download PDF

Info

Publication number
KR20110110509A
KR20110110509A KR1020100029866A KR20100029866A KR20110110509A KR 20110110509 A KR20110110509 A KR 20110110509A KR 1020100029866 A KR1020100029866 A KR 1020100029866A KR 20100029866 A KR20100029866 A KR 20100029866A KR 20110110509 A KR20110110509 A KR 20110110509A
Authority
KR
South Korea
Prior art keywords
source file
portable digital
digital device
remote programming
compilation
Prior art date
Application number
KR1020100029866A
Other languages
Korean (ko)
Inventor
노규성
Original Assignee
(주)이티빌
노규성
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 (주)이티빌, 노규성 filed Critical (주)이티빌
Priority to KR1020100029866A priority Critical patent/KR20110110509A/en
Publication of KR20110110509A publication Critical patent/KR20110110509A/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/252Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/461Saving or restoring of program or task context
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H40/00ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices
    • G16H40/40ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the management of medical equipment or devices, e.g. scheduling maintenance or upgrades

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • General Business, Economics & Management (AREA)
  • Business, Economics & Management (AREA)
  • Biomedical Technology (AREA)
  • Public Health (AREA)
  • Primary Health Care (AREA)
  • Medical Informatics (AREA)
  • General Health & Medical Sciences (AREA)
  • Epidemiology (AREA)
  • Data Mining & Analysis (AREA)
  • Stored Programmes (AREA)

Abstract

Provided are a remote programming system and method capable of communicating with a portable digital device. The provided remote programming system includes a compiling unit for compiling a source file and a reporting unit for compiling a report according to the result of the compilation as the source file written in a designated programming language is received from a portable digital device.

Description

System and Method for Remote Programming

The present invention relates to a service system and method using a communication network, and more particularly to a remote programming system and method.

Computer programming refers to the art of specifying one or more related abstract algorithms using a specific programming language. A program written in a specific programming language is translated into machine language and executed on a computer. Specifically, programming is performed according to the following procedure.

1 is a flowchart illustrating a general programming procedure.

In order to solve a given project or problem with a computer program, a process of defining and analyzing a problem to be solved in a project is first performed (S101). In other words, it is to determine what the task is to be solved and whether the task can be solved by a computer. In addition, look for the most efficient way to solve the problem.

Next, by separating the step-by-step solving process to solve the problem step by step to develop a kind of algorithm (S103). When the algorithm is developed, a coding process of creating a source file by selecting a specific programming language is performed (S105).

The coded source file is translated into machine language through a compiler developed for the corresponding programming language (S107). If no error is found as a result of the compilation (S109), the application is completed (S111).

However, if an error exists as a result of the compilation (S109), a debugging process is performed to find and resolve the cause of the error (S113), and the compiled source file is recompiled (S107). Debugging and compiling process is performed until the cause of the error is completely solved. If the error does not exist, the application can be completed.

Currently, such computer programming is performed via a computer installed in a fixed location. Compilation is essential in the programming process, because a high-performance computer is needed because sufficient resources such as CPU, memory, and hard disk are needed to execute a compiler that translates source files into machine language.

Computer programming is performed not only by programmers working in the field but also by programming learners. However, the programming efficiency can be reduced because only the programming work can be performed in a fixed place.

In recent years, portable digital devices such as laptops and mobile communication terminals are becoming more common, but due to the characteristics of these portable digital devices, which are becoming smaller and lighter, they cannot be expected to provide the resources necessary for computer programming.

The present invention provides a remote programming system and method capable of performing computer programming tasks regardless of time and place.

Another technical problem of the present invention is to provide a remote programming system and method in which computer programming can be performed using a portable digital device.

The remote programming system according to an embodiment of the present invention for achieving the above technical problem is a remote programming system that can communicate with a portable digital device, the source file in response to receiving a source file written in a designated programming language from the portable digital device, A compiling unit for compiling a file; And a reporting unit for preparing a report according to the compilation result.

On the other hand, the remote programming method according to an embodiment of the present invention is a remote programming method in a remote programming system having a compilation unit for translating a programming language into a machine language, as a source file written in a designated programming language is transmitted from a portable digital device. Compiling the source file by the compilation unit; And reporting by the reporting unit of the remote programming system to write the compilation result as a report.

According to the present invention, a source file created on a portable digital device can be compiled remotely. Therefore, the programming work that was only possible in a fixed place can be performed regardless of time and place, thereby improving the programming work efficiency.

The remote programming system may include a virtual operating system emulator capable of supporting operating systems of various portable digital devices, and may further include various compilers capable of translating various programming languages into machine language. Therefore, it is possible to compile remotely regardless of the type of programming language and portable digital device in which the source file is written.

On the other hand, the source file may be created directly in the remote programming system or may be created in a portable digital device and then transferred to the remote programming system. And, if debugging is required, modification of the source file may also be performed directly on the remote programming system or modified on a portable digital device and then transferred to the remote programming system.

In any case, source file authors can create or debug source files by escaping from a fixed location so that they can utilize their limited time efficiently and reflect programming ideas in real time.

1 is a flowchart illustrating a general programming procedure;
2 is a view for explaining a connection relationship between a remote program system and a communication network according to an embodiment of the present invention;
3 is a configuration diagram of the remote programming system shown in FIG.
4 is a flowchart illustrating a remote programming method according to an embodiment of the present invention;
5 is a flowchart illustrating a remote programming method according to another embodiment of the present invention.

Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.

2 is a view for explaining a connection relationship between a remote programming system and a communication network according to an embodiment of the present invention.

The remote programming system 10 is connected to the portable digital device 30 via the communication network 20. In addition, the remote programming system 10 and the portable digital device 30 may be directly connected by cable or short-range communication. Here, the portable digital device 30 may be a smart phone capable of internet communication while moving.

The source file created in the portable digital device 30 is transmitted to the remote programming system 10 through the communication network 20 or by a direct communication method, and the remote programming system 10 receiving the received source file is compiled to the source file. Run and report the compilation result. The report generated as a result of the compilation may be provided to the portable digital device 30 through the communication network 20 or by a direct communication method.

Meanwhile, in order to compile a source file transmitted from the portable digital device 30, an operating system compatible with an operating system (OS) mounted on the portable digital device 30 on which the corresponding source file is created is supported by the remote programming system 10. Should be. You also need a compiler that can compile the programming language in which you wrote the source files.

To this end, the remote programming system 10 may be equipped with a virtual OS emulator for emulating an OS for various portable digital devices 30, and preferably stores a compiler for each of various programming languages.

In order to create or modify a source file in the portable digital device 30, an editor for coding is required. Such an editor may be downloaded via a separate server or provided by the remote programming system 10.

The creation or modification of the source file may be performed on the portable digital device 30 and then transferred to the remote programming system 10 or may be directly performed by the program developer on the remote programming system 10. In any case, the program developer may store the source file in the portable digital device 30 and modify it as necessary, and compilation of the created or modified source file is performed in the remote programming system 10.

Accordingly, the portable digital device 30 provides only resources for generating a source file, and since the resource consuming operation such as compilation is performed in the remote programming system 10, the portable digital device 30 may have high performance. Programming can be done anytime and anywhere without implementation.

Furthermore, when the remote programming system 10 and the portable digital device 30 are connected through the communication network 20, the source files created or modified by the portable digital device 30 are transmitted to the remote programming system 10 in real time. And receive the compilation results immediately. Therefore, it is possible to effectively utilize a limited time and reflect the programming idea in real time.

3 is a configuration diagram of the remote programming system shown in FIG. 2.

As shown in FIG. 3, the remote programming system 10 may include a controller 110 for controlling overall operations, an interface 120 for performing protocol conversion for transmitting and receiving control signals and data with the portable digital device 30, And a memory 130 in which application programs or the like necessary for operating the remote programming system 10 are stored. Here, the memory 130 includes a virtual OS emulator for emulating various OSs mounted on the portable digital device 30.

In addition, the remote programming system 10 is compiled by providing a source file, a database 140 for storing a source file for each user, which is transmitted from the portable digital device 30 or that the program developer directly creates in the remote programming system 10. The user management unit 150 for managing information related to the program developer requesting the request, for example developer name, identification code, password, source file name and the like.

In addition, the remote programming system 10 reports a compilation unit 160 and a compilation result for translating source files transmitted from the portable digital device 30 or written by the program developer directly in the remote programming system 10 into machine language. The reporting unit 170 to be prepared is provided. A program developer may write source files in various programming languages, and in contrast, the compiling unit 160 may include a compiler for each of various programming languages.

In another embodiment of the present invention, the remote programming system 10 may further include an editor providing unit 180. In this case, the program developer may download and use an editor from the remote programming system 10 to create or modify a source file in the portable digital device 30.

As such, the remote programming system 10 according to an exemplary embodiment of the present invention includes a compiling unit 160 and a reporting unit 170, and is connected to the portable digital device 30 through the communication network 20 or directly communicates with each other. Can be connected by.

Therefore, a source file created or modified by the portable digital device 30 may be received and compiled, and a report generated as a result may be provided back to the portable digital device 30. As a result, program developers can freely perform programming tasks that were only available on computers installed in fixed locations while they are on the move.

Furthermore, an application generated as a result of the compilation of the compilation unit 160 may also be transmitted to the portable digital device 30. Accordingly, the program developer may execute the final application of the program developed by the user through the portable digital device 30. can see. In addition, according to the execution result of the application, the completeness and the achievement can be checked to further supplement or modify the source file.

4 is a flowchart illustrating a remote programming method according to an embodiment of the present invention, which illustrates a process of editing a source file through a portable digital device and compiling it in a remote programming server.

First, the programming developer installs an editor for editing a source file in the portable digital device 30 (S201). Such an editor may be downloaded from an application store or may be downloaded through the editor providing unit 180 of the remote programming server 10 according to the present invention.

When the editor is installed, a coding process of creating a source file is performed (S203). When coding is completed, the source file is transmitted to the remote programming system 10 (S205). At this time, the identification number of the portable digital device 30 and the program developer information are transmitted together with the source file.

The user management unit 150 of the remote programming system 10 that receives this extracts the identification number and program developer information of the portable digital device that has transmitted the source file, and stores it in the database 140 together with the source file (S207). In addition, the user manager 150 determines the type of OS mounted in the portable digital device from the extracted identification number of the portable digital device (S209), and executes the corresponding virtual OS emulator stored in the memory 130 (S211). .

Then, the compilation unit 160 translates the source file into a machine language using a compiler suitable for a programming language used to create the source file (S213). The compilation result is written in the report unit 170 as a report (S215) and then transmitted to the portable digital device 30 (S217). In this case, an identification number of the portable digital device 30 that transmits the corresponding source file may be confirmed through the database 140.

As a result, a program developer may edit a source file using a portable digital device without a compiler, and transmit the edited source file to the remote programming system 10 in real time to receive a compilation result of the source file. As a result, the programming work can be handled on the go or at the place desired by the program developer.

On the other hand, an error may exist as a result of the compilation of the source file, and a debugging process for finding and solving the cause of the error may also be processed in the portable digital device. This will be described with reference to FIG. 5.

5 is a flowchart illustrating a remote programming method according to another embodiment of the present invention.

When a source file is created in the portable digital device 30 and then compiled in the remote programming system 10, or when a source file is created and compiled directly in the remote programming system 10, the program developer may perform A debugging process of editing a source file in a digital device may be performed (S301).

The debugged source file is transmitted to the remote programming system 10 (S303). At this time, the identification number of the portable digital device 30 and the program developer information are transmitted together with the source file.

The user manager 150 of the remote programming system 10 stores the source file, the portable digital device identification number and the program developer information in the database 140 (S305), and the user manager 150 identifies the extracted portable digital device. The type of OS mounted in the portable digital device is determined from the number (S307), and the virtual OS emulator is executed (S309).

The compilation unit 160 translates the source file into machine language using a compiler suitable for a programming language used to create the source file (S311). The compilation result is written in the report unit 170 as a report (S313) and then transmitted to the portable digital device 30 (S315).

On the other hand, if there is no error as a result of the compilation, the compilation unit 160 of the remote programming system 10 transmits the completed application to the portable digital device 30 (S317), and receives the received from the portable digital device 30 The application can be executed (S319).

By executing the completed application on the portable digital device 30, it is possible to check the completeness or achievement of the program developed by the user, and the modification or supplementation of the source file may be additionally performed according to the result of the check. .

The present invention can be applied to computer programming learners to complete a final application while downloading a given task, modifying and supplementing it. What's more, the final final application can be viewed just as it would on a real system, maximizing practical training.

Those skilled in the art to which the present invention described above belongs will understand that the present invention can be implemented in other specific forms without changing the technical spirit or essential features. Therefore, the above-described embodiments are to be understood as illustrative in all respects and not as restrictive. The scope of the present invention is shown by the following claims rather than the detailed description, and all changes or modifications derived from the meaning and scope of the claims and their equivalents should be construed as being included in the scope of the present invention. do.

10: remote programming system
110:
120: interface
130: memory
140: database
150: user management unit
160: compilation
170: reporting unit
180: editor providing unit

Claims (15)

A remote programming system that can communicate with portable digital devices.
A compiling unit for compiling the source file in response to receiving a source file written in a designated programming language from the portable digital device; And
A reporting unit for creating a report according to the compilation result;
Remote programming system comprising a.
The method of claim 1,
And an emulator for supporting an operating system compatible with an operating system mounted on the portable digital device.
The method of claim 2,
And a user manager to extract identification numbers of the source file and the portable digital device and store them in a database as the source file is transmitted from the portable digital device.
The method of claim 3, wherein
And the user management unit stores a name, an identification code, a password, and a source file name of a program developer who has transmitted the source file in the database.
The method of claim 1,
And the reporting unit transmits the report to the portable digital device.
The method of claim 1,
And the compilation unit transmits the application generated as a result of the compilation to the portable digital device.
The method according to claim 6,
The compilation unit includes a remote programming system including a compiler capable of translating various programming languages into machine language.
The method of claim 1,
The remote programming system further comprises an editor providing unit for transmitting the editor to support the creation of the source file to the portable digital device.
A remote programming method in a remote programming system having a compilation unit for translating a programming language into machine language,
Compiling the source file by the compilation unit, as a source file written in a designated programming language is transmitted from a portable digital device; And
Reporting by the reporting unit of the remote programming system to write the compilation result as a report;
Remote programming method comprising a.
The method of claim 9,
The remote programming system further includes a user management unit, and further comprising storing the source file and the identification number of the portable digital device that transmitted the source file as the source file is transmitted.
The method of claim 10,
And storing a name, an identification code, a password, and a source file name of a program developer who has transmitted the source file.
The method of claim 10,
Determining, by the user manager, an operating system type of the portable digital device before compiling the source file; And
Executing, by the user manager, a virtual operating system emulator compatible with an operating system of the portable digital device;
Remote programming method further comprising.
The method of claim 9,
And transmitting the report created by the reporting unit to the portable digital device.
The method of claim 13,
And when the debugged source file is transmitted from the portable digital device receiving the report, proceeding to the compiling unit to compile the source file.
The method of claim 9,
And transmitting, by the compilation unit, the application generated as a result of the compilation to the portable digital device.
KR1020100029866A 2010-04-01 2010-04-01 System and method for remote programming KR20110110509A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020100029866A KR20110110509A (en) 2010-04-01 2010-04-01 System and method for remote programming

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100029866A KR20110110509A (en) 2010-04-01 2010-04-01 System and method for remote programming

Publications (1)

Publication Number Publication Date
KR20110110509A true KR20110110509A (en) 2011-10-07

Family

ID=45027022

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100029866A KR20110110509A (en) 2010-04-01 2010-04-01 System and method for remote programming

Country Status (1)

Country Link
KR (1) KR20110110509A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101509522B1 (en) * 2013-12-18 2015-04-08 목원대학교 산학협력단 Education system of programming embedded software and compile method thereof
KR101509523B1 (en) * 2013-12-18 2015-04-16 목원대학교 산학협력단 Uploading method using blutooth communication in the education system of embedded software

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101509522B1 (en) * 2013-12-18 2015-04-08 목원대학교 산학협력단 Education system of programming embedded software and compile method thereof
KR101509523B1 (en) * 2013-12-18 2015-04-16 목원대학교 산학협력단 Uploading method using blutooth communication in the education system of embedded software

Similar Documents

Publication Publication Date Title
JP6122493B2 (en) Adaptively portable library
CN102053836B (en) Implementation method of version management tool for Android application development
US10540262B2 (en) Using edit and continue to dynamically set and unset optimizations in source code while debugging
CN100485620C (en) Programme code translating and compiling method in integrated development environment
US10338907B2 (en) Cloud service framework for toolkit deployment
US6874140B1 (en) Debug annotations
US9047101B2 (en) Method for compiling an intermediate code of an application
US9146713B2 (en) Tool composition for supporting openCL application software development for embedded system and method thereof
CN107577609B (en) Embedded system dynamic module debugging system based on host end dynamic link
CN112905472A (en) Kernel debugging system and method
CN101030241A (en) Method and system based on Keil C51 software protecting development
KR20110110509A (en) System and method for remote programming
CN103631585A (en) Method and system for developing application program
KR20130020135A (en) System and method of providing the developer list of developing code simultaneously in an integrated development environment
CN109460280B (en) Method and terminal for running program
KR101349631B1 (en) Method For Transforming Intermediate Language, System And Computer-Readable Recording Medium with Program Therefor
CN114816672A (en) Virtual machine creation method and device, electronic equipment and storage medium
CN113260976A (en) Techniques for scheduling instructions in compiled source code
KR101670726B1 (en) Method for code conversion using debugging information of intermediate language code, apparatus and computer-readable recording medium with program therefor
CN101593257B (en) System and method for protecting software based on.Net virtual machine
Liang et al. A ubiquitous integrated development environment for c programming on mobile devices
Liang et al. An OpenMP programming environment on mobile devices
US20110099534A1 (en) Information processing apparatus, execution program operation modification method, and recording medium
KR101449657B1 (en) Method for transforming intermediate language using range of values of operator, system and computer-readable recording medium with program therefor
KR101277145B1 (en) Method For Transforming Intermediate Language by Using Common Representation, System And Computer-Readable Recording Medium with Program Therefor

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application