3 ms·
cd is part of your shell, so trying to invoke cd from another program would be like opening a new browser tab from another program. It's an internal feature wit
by ChristianBundy 9y ago
cd is part of your shell, so trying to invoke cd from another program would be like opening a new browser tab from another program. It's an internal feature without an outward-facing API.
- qubex 9y agoThere's no reason why one shouldn't be able to invoke the chdir system call and implement the same behaviour.
- gowld 9y agoAllowing any process to arbitrarily modify the state of another process would be a disaster for stability and security.
- colejohnson66 9y agoIsn’t that what a debugger does?
- Someone 9y agoYes, and it is a disaster for stability and security. The designers of dtrace worked hard on the stability part. See, for example, the section on DIF safety in https://www.cs.princeton.edu/courses/archive/fall04/cos518/papers/dtrace.pdf https://www.cs.princeton.edu/courses/archive/fall04/cos518/p....
- chc 9y agoWell, I mean, a program can call chdir() and it works exactly as it's supposed to, but it only affects that program, not a different program.