And unless the installation had a whole criss-crossing of fiber from different internet backbones it'd kinda be at a disadvantage to the WDC area no matter how little or much renovation would be needed.
I mean, the CIA is distributed -- they're not just all at Langley. I bet the NSA has satellite offices too. But Cheyenne mountain might get passed over though because NSA employs white-collar individuals who need good schools for their kids and Starbucks and AMC movie theatres. They aren't a military officer shop. So it's unlikely they'd try to relocate anyone into buttfuck Mountain Time.
It's easier to just lease a non-descript office building in Suburbia and replace some of the cooling towers with satellite dishes. Add a few US police out front in white sedans and you've got your Site B.
There isn't any level "above" TS. The NSA tends to blanket-cover all their data with a TS-SIGINT or TS-COMSEC designation, and then compartmentalizes that with NTK (need to know). JUST LIKE EVERY OTHER AGENCY. Whoop de friggin do.
affirmative action programs to ensure hiring of minorities and women (thus possibly causing more competent workers to get passed up in the name of equality).
Usually I find it's the middle-aged white protestant males who don't know what the fuck is going on half the time. Why can't we just hire a bunch of Indians, Eastern European Jews and Asian women? Then the NSA'd be running in tip top shape (just an example).
These guys are the ones who are the sources of designation of classification. It's not like classification designation is some sort of innate attribute of some information, you know? Which is why classification levels are kind of irrelevant once you start talking about elected offices and the upper portions of the DoD. Classification is something that originates in the chain of command and has legal weight, but it can be overridden by a person with a higher authority. Its real applicability is for when they bring in contractors (like us Joe Schmoes) so that we don't go spreading around what they don't want us to.
They have _titles_. They may be cleared as a requirement for being elected into an office, but then again, they may not be. Usually there are specific background investigations done on individuals as part of the due diligence done by the office they represent which have no real parity with a standard DoD clearance.
Your title (like being VP, a Joint Chiefs member, or being on the Congressional Security Subcommmittee) gives you a wide need-to-know that essentially trumps any kind of clearance.
OTH a person in such a position, as a requirement for taking office, has a sworn duty to protect classified information from disclosure or he/she risks losing office, facing jailtime, etc. just like any other person with privledged access.
Try actually working for the agencies in question before commenting on which you know nothing about. I mean, Cosmic TS? Read Neal Stephenson much? hahaha... Wikipedia is not the most reliable source of information. Nor is FAS.
Seriously. I don't know where you get those ideas. Those designations went away along with WWII and the cold war. DoD has a couple special classes of TS, and that's it.
But that means jack shit. Need to know is everything. Compartmentalization. If part of the DOD wants to keep something secret from the rest of the DoD, or another agency, or whatever, the persons in charge can just tell everyone to go stuff it. No Cosmic TS is going to let you go over your superior's head or give you LEVEL 5 ACCESS or some bullshit like that.
It'd take a superior officer or the White House or a congressional subcommittee TELLING YOU to give access to someone, you know? Real world stuff.
Yes, it is true that it's pretty commonplace to have a high-level security clearance (especially for those who work in IT/acadamia), which is a large cross-section of slashdot. Additionally, there are a large enough portion of such individuals that invariably some will brag about it, and they're right. They're aren't lying about having the clearance.
But that's not the same thing as having access/need-to-know.
Need-to-know is everything. The clearance just is the insurance that they don't have to investigate you at the time when they need to pull you into a project. But who an agency might put on a project is a highly selective thing.
These braggarts probably have little need-to-know; if they did they wouldn't be bragging because they'd not want people to target them for know what they know.
You gave an opinion about a Mac. You never give opinions about Macs on slashdot (or really any forum). EVER.
There are two main camps:
1) Those who believe Macs are the saviors of all computing and Apple can do no wrong. 2) Those who think that Mac users are 'fags' and are stupid for wasting their money.
Even if you have a rational opinion, a person with moderation points from one group will lump you into the other group, and thus mod you down on principle.
Sorry, but that's how it is. Don't touch the Mac subject, that's like talking about Israel vs. Palestine, or Emacs vs. VI. All it does it get everyone to whip out their E-Penises.
In that he must have every blog-related doo-dad invented since 1998 all crammed up in the sidebar. From last.fm, to an incoming links feed, to a myspace link. This link circle-jerk digirati bullshit has to be stopped. He's fucking farming out his content creation with this RocketPower thing which is borderline ironic.
2d "side scrolling" but really 3d. More like 3d with 2d orientation rails. And you can always provide path independance by allowing branching and foreground/background splits and stuff.
Now I want to go play Viewtiful Joe again. If only it wasn't so friggin hard!
The C based approach is necessary because it's a "unix thing" and the issues you have with external process + (x language) are OS-dependant, not language dependant. I don't know what the equivalent to "dup2" is in java. Ultimately it's the system call you want your language to use to make the rubber meet the road. I'm sure there's a POSIX class or something you can leverage. (Example: In perl you'd use open with the ">=" prefix. But that lulls you into a false sense of portability. I prefer to "use POSIX qw(dup2)" and just dup2 directly.)
And I noticed that "cat -u" is useless on linux after submitting the post. Instead, check out "Expect" and the utility programs that come with it; specifically "unbuffer". It takes it's arguments and runs then with the stdout flushed for you. Unfortunately you have to use it in each stage of your pipeline. So like:
unbuffer tail -f/some/fifo | unbuffer od -t x1a | less
I thought maybe you only had to do the first one to "prime the pump", but I was wrong. The only one you don't have to do is the last one.
And in your case, since you are the final reader (and you already autoflush your writing pipe), you don't need unbuffer since you are already doing it, so to speak.
...is a parser. Invented about the same time. But those are typically based on transformation rules and regular expressions to tokenize your input.
You could always build your own regular expression compiler. It's not unheard of. But I submit that the "language" is small enough that it's not worth it.
...or like enums or any other "magic strings" that you need to make your code actually DO SOMETHING besides act as a framework passing data around...
1) POSIX classes are your friends 2) Build large regexes out of small regexes 3) Compile and name your regexes 4) Hide regex matching details inside of class methods when appropriate
I mean, what would you do if you needed a recursive decent parser? Or do we do everything via XML now?
You need to create two sets of FIFOs, one for to talk to your child, and for it to talk back. You fork, then dup2 the child's STDIN to the "far end" of the former pipe, then you dup2 the child's STDOUT onto the "far end" of the latter pipe. Finally, you exec() in your child. You hold onto the two near ends and use them as seperate Input/Output streams for control.
You're going to need to: 1) Catch SIGPIPE for when the spawned process closes it's reading end of the pipe. 2) Catch SIGCHLD so you know when the process exited. 3) Set your near OutputStream to autoflush mode.
On top of all this, your remote program has to be able to work in an unbuffered mode. Most command line programs don't. They are designed to work with files, and STDIN/STDOUT that are already "in the right mode", having inherited them for a program who had them attached to a TTY.
That is probably the issue you are having.
Some programs like 'cat' have a -u option which basically sets autoflush on their end so that you receive data to read as soon as it's available, and not when the fifo decides to flush. You can stick that into the beginning of pipeline and it should encourage the others to flow if they don't have an explict unbuffered mode themselves.
Many times you find things you want in fedora extras. It's easy enough to pull the source RPMs and get it to work on RHEL since it's already conditioned for the target environment.
We find ourselves using Fedora a lot for development. If it works on Fedora it tends to work just fine on RHEL. We also have a few Solaris, Slack and Ubuntu thrown in the mix to keep it interesting. Anything that tests out on two out of the N platforms is likely to smoothly easily in production.
I think the one thing that makes us choose Fedora over anything else for development is package names. Goddamn package names.:-/
Red Hat damn well knows that it's support sucks. That's not why you're paying them.
You pay them:
1) To convince companies like Broadcomm to open up drivers to chipsets so they can patch them into the kernel and get them in the next kernel release.
2) To assure your resident PHB that there is someone outside the organization that they can blame and wait for callbacks on when things go wrong.
3) To provide a channel for you to make comments about what you think is important and should be supported. For example, RHEL 3 added a customized LAuS from SuSE (not something normally done between update releases) because a bunch of customers asked for it.
4) To employ people to work on gcc, glibc, and keep the kernel up to date.
5) To feel like you're contributing back because you're actually running CentOS on your production systems.
At least it's not Norfolk. :|
And unless the installation had a whole criss-crossing of fiber from different internet backbones it'd kinda be at a disadvantage to the WDC area no matter how little or much renovation would be needed.
Imagine the recruitment pitch and the Government Faire:
-- Hey smart CS guy! Wanna work for a 3 letter agency?
- Yeah, sure. Sounds exciting. Which agency?
-- NSA!
- Sweet now I can really use my minor in Pig Waxing!
-- You're probably going to have to move though. We'll pay to relocate you!
- Really, where to? Albequerque?
-- Alaska!
- Bye guys! I'm off to Google.
-- But but, we've got Sno Cones!
I mean, the CIA is distributed -- they're not just all at Langley.
I bet the NSA has satellite offices too.
But Cheyenne mountain might get passed over though because NSA employs white-collar individuals who need good schools for their kids and Starbucks and AMC movie theatres. They aren't a military officer shop. So it's unlikely they'd try to relocate anyone into buttfuck Mountain Time.
It's easier to just lease a non-descript office building in Suburbia and replace some of the cooling towers with satellite dishes. Add a few US police out front in white sedans and you've got your Site B.
There isn't any level "above" TS.
The NSA tends to blanket-cover all their data with a TS-SIGINT or TS-COMSEC designation, and then compartmentalizes that with NTK (need to know).
JUST LIKE EVERY OTHER AGENCY. Whoop de friggin do.
God go put on your tin foil hat, slashdot.
affirmative action programs to ensure hiring of minorities and women (thus possibly causing more competent workers to get passed up in the name of equality).
Usually I find it's the middle-aged white protestant males who don't know what the fuck is going on half the time. Why can't we just hire a bunch of Indians, Eastern European Jews and Asian women? Then the NSA'd be running in tip top shape (just an example).
These guys are the ones who are the sources of designation of classification. It's not like classification designation is some sort of innate attribute of some information, you know? Which is why classification levels are kind of irrelevant once you start talking about elected offices and the upper portions of the DoD. Classification is something that originates in the chain of command and has legal weight, but it can be overridden by a person with a higher authority. Its real applicability is for when they bring in contractors (like us Joe Schmoes) so that we don't go spreading around what they don't want us to.
They have _titles_. They may be cleared as a requirement for being elected into an office, but then again, they may not be. Usually there are specific background investigations done on individuals as part of the due diligence done by the office they represent which have no real parity with a standard DoD clearance.
Your title (like being VP, a Joint Chiefs member, or being on the Congressional Security Subcommmittee) gives you a wide need-to-know that essentially trumps any kind of clearance.
OTH a person in such a position, as a requirement for taking office, has a sworn duty to protect classified information from disclosure or he/she risks losing office, facing jailtime, etc. just like any other person with privledged access.
Try actually working for the agencies in question before commenting on which you know nothing about. I mean, Cosmic TS? Read Neal Stephenson much? hahaha...
Wikipedia is not the most reliable source of information. Nor is FAS.
Seriously.
I don't know where you get those ideas. Those designations went away along with WWII and the cold war. DoD has a couple special classes of TS, and that's it.
But that means jack shit. Need to know is everything. Compartmentalization. If part of the DOD wants to keep something secret from the rest of the DoD, or another agency, or whatever, the persons in charge can just tell everyone to go stuff it. No Cosmic TS is going to let you go over your superior's head or give you LEVEL 5 ACCESS or some bullshit like that.
It'd take a superior officer or the White House or a congressional subcommittee TELLING YOU to give access to someone, you know? Real world stuff.
Yes, it is true that it's pretty commonplace to have a high-level security clearance (especially for those who work in IT/acadamia), which is a large cross-section of slashdot.
Additionally, there are a large enough portion of such individuals that invariably some will brag about it, and they're right. They're aren't lying about having the clearance.
But that's not the same thing as having access/need-to-know.
Need-to-know is everything. The clearance just is the insurance that they don't have to investigate you at the time when they need to pull you into a project. But who an agency might put on a project is a highly selective thing.
These braggarts probably have little need-to-know; if they did they wouldn't be bragging because they'd not want people to target them for know what they know.
You've got to give some of us more credit...
Here's why you got modded down:
You gave an opinion about a Mac.
You never give opinions about Macs on slashdot (or really any forum). EVER.
There are two main camps:
1) Those who believe Macs are the saviors of all computing and Apple can do no wrong.
2) Those who think that Mac users are 'fags' and are stupid for wasting their money.
Even if you have a rational opinion, a person with moderation points from one group will lump you into the other group, and thus mod you down on principle.
Sorry, but that's how it is. Don't touch the Mac subject, that's like talking about Israel vs. Palestine, or Emacs vs. VI. All it does it get everyone to whip out their E-Penises.
In that he must have every blog-related doo-dad invented since 1998 all crammed up in the sidebar. From last.fm, to an incoming links feed, to a myspace link.
This link circle-jerk digirati bullshit has to be stopped. He's fucking farming out his content creation with this RocketPower thing which is borderline ironic.
*sigh*
I don't get it.
I see what you did there.
BTW, eat a dick.
Wake me when they make a real game from that engine, not a movie simulator.
Christ.
2d "side scrolling" but really 3d. More like 3d with 2d orientation rails. And you can always provide path independance by allowing branching and foreground/background splits and stuff.
Now I want to go play Viewtiful Joe again. If only it wasn't so friggin hard!
The C based approach is necessary because it's a "unix thing" and the issues you have with external process + (x language) are OS-dependant, not language dependant.
/some/fifo | unbuffer od -t x1a | less
I don't know what the equivalent to "dup2" is in java. Ultimately it's the system call you want your language to use to make the rubber meet the road. I'm sure there's a POSIX class or something you can leverage.
(Example: In perl you'd use open with the ">=" prefix. But that lulls you into a false sense of portability. I prefer to "use POSIX qw(dup2)" and just dup2 directly.)
And I noticed that "cat -u" is useless on linux after submitting the post. Instead, check out "Expect" and the utility programs that come with it; specifically "unbuffer". It takes it's arguments and runs then with the stdout flushed for you. Unfortunately you have to use it in each stage of your pipeline. So like:
unbuffer tail -f
I thought maybe you only had to do the first one to "prime the pump", but I was wrong. The only one you don't have to do is the last one.
And in your case, since you are the final reader (and you already autoflush your writing pipe), you don't need unbuffer since you are already doing it, so to speak.
...is a parser. Invented about the same time. But those are typically based on transformation rules and regular expressions to tokenize your input.
You could always build your own regular expression compiler. It's not unheard of. But I submit that the "language" is small enough that it's not worth it.
...or like enums or any other "magic strings" that you need to make your code actually DO SOMETHING besides act as a framework passing data around...
1) POSIX classes are your friends
2) Build large regexes out of small regexes
3) Compile and name your regexes
4) Hide regex matching details inside of class methods when appropriate
I mean, what would you do if you needed a recursive decent parser? Or do we do everything via XML now?
You need to create two sets of FIFOs, one for to talk to your child, and for it to talk back.
You fork, then dup2 the child's STDIN to the "far end" of the former pipe,
then you dup2 the child's STDOUT onto the "far end" of the latter pipe.
Finally, you exec() in your child.
You hold onto the two near ends and use them as seperate Input/Output streams for control.
You're going to need to:
1) Catch SIGPIPE for when the spawned process closes it's reading end of the pipe.
2) Catch SIGCHLD so you know when the process exited.
3) Set your near OutputStream to autoflush mode.
On top of all this, your remote program has to be able to work in an unbuffered mode. Most command line programs don't. They are designed to work with files, and STDIN/STDOUT that are already "in the right mode", having inherited them for a program who had them attached to a TTY.
That is probably the issue you are having.
Some programs like 'cat' have a -u option which basically sets autoflush on their end so that you receive data to read as soon as it's available, and not when the fifo decides to flush.
You can stick that into the beginning of pipeline and it should encourage the others to flow if they don't have an explict unbuffered mode themselves.
Many times you find things you want in fedora extras. It's easy enough to pull the source RPMs and get it to work on RHEL since it's already conditioned for the target environment.
:-)
And we use CentOS for testing.
Interestingly:
:-/
We find ourselves using Fedora a lot for development. If it works on Fedora it tends to work just fine on RHEL. We also have a few Solaris, Slack and Ubuntu thrown in the mix to keep it interesting. Anything that tests out on two out of the N platforms is likely to smoothly easily in production.
I think the one thing that makes us choose Fedora over anything else for development is package names. Goddamn package names.
Red Hat damn well knows that it's support sucks. That's not why you're paying them.
You pay them:
1) To convince companies like Broadcomm to open up drivers to chipsets so they can patch them into the kernel and get them in the next kernel release.
2) To assure your resident PHB that there is someone outside the organization that they can blame and wait for callbacks on when things go wrong.
3) To provide a channel for you to make comments about what you think is important and should be supported. For example, RHEL 3 added a customized LAuS from SuSE (not something normally done between update releases) because a bunch of customers asked for it.
4) To employ people to work on gcc, glibc, and keep the kernel up to date.
5) To feel like you're contributing back because you're actually running CentOS on your production systems.
RH WS _is_ the upgrade. It's $100 per year (and you get access to _any_ base version, just 1 year of updates).
They changed their model from a boxed-release every year, to a tiered, per box-per year system.
You could have just switched to CentOS. It doesn't bite.
Or you could do what we do. Buy a few licenses with the upgraded warranty for some servers, and use the media and packages on all the rest.