Sponsored Content
Homework and Emergencies Homework & Coursework Questions About dining philosopher problem Post 302942577 by mkchantony on Thursday 30th of April 2015 01:09:54 AM
Old 04-30-2015
About dining philosopher problem

-----

Last edited by mkchantony; 05-04-2015 at 01:27 AM.. Reason: CODe tags
 

10 More Discussions You Might Find Interesting

1. UNIX for Advanced & Expert Users

SSH Problem auth problem

Hi, Just recently we seem to be getting the following error message relating to SSH when we run the UNIX script in background mode: warning: You have no controlling tty. Cannot read confirmation.^M warning: Authentication failed.^M Disconnected; key exchange or algorithm negotiation... (1 Reply)
Discussion started by: budrito
1 Replies

2. Programming

dining philosophers problem

To avoid deadlock, I used a possible solution. The odd numbered philosophers grab the right and then the left while even numbered philosophers grap the chopsticks in the reverse order. Implement this solution using pthread mutual exclusion lock. Please look at my code, although it works,but the... (4 Replies)
Discussion started by: zhshqzyc
4 Replies

3. Shell Programming and Scripting

problem with dd command or maybe AFS problem

Hi, folks. Sorry for bothering, but maybe someone could help me please. The problem is the following: there is some script that copies files from local file system to AFS. The copying is performed with dd command. The script copies data into some AFS volumes. The problem appeared with one... (0 Replies)
Discussion started by: Anta
0 Replies

4. Solaris

problem in finding a hardware problem

Hi I am right now facing a strange hardware problem. System get booted with the following error: Fatal Error Reset CPU 0000.0000.0000.0003 AFSR 0100.0000.0000.0000 SCE AFAR 0000.07c6.0000.1000 SC Alert: Host System has Reset It happen 4 or 5 times and get the same error every time.I... (8 Replies)
Discussion started by: girish.batra
8 Replies

5. AIX

user login problem & Files listing problem.

1) when user login to the server the session got colosed. How will resolve? 2) While firing the command ls -l we are not able to see the any files in the director. but over all view the file system using the command df -g it is showing 91% used. what will be the problem? Thanks in advance. (1 Reply)
Discussion started by: pernasivam
1 Replies

6. AIX

AIX OS problem? network problem?

Dear ALL. I installed AIX OS on customer sites. but Only one site is too slow when I connected telnet, ftp.. Ping is too fast. but telnet and FTP is not connected.. of course i check the configuration file on aix but it's normal. Do any Idea?? thanks in advance. - Jun - (3 Replies)
Discussion started by: Jeon Jun Seok
3 Replies

7. Programming

Dining philosophers

Hi. I`m writng script solving problem of dining philosophers but it does not work. PHILOSOPHER SRIPT: #!/bin/bash ./start.conf cd stol a=$1 #echo a$a #echo ilosc$ilosc #echo dziel$(($%$ilosc)) if ; then #next=$%$ilosc] next=1 else next=$ fi (0 Replies)
Discussion started by: Aryman1983
0 Replies

8. IP Networking

Problem with forwarding emails (SPF problem)

Hi, This is rather a question from a "user" than from a sys admin, but I think this forum is apropriate for the question. I have an adress with automatic email forwarding and for some senders (two hietherto), emails are bouncing. This has really created a lot of problems those two time so I... (0 Replies)
Discussion started by: carwe
0 Replies

9. UNIX for Dummies Questions & Answers

sed Or Grep Problem OR Terminal Problem?

I don't know if you guys get this problem sometimes at Terminal but I had been having this problem since yesterday :( Maybe I overdid the Terminal. Even the codes that used to work doesn't work anymore. Here is what 's happening: * I wanted to remove lines containing digits so I used this... (25 Replies)
Discussion started by: Nexeu
25 Replies

10. IP Networking

Router problem or ISP problem ?

Hi everyone, I am experiencing discontinuity of Internet service, this started 1 month ago. Everything worked very well for 1 year of intensive use, but now, I have problems reaching my gateway. The gateway is not my router but a node belonging to my ISP and I share the same public IP with... (3 Replies)
Discussion started by: remic
3 Replies
TKNEWSBIFF(1)						      General Commands Manual						     TKNEWSBIFF(1)

NAME
tknewsbiff - pop up a window when news appears SYNOPSIS
tknewsbiff [ server or config-file ] INTRODUCTION
tknewsbiff pops up a window when there is unread news in your favorite newsgroups and removes the window after you've read the news. tknewsbiff can optionally play a sound, start your newsreader, etc. SELECTING NEWSGROUPS
By default, the configuration file ~/.tknewsbiff describes how tknewsbiff behaves. The syntax observes the usual Tcl rules - however, even if you don't know Tcl, all but the most esoteric configurations will be obvious. Each newsgroup (or set of newsgroups) to be watched is described by using the "watch" command. For example: watch dc.dining watch nist.* watch comp.unix.wizard -threshold 3 watch *.sources.* -threshold 20 For each newsgroup pattern, any newsgroup that matches it and which you are subscribed to (according to your newsrc file) is eligible for reporting. By default, tknewsbiff reports on the newsgroup if there is at least one unread article. The "-threshold" flag changes the threshold to the following number. For example, "-threshold 3" means there must be at least three articles unread before tknewsbiff will report the newsgroup. If no watch commands are given (or no configuration file exists), all groups which are subscribed to are watched. To suppress newsgroups that would otherwise be reported, use the "ignore" command. For example, the following matches all comp.* and nist.* newgroups except for nist.posix or .d (discussion) groups: watch comp.* watch nist.* ignore nist.posix.* ignore *.d The flag "-new" describes a command to be executed when the newsgroup is first reported as having unread news. For example, the following lines invoke the UNIX command "play" to play a sound. watch dc.dining -new "exec play /usr/local/sounds/yumyum.au" watch rec.auto* -new "exec play /usr/local/sounds/vroom.au" You can cut down on the verbosity of actions by defining procedures. For example, if you have many -new flags that all play sound files, you could define a sound procedure. This would allow the -new specification to be much shorter. proc play {sound} { exec play /usr/local/sounds/$sound.au } watch dc.dining -new "play yumyum" watch rec.auto* -new "play vroom" As an aside, you can put an "&" at the end of an "exec" command to get commands to execute asynchronously. However, it's probably not a good idea to do this when playing sound files anyway. "newsgroup" is a read-only variable which contains the name of the newsgroup that is being reported. This is useful when the action is triggered by a pattern. For example, the following line could run the newsgroup name through a speech synthesizer: watch * -new { exec play herald.au exec speak "New news has arrived in $newsgroup." } The flag "-display" describes a command to be executed every time the newsgroup is reported as having unread news. The special command "display" is the default command. It schedules $newsgroup to be written to tknewsbiff's display when it is rewritten. For example, by explicitly providing a -display flag that omits the display command, you can disable the display of newsgroups that are already reported via -new. watch dc.dining -new {exec play yumyum.au} -display {} If you want to execute an action repeatedly and still display the newsgroup in the default manner, explicitly invoke the display command via the -display flag. For example: watch *security* -display { exec play red-alert.au display } Actions associated with the -new and -display flags are executed only once for each matching newsgroup. The command executed is the one associated with the first pattern in the configuration file that matches and observes the given threshold. Any command that is simply listed in the configuration file is executed each time before the update loop in tknewsbiff. The reserved (but user-defined) procedure "user" is run immediately after the newsgroups are scheduled to be written to the display and before they are actu- ally written. For example, suppose unread articles appear in several rec.auto groups and you play the same sound for each one. To prevent playing the sound several times in a row, make the -new command simply set a flag. In the user procedure, play the sound if the flag is set (and then reset the flag). The user procedure could also be used to start a newsreader. This would avoid the possibility of starting multiple newsreaders just because multiple newsgroups contained unread articles. (A check should, of course, be made to make sure that a newsreader is not already running.) MORE VARIABLES
The following example lines show variables that can affect the behavior of tknewsbiff set delay 120 set server news.nist.gov set server_timeout 60 set newsrc ~/.newsrc set width 40 set height 20 set active_file /usr/news/lib/active tknewsbiff alternates between checking for unread news and sleeping (kind of like many undergraduates). The "delay" variable describes how many seconds to sleep. The "server" variable names an NNTP news-server. The default is "news". The "server" variable is only used if the "active_file" variable is not set. The "server_timeout" variable describes how how many seconds to wait for a response from the server before giving up. -1 means wait for- ever or until the server itself times out. The default is 60 seconds. The "newsrc" variable describes the name of your .newsrc file. By default, tknewsbiff looks in your home directory for a newsrc file. A server-specific newsrc is used if found. For example, if you have set server to "cubit.nist.gov", then tknewsbiff looks for ~/.newsrc- cubit.nist.gov. (This is the Emacs gnus convention - which is very convenient when you read news from multiple servers.) If there is no server-specific newsrc, tknewsbiff uses ~/.newsrc. The "width" variable describes the width that tknewsbiff will use to display information. If any newsgroup names are long enough, they will be truncated so that the article counts can still be shown. You can manually resize the window to see what was truncated. However, if your configuration file sets the width variable, the window will be restored to that size the next time that tknewsbiff checks for unread news and updates its display. The "height" variable describes the maximum height that tknewsbiff will use to display information. If fewer newsgroups are reported, tknewsbiff will shrink the window appropriately. You can manually resize the window but if your configuration file sets the height vari- able, the window will be restored to that size the next time that tknewsbiff checks for unread news and updates its display. The "active_file" variable describes the name of the news active file. If set, the active file is read directly in preference to using NNTP (even if the "server" variable is set). This is particularly useful for testing out new configuration files since you can edit a fake active file and then click button 2 to immediately see how tknewsbiff responds (see BUTTONS below). If the environment variable DOTDIR is set, then its value is used as a directory in which to find all dotfiles instead of from the home directory. In particular, this affects the tknewsbiff configuration file and the .newsrc file (assuming the newsrc variable is not set explicitly). WATCHING DIFFERENT NEWS SERVERS
To watch multiple servers, run tknewsbiff multiple times. (Since you need different .newsrc files and the servers have different news- groups and article numbers anyway, there is no point in trying to do this in a single process.) You can point tknewsbiff at a different server with an appropriate argument. The argument is tried both as a configuration file name and as a suffix to the string "~/.tknewsbiff-". So if you want to watch the server "kidney", store the tknewsbiff configuration information in ~/.tknewsbiff-kidney". The following two commands will both use that configuration file. tknewsbiff kidney tknewsbiff ~/.tknewsbiff-kidney In both cases, the actual server to contact is set by the value of the server variable in the configuration file. If no configuration file is found, the argument is used as the server to contact. This allows tknewsbiff to be run with no preparation whatsoever. If the argument is the special keyword "active" (or ends in "/active"), it is used as the name of an active file. This is in turn used to initialize the variable "active_file" so that tknewsbiff reads from the active file directly rather than using NNTP. Creating your own active file is a convenient way of testing your configuration file. For example, after running the following command, you can repeatedly edit your active file and trigger the update-now command (either by pressing button 2 or setting the delay variable very low) to see how tknewsbiff responds. The active file must follow the format of a real active file. The format is one newsgroup per line. After the newsgroup name is the num- ber of the highest article, the lowest article. Lastly is the letter y or m. m means the newsgroup is moderated. y means posting is allowed. WINDOW
When unread news is found, a window is popped up. The window lists the names of the newsgroups and the number of unread articles in each (unless suppressed by the -display flag). When there is no longer any unread news, the window disappears (although the process continues to run). BUTTONS
Button or key bindings may be assigned by bind commands. Feel free to change them. The default bind commands are: bind .list <1> help bind .list <2> update-now bind .list <3> unmapwindow By default button 1 (left) is bound to "help". The help command causes tknewsbiff to pop up a help window. By default, button 2 (middle) is bound to "update-now". The update-now command causes tknewsbiff to immediately check for unread news. If your news server is slow or maintains a very large number of newsgroups, or you have a large number of patterns in your configuration file, tknewsbiff can take considerable time before actually updating the window. By default, button 3 (right) is bound to "unmapwindow". The unmapwindow command causes tknewsbiff to remove the window from the display until the next time it finds unread news. (The mapwindow command causes tknewsbiff to restore the window.) As an example, here is a binding to pop up an xterm and run rn when you hold down the shift key and press button 1 in the listing window. bind .list <Shift-1> { exec xterm -e rn & } Here is a similar binding. However it tells rn to look only at the newsgroup that is under the mouse when you pressed it. (The "dis- play_list" variable is described later in this man page.) bind .list <Shift-1> { exec xterm -e rn [lindex $display_list [.list nearest %y]] & } OTHER COMMANDS AND VARIABLES
Built-in commands already mentioned are: watch, ignore, display, help, update-now, unmapwindow, and mapwindow. Any Tcl and Tk command can also be given. In particular, the list of newsgroups is stored in the list widget ".list", and the scroll bar is stored in the scrollbar widget ".scroll". So for example, if you want to change the foreground and background colors of the newsgroup list, you can say: .list config -bg honeydew1 -fg orchid2 These can also be controlled by the X resource database as well. However, the configuration file allows arbitrarily complex commands to be evaluated rather than simple assignments. Certain Tcl/Tk commands can disrupt proper function of tknewsbiff. These will probably be obvious to anyone who knows enough to give these commands in the first place. As a simple example, the program assumes the font in the list box is of fixed width. The newsgroups will likely not align if you use a variable-width font. The following variables are accessible and can be used for esoteric uses. All other variables are private. Private variables and commands begin with "_" so you don't need to worry about accidental collisions. The array "db" is a database which maintains information about read and unread news. db($newsgroup,hi) is the highest article that exists. db($newsgroup,seen) is the highest article that you have read. A number of lists maintain interesting information. "active_list" is a list of known newsgroups. "seen_list" is a list of newsgroups that have been seen so far as the -new and -display flags are being processed. "previous_seen_list" is "seen_list" from the previous cycle. "ignore_list" is the list of newsgroup patterns to ignore. "watch_list" is the list of newsgroup patterns to watch. "display_list" is the list of newsgroup will be displayed at the next opportunity. UPDATING YOUR FILES
tknewsbiff automatically rereads your configuration file each time it wakes up to check for unread news. To force tknewsbiff to reread the file immediately (such as if you are testing a new configuration or have just modified your newsrc file), press button 2 in the display (see BUTTONS above). CAVEATS
tknewsbiff defines the number of unread articles as the highest existing article minus the highest article that you've read. So if you've read the last article in the newsgroup but no others, tknewsbiff thinks there are no unread articles. (It's impossible to do any better by reading the active file and it would be very time consuming to do this more accurately via NNTP since servers provide no efficient way of reporting their own holes in the newsgroups.) Fortunately, this definition is considered a feature by most people. It allows you to read articles and then mark them "unread" but not have tknewsbiff continue telling you that they are unread. UNWARRANTED CONCERNS
Your news administrator may wonder if many people using tknewsbiff severely impact an NNTP server. In fact, the impact is negligible even when the delay is very low. To gather all the information it needs, tknewsbiff uses a single NNTP query - it just asks for the active file. The NNTP server does no computation, formatting, etc, it just sends the file. All the interesting processing happens locally in the tknewsbiff program itself. BUGS
The man page is longer than the program. SEE ALSO
"Exploring Expect: A Tcl-Based Toolkit for Automating Interactive Programs" by Don Libes, O'Reilly and Associates, January 1995. AUTHOR
Don Libes, National Institute of Standards and Technology 1 January 1994 TKNEWSBIFF(1)
All times are GMT -4. The time now is 01:14 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy