我的终端工具用的是secureCRT,android系统是挂载的,但在调试电话系统部分的时候,比如说ping (ip),他就一直运行,不能停止,不能用ctrl+c终止,很不方便。要实现ctrl+c的功能,在我的system/core/init下的init.c中的114行有一个open_console()函数,按照下面的代码进行修改,其实也就是增加一个loctl函数,就可以实现了。
static void open_console()
{
int fd;
if ((fd = open(console_name, O_RDWR)) < 0)
{
fd = open("/dev/null", O_RDWR);
}else {
ioctl(fd,TIOCSCTTY,0);
}
dup2(fd, 0);
dup2(fd, 1);
dup2(fd, 2);
close(fd);
}
static void open_console()
{
int fd;
if ((fd = open(console_name, O_RDWR)) < 0)
{
fd = open("/dev/null", O_RDWR);
}else {
ioctl(fd,TIOCSCTTY,0);
}
dup2(fd, 0);
dup2(fd, 1);
dup2(fd, 2);
close(fd);
}