aLinChe

Results 2 issues of aLinChe

本次PR主要修复了与 信号处理、进程ID获取 和 fork 相关的四个关键问题: 1. **修正 `getpid` 系统调用**:将 `getpid()` 的实现改为返回 `task_tgid_vnr(current)`,以确保在PID命名空间环境中能返回当前命名空间下的正确进程组ID(TGID),符合 Linux 标准语义,修复了 `tgkill` 等依赖 TGID 的操作在多线程或容器环境下的归属判断错误。 2. **修复信号阻塞掩码处理**:解决了 `new_blocked.remove(awaited)` 的逻辑错误,确保在等待信号期间能正确管理信号的阻塞状态,避免了本该被丢弃的忽略信号被错误入队。。 3. **实现精确的信号忽略判断**:新增了 `sig_task_ignored` 和 `sig_ignored` 函数,为核心信号处理逻辑添加了完整的信号忽略判断机制。该机制能正确处理: * init进程(rawpid为1)对...

Bug fix

**重现步骤** ```sh sudo bash tools/make_fs_image.sh # make run-nographic 正常进系统 / # ls /dev # 能看到块设备 vda1 vdb vdc1 block console kvm ptmx tty vda1 vdc1 char hvc0 null pts ttyS0...

bug-report