Дающий является простым настольным приложением совместного доступа к файлам. Другие люди, выполняющие Дающего в Вашей сети, автоматически обнаружены, и можно отправить файлы им путем простого перетаскивания файлов к их фотографии или значку, показанному в Дающем.
В Ubuntu:
sudo apt-get install giver
На Linux PIDs присвоены в порядке, но в конечном счете система поразит свой предел PID и запустится, пропуская уже присвоенный PIDs.
Я думал, что PIDs был присвоен случайным образом, чтобы препятствовать тому, чтобы взломщики предположили временные имена файлов, которые обычно имеют строковое представление PID процесса в них. Но я был неправ. Я записал следующую небольшую программу C и выполнил ее на RHEL 5, x86_64, для проверки:
#include <stdio.h>
#include <string.h>
#include <errno.h>
#include <stdlib.h>
#include <sys/types.h>
#include <unistd.h>
int
main(int ac, char **av)
{
int cnt;
pid_t firstpid = getpid();
long diff = 32768 - firstpid;
cnt = diff;
printf("Going to fork %d times\n", cnt);
while (cnt)
{
pid_t mypid = getpid();
printf("cnt %d, pid %d\n", cnt, mypid);
switch (fork())
{
case 0: break;
case -1:
fprintf(stderr, "fork() problem: %s\n", strerror(errno));
_exit(9);
break;
default:
_exit(0);
break;
}
--cnt;
}
return 0;
}
Самый большой числовой PID, который я мог получить, был 32767, 2^15-1, что может поместиться в короткие 2 байта со знаком. Я буду дядей обезьяны.
Это удаляет предсказуемость, которая является проблемой безопасности.
Это нормально. Когда новый процесс запускается, он имеет новый идентификатор процесса, но он не требуется, чтобы быть больше.