나는 운영 체제에서 강의를 듣고 있으며 Linux (Red Hat 8.0)에서 작업합니다. 모든 파일 열기 및 닫기 파일의 기록을 저장할 파일 닫기, 닫기 추적기 구현하려면 노력하고있어. 나는 sys_open이 프로세스 ID를 받아 들일 것을 기대했으며 호출을 시작한 프로세스의 히스토리에 액세스하고이를 업데이트 할 수 있다고 (sysopen의 일부를 업데이트하고 닫기 기능을 사용하여) 업데이트 ID를 사용할 수있을 것으로 기대했다. 그러나 이러한 함수는 pid를 매개 변수로 받아들이지 않으므로 시작/종료 파일을 시작한 프로세스와 연관시키는 방법에 대해 다소 분실했습니다. 내 유일한 추측은 어떤 주어진 시간에 활성 프로세스가 하나 뿐이므로 메타 데이터는 어떤 방식 으로든 전역 적이어야하지만 어디에서 어떻게 찾을 수 있는지 전혀 알지 못합니다. 어떤 조언을 주시면 감사하겠습니다.어떤 프로세스가 sys_open을 시작했는지 확인하는 방법
1
A
답변
3
커널 공간에서이 작업을 수행 하시겠습니까? 커널 공간 인 IIRC에있는 sys_open 등을 직접보고 있었기 때문에 현재 포인터를 사용하여 current
프로세스의 PID (current->pid
)를 볼 수 있습니다.
관련 문제
- 1. 주어진 프로세스가 인터넷에 어떤 연결을 생성했는지 확인하는 방법
- 2. 사용자 또는 NSWorkspace가 응용 프로그램을 시작했는지 확인하는 방법
- 3. 모바일 장치에서 프로세스가 실행 중인지 확인하는 방법
- 4. Linux "top": 어떤 프로세스가 무엇인지 알려주는 방법?
- 5. 우분투에서 어떤 프로세스가 네트워크 돼지인지 알아내는 방법
- 6. 어떤 명령이 어떤 명령을 실행했는지 확인하는 방법
- 7. 프로세스가 종료되었는지 확인하는 방법은 무엇입니까?
- 8. C# 어떤 프로세스가 파일을 사용하고 있는지 알려주는 방법?
- 9. 레지스트리에 어떤 프로세스가 액세스하는지 찾으십시오.
- 10. 어떤 프로세스가 로더 오류를 발생하게
- 11. 'onload'가 이미 시작했는지 확인하십시오.
- 12. 처음 게임을 시작했는지 확인하십시오 - Cocos2d
- 13. ListBox.SelectedIndexChanged - 사용자가 시작했는지 확인할 수 있습니까?
- 14. 일부 프로세스가 파이썬과 함께 작업 관리자에서 실행 중인지 확인하는 방법
- 15. imageview에서 어떤 이미지가 호출되는지 확인하는 방법
- 16. 어떤 블루투스 프로파일이 통신에 사용되는지 확인하는 방법
- 17. 어떤 페이지가 Usercontrol을 호출했는지 확인하는 방법
- 18. 어떤 파일이 rcs 파일에서 변경되었는지 확인하는 방법
- 19. cocoa-touch : 어떤 객체를 만졌는지 확인하는 방법
- 20. 연락처 데이터베이스에서 어떤 행이 업데이트되었는지 확인하는 방법
- 21. 변수가 어떤 종류의 IEnumerable인지 확인하는 방법
- 22. 어떤 my.cnf mysql이 사용 중인지 확인하는 방법
- 23. CruiseControl.NET에서 어떤 프로젝트가 트리거되었는지 확인하는 방법
- 24. 어떤 UIViewController가 활성화되어 있는지 확인하는 방법
- 25. 어떤 dijit.layout.AccordionPane이 현재 선택되어 있는지 확인하는 방법
- 26. 어떤 JavaScript 이벤트가 트리거되는지 확인하는 방법
- 27. 디버거에서 Java 프로세스가 시작되었는지 확인하는 방법은 무엇입니까?
- 28. MySQL 프로세스가 멈췄는지 확인하는 방법은 무엇입니까?
- 29. 프로세스가 유휴 상태인지 확인하는 방법은 무엇입니까? C#
- 30. 프로세스가 종료 된시기를 확인하는 방법은 무엇입니까?
나는 그의 질문을 오해 한 것 같습니다. 어떻게 든 커널에서 커널을 지키고 싶다는 생각이 들었습니다. –
@tinkertim - 또는 어쩌면 내가 오해했다 ... 우리는 기다려 볼게 :) – abyx
아니, 당신이 맞습니다, 나는 이것이 커널 공간에 있기를 원했습니다. 감사. –