MiniGUI 2.0.4/1.6.10 FAQs and FAQs

Source: Internet
Author: User
Tags vector font
Document directory
  • 5 can the MiniGUI be directly transplanted to various embedded panels?
1. Which operating systems can the MiniGUI run on? 1.1 short answer

MiniGUI can run on Linux, uClinux, VxWorks, threadx, ECOs, nucleus, uC/OS-II, PSOs, ose, and other operating systems and Win32 platforms. At the same time, MiniGUI on different operating systems provides fully compatible API interfaces.

1.2 long answer

Theoretically, MiniGUI can run on any embedded operating system that supports multiple tasks. Currently, verified operating systems include Linux, uClinux, and ,! VxWorks, ECOs, uC/OS-II, PSOs ,! Threadx, nucleus, and ose. MiniGUI can also be run on the Win32 platform. At the same time, MiniGUI on different operating systems provides fully compatible API interfaces. Running MiniGUI on Win32 helps developers design the MiniGUI application interface in Windows to improve development efficiency.

1.3 complete answer

Why can MiniGUI run on so many embedded operating systems? This is because the MiniGUI has a good software architecture and is isolated from the underlying operating system through the abstraction layer. As shown in, MiniGUI-based applications generally implement their own functions through the ansi c library, operating system, driver interfaces, and APIs provided by MiniGUI; the portable layer in MiniGUI can hide the details of specific operating systems and underlying hardware, while upper-layer applications do not need to care about the underlying hardware platform output and input devices.

In addition, MiniGUI's unique operating mode also facilitates cross-operating system support.

As mentioned above, compared with Unix-like operating systems such as Linux, traditional embedded operating systems generally have some special characteristics. For example, operating systems such as uClinux, uC/OS-II, and ECOs usually run on CPUs without MMU (memory management units used to provide virtual memory support, generally, there is no process concept, but only a thread or task. In this way, the runtime environment of MiniGUI is quite different. Therefore, to suit different operating system environments, we can configure MiniGUI to three different operating modes:

 

  • MiniGUI-threads. Programs running on MiniGUI-threads can create multiple windows in different threads, but all windows run in one process or address space. This mode is mainly used to support most traditional embedded operating systems, such as VxWorks, threadx, nucleus us, ose, PSOs, uC/OS-II, and ECOs. Of course, in Linux and uClinux, MiniGUI can also run in MiniGUI-threads mode.

 

  • MiniGUI-processes. In contrast to MiniGUI-threads, each program on MiniGUI-processes is a separate process. Each process can also create multiple windows and implement a multi-process window system. MiniGUI-processes is suitable for Embedded Operating Systems with complete UNIX features, such as embedded Linux and ,! VxWorks 6. This running mode is provided in MiniGUI v2.0.3.

 

  • MiniGUI-standalone. In this running mode, MiniGUI can run as an independent task without multithreading or multi-process support. This running mode is suitable for applications with a single function. For example, in some embedded products that use uClinux, if thread support is lacking for various reasons, you can use MiniGUI-standalone to develop application software.

Generally, the MiniGUI-standalone mode is the most widely used and supports almost all operating systems. The MiniGUI-threads mode is the second applicable to real-time embedded operating systems that support multiple tasks, or a general operating system with the complete UNIX features; MiniGUI-processes mode is applicable to a small number of Embedded Operating Systems with the complete UNIX features, such as Linux and VxWorks 6.

However, no matter which running mode is used, MiniGUI provides maximum consistency for upper-layer applications. Only a few interfaces that involve initialization are different in different running modes.

The following table shows the running Modes supported by MiniGUI v2.0.x and v1.6.x on each operating system.

Operating System MiniGUI version Supported running Modes
Linux MiniGUI v2.0.x MiniGUI-Processes
MiniGUI-threads
MiniGUI-Standalone
Linux MiniGUI v1.6.x MiniGUI-Lite
MiniGUI-threads
MiniGUI-Standalone
UClinux MiniGUI v1.6.x MiniGUI-threads
MiniGUI-Standalone
VxWorks 6.x MiniGUI v2.0.x MiniGUI-Processes
MiniGUI-threads
VxWorks 6.x MiniGUI v1.6.x MiniGUI-threads
VxWorks 5.x MiniGUI v1.6.x MiniGUI-threads
Threadx MiniGUI v1.6.x MiniGUI-threads
Nucleus MiniGUI v1.6.x MiniGUI-threads
Ose MiniGUI v1.6.x MiniGUI-threads
ECos MiniGUI v1.6.x MiniGUI-threads
UC/OS-II MiniGUI v1.6.x MiniGUI-threads
PSOs MiniGUI v1.6.x MiniGUI-threads
Win32 MiniGUI v1.6.x MiniGUI-threads

 

2. What hardware platforms does MiniGUI support? 2.1 short answer

Theoretically, the running of MiniGUI has nothing to do with a specific hardware platform. As long as a hardware platform runs a certain operating system supported by MiniGUI, MiniGUI can run on this platform.

2.2 long answer

MiniGUI has verified the supported CPU architecture including x86, arm, PowerPC, and MIPS. The CPU that has been verified to run MiniGUI includes intel X86, arm (ARM7/arm9-/ strongarm/XScale/mx1), PowerPC, MIPS, m68k (Dragonball/ColdFire), and Fujitsu frv.

2.3 complete answer

Theoretically, the running of MiniGUI has nothing to do with a specific hardware platform. As long as a hardware platform runs a certain operating system supported by MiniGUI, MiniGUI can run on this platform. MiniGUI has verified the supported CPU architecture including x86, arm, PowerPC, and MIPS. The CPU that has been verified to run MiniGUI includes intel X86, arm (ARM7/arm9-/ strongarm/XScale/mx1), PowerPC, MIPS, m68k (Dragonball/ColdFire), and Fujitsu frv. Supported typical embedded development boards include PC104, Intel DMG, Sigma designs realmagic? Em85xx/em86xx, S3C2410, and S3C2440 development boards.

 

3. How much memory does the MiniGUI occupy? 3.1 short answer

MiniGUI itself occupies less than 2 MB of memory.

3.2 long answer

The memory occupied by MiniGUI is related to the options you use when configuring MiniGUI, and also to the load of the runtime resources specified in the MiniGUI configuration file. If the minimum resource load is used, MiniGUI can run on systems with only 4 MB of memory when uClinux or other real-time embedded operating systems are used. If you use Linux kernel 2.2 or 2.4, the memory requirement will be increased by 2 MB.

3.3 full answer 4. How much storage space does MiniGUI occupy? 4.1 Short answer

The Code part of MiniGUI occupies 1.2 kb to MB, depending on the configuration options during compilation, and the space occupied by other parts mainly includes fonts. The size of a typical Chinese gb2312 dot matrix font is less than kb.

4.2 long answer

The storage space occupied by the MiniGUI function library and resources depends on the options you use when configuring the MiniGUI, and also on the volume of resources loaded at the runtime specified in the MiniGUI configuration file, the key to affecting the resource size is the font resources. When a small font resource is used, the storage space occupied by the MiniGUI function library and resources is less than 2 MB. Each font that uses a multi-byte character set (such as a simplified Chinese, Japanese, or Korean font) requires an average of KB to kb.

4.3 complete answer 5 can MiniGUI be directly transplanted to various insert panels?

 

 

5.1 short answer

Although MiniGUI can be run on an operating system, but because the specific development board configuration may be different, you need to do some specific development work to run MiniGUI on these boards, for example, the development engine for the development board. The porting fee charged by the Apsara software is the development fee. However, you can also complete related development work on your own.

5.2 long answer

Unlike PCs, embedded hardware systems have industry-recognized unified standards. Therefore, their peripheral configurations vary widely. For example, although Mobile Phones run the same operating system, some mobile phones are equipped with touch screens, while some do not. To run MiniGUI on these different mobile phones, you need to write something similar to the driver for different hardware configurations so that MiniGUI can adapt to different hardware configurations. This porting process is similar to the customization for specific development boards. After you purchase the MiniGUI value-added edition for a specific operating system, you can also complete this customization by referring to the relevant transplant guide document. If you need the Apsara software, you will be charged for the migration.

5.3 complete answer

Theoretically, MiniGUI supports almost all real-time embedded operating systems. Currently, MiniGUI supports about 10 embedded operating systems, including Linux, uClinux, VxWorks, threadx, ECOs, uC/OS-II, ose, nucleus, and PSOs. If you want to run MiniGUI on a new operating system, you also need to perform some basic porting for the operating system. This part of transplantation is difficult, so the cost is relatively high. If your Development Board has run an operating system supported by MiniGUI, you do not need to perform this migration. However, embedded hardware systems do not have the same industry-recognized unified standards as PCs, so their peripheral configurations vary widely. For example, although Mobile Phones run the same operating system, some mobile phones are equipped with touch screens, while some do not. To run MiniGUI on these different mobile phones, you need to write something similar to the driver for different hardware configurations so that MiniGUI can adapt to different hardware configurations. This porting process is similar to the customization for specific development boards. That is to say, to run MiniGUI on a certain board involves two types of porting work: one is porting to the corresponding operating system and the other is porting to the corresponding development board. Because of the technical difficulty of porting the operating system, it is difficult for users to do it themselves. Therefore, this kind of work is generally completed by the Apsara software. For the porting of the Development Board, after you purchase a MiniGUI value-added product for an operating system, you can complete the product by referring to the relevant porting guide document. If you need the Apsara software, you will be charged for the migration.

6. Is the reference model of a utility developed by MiniGUI? 6.1 Short answer

Yes.

6.2 long answer

Currently, the example provided by MiniGUI is relatively simple, and only simple functions can be verified, rather than the prototype of a product. We can provide some project cases for your reference. We will use the beautiful style to make a comprehensive and beautiful mgdemo.

7 does MiniGUI require the support of the math library? 7.1 short answer

Yes.

7.2 long answer

In the configure of the Time-disable-adv2dapi can be, so do not need the mathematical library support, there is no advanced 2D graphics API.

8 can I use the vector font library for MiniGUI? 8.1 short answer

Yes.

8.2 long answer

MiniGUI supports Vector Fonts, Which is disabled in the default configuration. In configure, -- enable-ttfsupport. If a vector library is available, it is used in the thread version. If there is no vector font, need to http://sourceforge.net/project/showfiles.php? Group_id = 3157 download. MiniGUI uses true tpye font 1 ,,

For use in the process version, you need to use:

#ifdef _MGRM_PROCESSESJoinLayer(NAME_DEF_LAYER , "helloworld" , 0 , 0);if (!InitVectorialFonts ()) {        printf ("InitVectorialFonts: error./n");        exit (2);}#endif

And

#ifdef _MGRM_PROCESSESTermVectorialFonts ();#endif

The detailed examples are in MDE/fontdemo. C.

9 does MiniGUI change the wvfb size by 9.1 in windows?

It can be modified.

9.2 long answer

Modify src/sysres/mgetc-win32.c This defines the size of the screen to modify MiniGUI, and then modify the wvfb configuration file to the size you need.

-- Feynmanhejian-20 Feb 2009.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.