Sponsored Content
Full Discussion: Boy, is the shell powerful.
The Lounge What is on Your Mind? Boy, is the shell powerful. Post 302804497 by DGPickett on Wednesday 8th of May 2013 04:26:08 PM
Old 05-08-2013
We used to say "C is an assembly language looking for a CPU!" You can ask the CPU to do all general tasks with it, and can package any CPU features into calls or optimized libraries. Since GCC is free and open, it has been the first language out of the box for many CPUs.

If you want the best of both, one friend loved PERL so much he went back and rewrote all his shell and C tools. PERL and JAVA let you call C/C++ APIs, so you can have it both ways. C++ can call JAVA bits, too. Python is out in the same direction as PERL, but just a bit crazier!

My customers want me to maintain what they have and write things they can get suport for, so favoritism is not on my menu! Just save me from csh!

Maybe the large database apps will determine the next language. The COBOL-esque nature of SQL keeps suggesting its demise, even as the set-language problem definition allows massive parallelism. Maybe the final winner will be a database of persistent objects finding each other in OO ways.

Even a tech carrying the best scope often has a knife in his pocket. C will persist as the fast, simple and 'close to assembly' tool. OO will continue to thrive and grow for things it does well.
This User Gave Thanks to DGPickett For This Post:
 

3 More Discussions You Might Find Interesting

1. OS X (Apple)

Is Mac OS X Server Really Powerful?

Look We all know that Linux is almost BulletProof and about 40% faster than Win2K3 Server, When running Oracle DB, Right? Now my Question is can OS X run just as Well as Linux as a Server being PowerPC and Whatever, Can it be just as stable? Now You Tell me, Which is most Practical: Linux... (3 Replies)
Discussion started by: RedVenim
3 Replies

2. Shell Programming and Scripting

Any way to make scp more powerful?

Hello, I'm writing a script to automate the delivery of our code to different target environments and I was wondering if there's any way to cut down on the number of authentications that are needed. The script has to deliver to three different boxes (two directories on two boxes and one... (11 Replies)
Discussion started by: pallak7
11 Replies

3. Solaris

dd - imaging drives. Oh boy!

Hello, Yes, it's me again. Running around getting this done! My current problem is I'm trying to image one drive 0 (/dev/dsk/c1t0d0s0) to drive 1 (/dev/dsk/c1t1d0s0). I know that drive1 came out of a Sun Server and it is a Sun drive. Solaris 10 recognized drive1 after the devfsadm command. The... (8 Replies)
Discussion started by: adelsin
8 Replies
TASKSET(1)							   User Commands							TASKSET(1)

NAME
taskset - retrieve or set a process's CPU affinity SYNOPSIS
taskset [options] mask command [arg]... taskset [options] -p [mask] pid DESCRIPTION
taskset is used to set or retrieve the CPU affinity of a running process given its PID or to launch a new COMMAND with a given CPU affin- ity. CPU affinity is a scheduler property that "bonds" a process to a given set of CPUs on the system. The Linux scheduler will honor the given CPU affinity and the process will not run on any other CPUs. Note that the Linux scheduler also supports natural CPU affinity: the scheduler attempts to keep processes on the same CPU as long as practical for performance reasons. Therefore, forcing a specific CPU affinity is useful only in certain applications. The CPU affinity is represented as a bitmask, with the lowest order bit corresponding to the first logical CPU and the highest order bit corresponding to the last logical CPU. Not all CPUs may exist on a given system but a mask may specify more CPUs than are present. A retrieved mask will reflect only the bits that correspond to CPUs physically on the system. If an invalid mask is given (i.e., one that corresponds to no valid CPUs on the current system) an error is returned. The masks are typically given in hexadecimal. For example, 0x00000001 is processor #0 0x00000003 is processors #0 and #1 0xFFFFFFFF is all processors (#0 through #31). When taskset returns, it is guaranteed that the given program has been scheduled to a legal CPU. OPTIONS
-a, --all-tasks Set or retrieve the CPU affinity of all the tasks (threads) for a given PID. -p, --pid Operate on an existing PID and do not launch a new task. -c, --cpu-list Specify a numerical list of processors instead of a bitmask. The numbers are separated by commas and may include ranges. For exam- ple: 0,5,7,9-11. -h, --help Display usage information and exit. -V, --version Display version information and exit. USAGE
The default behavior is to run a new command with a given affinity mask: taskset mask command [arguments] You can also retrieve the CPU affinity of an existing task: taskset -p pid Or set it: taskset -p mask pid PERMISSIONS
A user can change the CPU affinity of a process belonging to the same user. A user must possess CAP_SYS_NICE to change the CPU affinity of a process belonging to another user. A user can retrieve the affinity mask of any process. AUTHOR
Written by Robert M. Love. COPYRIGHT
Copyright (C) 2004 Robert M. Love This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICU- LAR PURPOSE. SEE ALSO
chrt(1), nice(1), renice(1), sched_setaffinity(2), sched_getaffinity(2) See sched_setscheduler(2) for a description of the Linux scheduling scheme. AVAILABILITY
The taskset command is part of the util-linux package and is available from ftp://ftp.kernel.org/pub/linux/utils/util-linux/. util-linux April 2003 TASKSET(1)
All times are GMT -4. The time now is 07:27 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy