Форум программистов, компьютерный форум CyberForum.ru

фуекция sleep - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.75
танкист34
-62 / 0 / 0
Регистрация: 15.03.2013
Сообщений: 328
12.12.2013, 08:20     фуекция sleep #1
Программирую под Linux g++;
Задали задание найти реализацию функции sleep. Нашёл только header unistd.h, там только реализация, где можно найти саму реализацию? Заранее спасибо
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.12.2013, 08:20     фуекция sleep
Посмотрите здесь:

Функция sleep() C++
C++ sleep в с++
Sleep, delay C++
C++ Sleep
C++ функция sleep()
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
programina
 Аватар для programina
1912 / 597 / 37
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2
12.12.2013, 08:38     фуекция sleep #2
Цитата Сообщение от танкист34 Посмотреть сообщение
где можно найти саму реализацию?
Цитата Сообщение от танкист34 Посмотреть сообщение
header unistd.h, там только реализация
Цитата Сообщение от танкист34 Посмотреть сообщение
Заранее спасибо
Пожалуйста.
танкист34
-62 / 0 / 0
Регистрация: 15.03.2013
Сообщений: 328
12.12.2013, 09:47  [ТС]     фуекция sleep #3
Цитата Сообщение от programina Посмотреть сообщение
Пожалуйста.
опечатался, там прототип, спасибо, за то что с острили.. в h-файлах нет реализации
programina
 Аватар для programina
1912 / 597 / 37
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2
12.12.2013, 12:52     фуекция sleep #4
Ищите в исходниках ОС линукс или в исходниках minGW.
танкист34
-62 / 0 / 0
Регистрация: 15.03.2013
Сообщений: 328
12.12.2013, 14:56  [ТС]     фуекция sleep #5
Цитата Сообщение от programina Посмотреть сообщение
Ищите в исходниках ОС линукс или в исходниках minGW.
на исходниках, это имеется ввиду в исходных текстах ядра?

Добавлено через 35 минут
Просмотрел файлы: sleep.c, autosleep.c, hwsleep.c, hwxfsleep.c в ядре. Реализации функции sleep нет, объявленной в unistd.h как unsigned int sleep (unsigned int __seconds);
programina
 Аватар для programina
1912 / 597 / 37
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2
12.12.2013, 15:41     фуекция sleep #6
Ищите папку POSIX
танкист34
-62 / 0 / 0
Регистрация: 15.03.2013
Сообщений: 328
12.12.2013, 16:04  [ТС]     фуекция sleep #7
Цитата Сообщение от programina Посмотреть сообщение
Ищите папку POSIX
Такой директории нет в исходных текстах ядра 3.12.4
elivin
65 / 65 / 1
Регистрация: 04.01.2012
Сообщений: 231
Записей в блоге: 1
12.12.2013, 16:35     фуекция sleep #8
Что-то мне подсказывает, что реализацию стандартных функций в линуксе стоит смотреть в glibc.
programina
 Аватар для programina
1912 / 597 / 37
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2
12.12.2013, 17:02     фуекция sleep #9
Цитата Сообщение от elivin Посмотреть сообщение
Что-то мне подсказывает, что реализацию стандартных функций в линуксе стоит смотреть в glibc.
Да, там.

Добавлено через 8 минут
танкист34, идете сюда: http://mirror.yandex.ru/
slackware
slackware_source
l
glibc

Cкачиваете архив glibc-2.17.tar.xz

Открываете архив, идете в папку posix, находите в ней файл sleep.c и извлекаете его. Затем открываете и там смотрите реализацию.
танкист34
-62 / 0 / 0
Регистрация: 15.03.2013
Сообщений: 328
12.12.2013, 17:07  [ТС]     фуекция sleep #10
Цитата Сообщение от elivin Посмотреть сообщение
Что-то мне подсказывает, что реализацию стандартных функций в линуксе стоит смотреть в glibc.
а где найти glibc, поиск по исходным текстам ядра не находит glibc
elivin
65 / 65 / 1
Регистрация: 04.01.2012
Сообщений: 231
Записей в блоге: 1
12.12.2013, 17:12     фуекция sleep #11
programina, танкист34, у меня прямо в сообщении (на словах "в glibc") ссылка на реализацию
танкист34
-62 / 0 / 0
Регистрация: 15.03.2013
Сообщений: 328
12.12.2013, 17:17  [ТС]     фуекция sleep #12
Цитата Сообщение от elivin Посмотреть сообщение
programina, танкист34, у меня прямо в сообщении (на словах "в glibc") ссылка на реализацию
я всё понимаю, скачал архив glibc. Но это какая-то магия, почему программы написанные мной и без этого архива компилятся с функцией sleep, а в header у меня только unistd.h. ? как header срабатывает без реализации? поэтому я и искал вначале на своём hoste реализацию. Так как, когда пишешь программу, пишешь файл прототипов и файл реализации.
elivin
65 / 65 / 1
Регистрация: 04.01.2012
Сообщений: 231
Записей в блоге: 1
12.12.2013, 17:22     фуекция sleep #13
танкист34, стандартные функции, насколько помню, в линуксе выделены в динамическую библиотеку. То есть, при сборке в исполняемый файл их реализация не входит
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.12.2013, 18:00     фуекция sleep
Еще ссылки по теме:

аналог Sleep C++
функция Sleep() ? C++
C++ Sleep в C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
programina
 Аватар для programina
1912 / 597 / 37
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2
12.12.2013, 18:00     фуекция sleep #14
Цитата Сообщение от танкист34 Посмотреть сообщение
почему программы написанные мной и без этого архива компилятся с функцией sleep
потому что glibc - это библиотека языка Си, она есть в любом линуксе, без нее ни одна программа написанная на Си не запустится. Во время запуска программы, происходит обращение к этой библиотеке, то есть функция слип вызывается не из вашей программы, а из библиотеки glibc

Добавлено через 30 минут
Цитата Сообщение от elivin Посмотреть сообщение
танкист34, стандартные функции, насколько помню, в линуксе выделены в динамическую библиотеку
Да, libc.so (libc.so.xx), находится в папке /lib или /usr/lib

*.so - разделяемая библиотека.
Yandex
Объявления
12.12.2013, 18:00     фуекция sleep
Ответ Создать тему
Опции темы

Текущее время: 10:06. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru