xref: /minix3/minix/commands/update/update.c (revision 433d6423c39e34ec4b79c950597bb2d236f886be)
1*433d6423SLionel Sambuc /* update - do sync periodically		Author: Andy Tanenbaum */
2*433d6423SLionel Sambuc 
3*433d6423SLionel Sambuc #include <sys/types.h>
4*433d6423SLionel Sambuc #include <signal.h>
5*433d6423SLionel Sambuc #include <unistd.h>
6*433d6423SLionel Sambuc 
7*433d6423SLionel Sambuc int main(void);
8*433d6423SLionel Sambuc 
main()9*433d6423SLionel Sambuc int main()
10*433d6423SLionel Sambuc {
11*433d6423SLionel Sambuc   /* Release all (?) open file descriptors. */
12*433d6423SLionel Sambuc   close(0);
13*433d6423SLionel Sambuc   close(1);
14*433d6423SLionel Sambuc   close(2);
15*433d6423SLionel Sambuc 
16*433d6423SLionel Sambuc   /* Release current directory to avoid locking current device. */
17*433d6423SLionel Sambuc   chdir("/");
18*433d6423SLionel Sambuc 
19*433d6423SLionel Sambuc   /* Flush the cache every 30 seconds. */
20*433d6423SLionel Sambuc   while (1) {
21*433d6423SLionel Sambuc 	sync();
22*433d6423SLionel Sambuc 	sleep(30);
23*433d6423SLionel Sambuc   }
24*433d6423SLionel Sambuc }
25