| A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | Лабораторная работа #2 | |||||||||||||||||||||||||
2 | Вопрос | Ответ | Вопрос | Ответ | ||||||||||||||||||||||
3 | В чём отличие потока от процесса? | эй где вопросы | ||||||||||||||||||||||||
4 | Что за .so файлы в pmap | это динамические библиотеки (shared object) | Спрашивает про твои структуры | |||||||||||||||||||||||
5 | линковка статическая и динамическая | знать что такое GOT (Global Offset Table) и PLT. Чуть-чуть сложно | Выделение памяти в ядре | |||||||||||||||||||||||
6 | Что общего у процесса и потока? | есть команда вроде strace -e clone *имя проги* (точно не помню), которая покажет создание потоков и какие флаги передаются | Про разницу vmalloc|vfree и kmalloc|kfree | |||||||||||||||||||||||
7 | https://infopedia.su/22x7ef8.html | эти флаги отвечают за инфу, которая шарится с потоками. По дефолту вроде: | Про многопоточку может спокойно спросить | |||||||||||||||||||||||
8 | CLONE_VM | CLONE_FILES | CLONE_FS | CLONE_SIGHAND | CLONE_THREAD | CLONE_SETTLS | CLONE_PARENT_SETTID | CLONE_CHILD_CLEARTID | CLONE_SYSVSEM | |||||||||||||||||||||||||
9 | С помощью этих флагов указываем, какая инфа клонируется. Например CLONE_SIGHAND зачит клонируется обработчик сигналов | |||||||||||||||||||||||||
10 | Что такое TGID, SGID, ... | Thread Group ID. У потоков вместе с главным процессом одинаковый TGID. У главного процесса он совпадает с его PID, у потоков же PID другой | ||||||||||||||||||||||||
11 | Что такое ioctl, как работает? | |||||||||||||||||||||||||
12 | когда поток становится зомби? | ZOMBIE - это состояние, когда дочерний процесс освободил ресурсы, но не может передать статус завершения в родительский процесс (если не был запущен с флагом _SPAWN_NOZOMBIE), поскольку родитель не ожидает получения этого статуса (не вызвал wait() или waitpid()). | ||||||||||||||||||||||||
13 | File descriptor. Что происходит если в первом потоке у нас получаест open(filename) = 10, в вотором потоке используем read(10) | |||||||||||||||||||||||||
14 | Atomic operation | |||||||||||||||||||||||||
15 | Mutex | |||||||||||||||||||||||||
16 | Как поток превратить в процесс | |||||||||||||||||||||||||
17 | как процесс превратить в поток | |||||||||||||||||||||||||
18 | PIC | |||||||||||||||||||||||||
19 | Что такое Guard Pages? Что случится при обращении по указателю оттуда? | Страницы без прав (задаются в mmap с флагом PROT_NONE) для ограничения доступа из одних сегментов памяти в другие. При попадании туда происходит SEGFAULT, что приводит к падению программы и сбросу кора на диск (не уверен, что последнее его устроит). | ||||||||||||||||||||||||
20 | Виды взаимодействия процессов | |||||||||||||||||||||||||
21 | TaskStruct | |||||||||||||||||||||||||
22 | Как система обнаруживает нарушение доступа к памяти? | |||||||||||||||||||||||||
23 | Как работает strace? | Сходу могу только сказать, что использует системный вызов ptrace и аттачится к существующему или дочернему относительно strace процессу. | ||||||||||||||||||||||||
24 | Что такое дистрибутив? Чем они похожи друг на друга и отличаются? | |||||||||||||||||||||||||
25 | Какой командой можно без запуска программы узнать используемые динамические библиотеки? | ldd | ||||||||||||||||||||||||
26 | Что такое виртуальная память? Для чего нужна? | |||||||||||||||||||||||||
27 | Чем процесс отличается от потока? Может ли процесс создавать потоки и наоборот? | |||||||||||||||||||||||||
28 | Сколько потоков есть при запуске процесса? | |||||||||||||||||||||||||
29 | Что такое TLB? | |||||||||||||||||||||||||
30 | Что такое GOT и PLT, для чего нужны? | |||||||||||||||||||||||||
31 | Чем отличаются статические библиотеки от динамических? | |||||||||||||||||||||||||
32 | Что означают буквы для потоков в top? | |||||||||||||||||||||||||
33 | ||||||||||||||||||||||||||
34 | ||||||||||||||||||||||||||
35 | ||||||||||||||||||||||||||
36 | ||||||||||||||||||||||||||
37 | ||||||||||||||||||||||||||
38 | ||||||||||||||||||||||||||
39 | ||||||||||||||||||||||||||
40 | ||||||||||||||||||||||||||
41 | ||||||||||||||||||||||||||
42 | ||||||||||||||||||||||||||
43 | ||||||||||||||||||||||||||
44 | ||||||||||||||||||||||||||
45 | ||||||||||||||||||||||||||
46 | ||||||||||||||||||||||||||
47 | ||||||||||||||||||||||||||
48 | ||||||||||||||||||||||||||
49 | ||||||||||||||||||||||||||
50 | ||||||||||||||||||||||||||
51 | ||||||||||||||||||||||||||
52 | ||||||||||||||||||||||||||
53 | ||||||||||||||||||||||||||
54 | ||||||||||||||||||||||||||
55 | ||||||||||||||||||||||||||
56 | ||||||||||||||||||||||||||
57 | ||||||||||||||||||||||||||
58 | ||||||||||||||||||||||||||
59 | ||||||||||||||||||||||||||
60 | ||||||||||||||||||||||||||
61 | ||||||||||||||||||||||||||
62 | ||||||||||||||||||||||||||
63 | ||||||||||||||||||||||||||
64 | ||||||||||||||||||||||||||
65 | ||||||||||||||||||||||||||
66 | ||||||||||||||||||||||||||
67 | ||||||||||||||||||||||||||
68 | ||||||||||||||||||||||||||
69 | ||||||||||||||||||||||||||
70 | ||||||||||||||||||||||||||
71 | ||||||||||||||||||||||||||
72 | ||||||||||||||||||||||||||
73 | ||||||||||||||||||||||||||
74 | ||||||||||||||||||||||||||
75 | ||||||||||||||||||||||||||
76 | ||||||||||||||||||||||||||
77 | ||||||||||||||||||||||||||
78 | ||||||||||||||||||||||||||
79 | ||||||||||||||||||||||||||
80 | ||||||||||||||||||||||||||
81 | ||||||||||||||||||||||||||
82 | ||||||||||||||||||||||||||
83 | ||||||||||||||||||||||||||
84 | ||||||||||||||||||||||||||
85 | ||||||||||||||||||||||||||
86 | ||||||||||||||||||||||||||
87 | ||||||||||||||||||||||||||
88 | ||||||||||||||||||||||||||
89 | ||||||||||||||||||||||||||
90 | ||||||||||||||||||||||||||
91 | ||||||||||||||||||||||||||
92 | ||||||||||||||||||||||||||
93 | ||||||||||||||||||||||||||
94 | ||||||||||||||||||||||||||
95 | ||||||||||||||||||||||||||
96 | ||||||||||||||||||||||||||
97 | ||||||||||||||||||||||||||
98 | ||||||||||||||||||||||||||
99 | ||||||||||||||||||||||||||
100 | ||||||||||||||||||||||||||