root@jcjung:~/work# ps -ef | grep tftp
root 2986 1 0 11:06 ? 00:00:00 /usr/sbin/in.tftpd --listen --user tftp --address 0.0.0.0:69 --secure /var/lib/tftpboot
root 3066 1525 0 11:21 pts/2 00:00:00 grep --color=auto tftp
/var/lib/tftpboot : download directory
make test file
root@jcjung:~/work# cat > /var/lib/tftpboot/hello.txt
hello world!
root@jcjung:~/work#
root@jcjung:~/work# cat /var/lib/tftpboot/hello.txt
hello world!
root@jcjung:~/work# ll /var/lib/tftpboot/hello.txt
-rw-r--r-- 1 root root 13 2012-01-17 11:23 /var/lib/tftpboot/hello.txt
set IP of eth1
root@jcjung:~/work# ifconfig eth1 192.168.10.10 up
root@jcjung:~/work# ifconfig
eth0 Link encap:Ethernet HWaddr 08:00:27:fb:e8:6f
inet addr:10.0.2.15 Bcast:10.0.2.255 Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:fefb:e86f/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:5781 errors:0 dropped:0 overruns:0 frame:0
TX packets:3824 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:4950678 (4.9 MB) TX bytes:701903 (701.9 KB)
eth1 Link encap:Ethernet HWaddr 08:00:27:5d:2c:a6
inet addr:192.168.10.10 Bcast:192.168.10.255 Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:fe5d:2ca6/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:4089 errors:0 dropped:0 overruns:0 frame:0
TX packets:28 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:541354 (541.3 KB) TX bytes:5809 (5.8 KB)
apt-get install tftpd-hpa minicom
# setup minicom
minicom -s
+-----[configuration]------+
| Filenames and paths |
| File transfer protocols |
| Serial port setup |
| Modem and dialing |
| Screen and keyboard |
| Save setup as dfl |
| Save setup as.. |
| Exit |
| Exit from Minicom |
+--------------------------+
select Serial port setup
+-----------------------------------------------------------------------+
| A - Serial Device : /dev/tty8 |
| B - Lockfile Location : /var/lock |
| C - Callin Program : |
| D - Callout Program : |
| E - Bps/Par/Bits : 115200 8N1 |
| F - Hardware Flow Control : Yes |
| G - Software Flow Control : No |
| |
| Change which setting? |
+-----------------------------------------------------------------------+
| Screen and keyboard |
| Save setup as dfl |
| Save setup as.. |
| Exit |
| Exit from Minicom |
+--------------------------+
serial port
ttyS0 = com1 ,ttyS1 = com2
usbToSerial port --> ttyUSB0
bluetooth --> rfcomm0
modem --> ttyACM0
+-----------------------------------------------------------------------+
| A - Serial Device : /dev/ttyUSB0 |
| B - Lockfile Location : /var/lock |
| C - Callin Program : |
| D - Callout Program : |
| E - Bps/Par/Bits : 115200 8N1 |
| F - Hardware Flow Control : No |
| G - Software Flow Control : No |
| |
| Change which setting? |
+-----------------------------------------------------------------------+
if the HardFlowControl is yes , output is working but input is not working.
root@jcjung:~# dmesg | tail -5
[ 4079.056577] usb 1-2: Setting MaxPacketSize 64
[ 4079.064758] usb 1-2: FTDI USB Serial Device converter now attached to ttyUSB0
[ 4079.064794] usbcore: registered new interface driver ftdi_sio
[ 4079.064801] ftdi_sio: v1.5.0:USB FTDI Serial Converters Driver
[ 4079.147752] ftdi_sio ttyUSB0: ftdi_submit_read_urb - failed submitting read urb, error -22
execute minicom
modprobe
cp hello_md.ko /lib/modules/2.6.32-24-generic/kernel/
root@jcjung:~/work/sample_module# cp hello_md.ko /lib/modules/2.6.32-24-generic/kernel/root@jcjung:~/work/sample_module# modprobe hello_md
FATAL: Module hello_md not found.
root@jcjung:~/work/sample_module# depmod
root@jcjung:~/work/sample_module# modprobe hello_md
root@jcjung:~/work/sample_module# lsmod | grep hello
hello_md 653 0
root@jcjung:~/work/sample_module# lsmod | grep hello
hello_md 653 0
root@jcjung:~/work/sample_module# modprobe -r hello_md
root@jcjung:~/work/sample_module# lsmod | grep hello
root@jcjung:~/work/sample_module#
1. add new system call in work/linux-2.6.29/arch/arm/include/asm/unistd.h
#define __NR_newsyscall (__NR_SYSCALL_BASE+361)
2. register system call tabla
~/work/linux-2.6.29/arch/arm/kernel/calls.S
/* 361 */ CALL(sys_newsyscall)
3. register handler function
in ~/work/linux-2.6.29/arch/arm/kernel/newsyscall.c
1 #include <linux/kernel.h>
2
3 asmlinkage int sys_newsyscall(int n) {
4 printk("newsyscall called: %d\n", n);
5 return n * n;
6 }
3. compile
modify Makefile like below :
kernel/Makefile
obj-y = sched.o fork.o exec_domain.o panic.o printk.o \
cpu.o exit.o itimer.o time.o softirq.o resource.o \
sysctl.o capability.o ptrace.o timer.o user.o \
signal.o sys.o kmod.o workqueue.o pid.o \
rcupdate.o extable.o params.o posix-timers.o \
kthread.o wait.o kfifo.o sys_ni.o posix-cpu-timers.o mutex.o \
hrtimer.o rwsem.o nsproxy.o srcu.o semaphore.o \
notifier.o ksysfs.o pm_qos_params.o sched_clock.o cred.o \
async.o newsyscall.o
apt-get install libncurses5-dev
ncurses 텍스트 기반의 UI들을 사용하기 위한 library
set cindent
set autoindent
set smartindent
set ts=4
set shiftwidth=4
set nu
set tags=~/work/linux-2.6.29/tags
ctags, cscope
1. ctags package install
apt-get install ctags vim
2. ctags command
tj (tag jump)
ctrl+] : move to ctag with keyword on current cursor position.
ctrl+t : move to previous tag
pstree | more
init-+-NetworkManager-+-2*[dhclient]
| `-{NetworkManager}
|-3*[VBoxClient---{VBoxClient}]
|-VBoxService---7*[{VBoxService}]
|-acpid
|-atd
|-avahi-daemon---avahi-daemon
|-bonobo-activati---{bonobo-activat}
|-clock-applet
|-console-kit-dae---63*[{console-kit-da}]
|-cron
|-cupsd
|-3*[dbus-daemon]
|-3*[dbus-launch]
|-firefox---run-mozilla.sh---firefox-bin-+-plugin-containe---{plugin-contai
n}
| `-10*[{firefox-bin}]
|-2*[gconfd-2]
|-gdm-binary-+-gdm-simple-slav-+-Xorg
| | |-gdm-session-wor-+-gnome-session-+-bluetoot
h-apple
| | | | |-evolutio
n-alarm---{evolution-alar}
wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.29.tar.bz2
root@jcjung:~/work/linux-2.6.29/arch/arm/plat-s3c64xx/include# cd plat/
root@jcjung:~/work/linux-2.6.29/arch/arm/plat-s3c64xx/include/plat# ls
gpio-bank-a.h gpio-bank-f.h gpio-bank-n.h pll.h s3c6410.h
gpio-bank-b.h gpio-bank-g.h gpio-bank-o.h regs-clock.h
gpio-bank-c.h gpio-bank-h.h gpio-bank-p.h regs-gpio.h
gpio-bank-d.h gpio-bank-i.h gpio-bank-q.h regs-sys.h
gpio-bank-e.h gpio-bank-j.h irqs.h s3c6400.h