Adapt the x86_64 sources to the latests build system

Signed-off-by: Junjie Mao <eternal.n08@gmail.com>
Random source changes due to common code modifications

Signed-off-by: Junjie Mao <eternal.n08@gmail.com>
Support uCore_run for x86_64

Signed-off-by: Junjie Mao <eternal.n08@gmail.com>
Fix a bug in building supervisor

Signed-off-by: Junjie Mao <eternal.n08@gmail.com>
Fix the issue on bootinfo.S

Signed-off-by: Junjie Mao <eternal.n08@gmail.com>
Move kern-sect_size to avoid buggy mkdirs

Signed-off-by: Junjie Mao <eternal.n08@gmail.com>
Merge branch 'mjj/x86_64' of https://github.com/eternalNight/ucore_plus-next

This set of patches enable building and running uCore for x86_64.

To do so, execute the following commands in the directory ucore:

    ucore$ make ARCH=x86_64 defconfig
    ucore$ make
    ucore$ make sfsimg
    ucore$ make swapimg
    ./uCore_run -d obj
Provide a config entry for minimizing initial files in sfsimg

The original initial files occupy more than 20M (most of which are
minigui-related binaries and resources and should be cleaned up in the future).
These files have run over the size limit of external storage on many embedded
systems but are totally unnecessary.

This patch provides a config entry at 'Filesystem/Minimize contents'. When
selected, only some manuals are included in addition to the utilities.

The config entry is default to n. It should be explicitly set to y if needed.

Signed-off-by: Junjie Mao <eternal.n08@gmail.com>
Cleanup useless files in _initial.small

Some ARM binaries are included in _initial.small but it is hardly needed. Remove
it so that embedded systems may enjoy some more storage space available.

Signed-off-by: Junjie Mao <eternal.n08@gmail.com>
Generate dependencies for assembly sources

During the original build system, dependency files for assembly sources
are not generated. This prevents the assembly from being rebuilt after
config changes and gives rise to strange bugs under such circumstances.

This patch adds rules for generating dependency files for assembly sources,
as well as brings back the config entries in assembly files.

Signed-off-by: Junjie Mao <eternal.n08@gmail.com>
add armv6 support

updated makefile and configurations for armv6
updated mmu code for armv6
Fix config for minimizing initial files in sfsimg

maojj's previous patch doesn't work because it utilized bash only grammar
this patch uses makefile's built-in if
Fix print_pgdir

The original logic in printing page dir is incorrect as it won't give
the correct result when the first pte in a pt is not occupied

This fix may be applicable to other arch
add new machine RASPBERRYPI

adding new armv6 machine raspberrypi:
* modified relevant makefiles and configurations
* written uart code to make it work

oustanding issue
* boot stops when mmu is enabled
Fix mmu on ARMv6

ARMv6 introduced new pgtable format while maintaing backward
compatibility to ARMv5. Therefore, a switch needs to be turned on to
enable the new format.

In ARMv7, the legacy pgtable format support is dropped. Therefore, this
issue is specific to ARMv6.
Add support for picirq, clock, and serial int
add hdmi console support for raspberrypi
fixed README_NIOS2
fixed program shell script for NIOS2
fixed NIOS2 timer