Файл записывается со смещением файла, полученным процессом при открытии файла.Если другой процесс выполняет запись в файл между открытием и записью, содержимое файла является неопределенным.
Правильный метод обработки многократной записи процесса в один файл состоит в том, чтобы все процессы открывали файл с флагом O_APPEND, получали монопольную блокировку и, как только блокировка получена, до конца ищут файлзапись в файл и, наконец, закрытие файла для снятия блокировки.
Если вы хотите, чтобы файл оставался открытым между операциями записи, запустите процесс, открыв файл с флагом O_APPEND.Цикл записи в этом случае - получить монопольную блокировку, выполнить поиск до конца файла, записать в файл и снять блокировку.
Если вам действительно нужна позиция файла, lseek вернет смещение файла дескриптора файла абонентов во время вызова.