Solarisプログラミング教えてチョンマゲ

1帰宅部高校1年
垢版 |
NGNG
一ヶ月前、父親に「パソコン買って」とねだったら[Ultra10]と書かれたマシンをくれました。
わくわくして起動してみるとなんか友達の持ってるヤツと全然違う・・・
っていうかキーボードとマウスもよく見るとなんかおかしい。

親にネットにつないでもらって調べてみるとUltra10というのは
サン・マイクロシステムズというメーカーが出しているワークステーションで
Solarisというシステム(UNIX?)が動いているようです。
父親にこのワークステーションで何ができるのか聞いてみると、
「ホ→ムペ→ジもメールも見られるぞ」「派手なゲームはできない」
「どうせ暇なんだからプログラムでも勉強してみろ」
とつれない答えが・・・

まあ冬休みで暇だからプログラミングを勉強でもしてみるか、と
ネットで勉強しながらifとかwhileとか構造体とかポインタとか覚えました。
しかしこれを使って具体的に何ができるのか・・・?
ネットで見られる情報には↑とかの基本的な使い方しか書かれて無い模様。
ここからステップアップしたいのですがどうすればいいんでしょうか?

友達にも知ってる人はいないし、
本屋で立ち読みしてもネットで得られるものと同じような基本的な部分にしか触れていません。

2ch閉鎖騒動の動画をみてUNIX板の存在を知り
ここならすごいプログラマーの人がいると思い質問させていただきました。

お願いします。
2008/01/23(水) 12:39:43
>>221
適当なWindowManagerのソース見てみたら?

自分がオープンしたウィンドウじゃないから
うまく動かないんじゃね?

WindowManager用に用意されてる関数があったような
気がする。
224名無しさん@お腹いっぱい。
垢版 |
2008/02/01(金) 23:06:22
PC8801ってデュアルCPUなんだよなw
2008/02/01(金) 23:44:22
FDD付はな
2008/02/06(水) 23:54:40
>>223
サンクス

WindowManagerみてみる。
いろいろ試してみたけど
CygwinでWindowManagerの介入阻止してやると
動きそうな幹事。
ただ、他のWindowManager上で試すとまったく
動かなかったりする。
よくわからん。
2008/02/11(月) 11:58:49
>>224
VictorのMSX2にもデュアルCPUなHC-95ってのがあったぞ。
2009/08/17(月) 14:58:23
>>222
あのね、子供がしたことに対して親が責任を取るというのは当然でしょ。
それと全く逆のことを考えればいいのよ。
歴史的な問題の場合、上の世代の過ちに対して、下の世代の人たちが責任を取らなくちゃいけないの。
2009/08/24(月) 05:29:01
なるほど、失敗した上の世代を吊るしていいということか
230名無しさん@お腹いっぱい。
垢版 |
2010/02/08(月) 21:35:00
nanosleep()命令がコンパイルできません。
何か設定があるんですか?
2010/02/09(火) 00:20:15
man nanosleepの冒頭を嫁
2010/02/09(火) 06:33:29
No manual entry for nanosleep
2010/02/09(火) 07:02:56
さがしもせず「ないからわかりません」とかほざくやつはしねばいいとおもうんだ
ttp://www.freebsd.org/cgi/man.cgi
2010/02/09(火) 07:19:55
>>233
スレタイよめ。
あと、古いSolarisだとnanosleep()は無かったと思うぞ。
2010/02/09(火) 07:19:56
Solaris なんだからこっちじゃないの。
-lrt オプションが必要だよ。

http://docs.sun.com/app/docs/doc/816-5171/nanosleep-3rt
2010/02/09(火) 07:31:29
さあ早く select()使ってnanosleep()を実装する仕事に戻るんだ、、
2010/02/09(火) 20:19:07
select()命令を使ってnanosleep()命令にする(?)って、そんな設定があるんですか?
2010/02/09(火) 20:25:39
select() のタイムアウトを nanosleep() の代わりに使うという話でしょ。
239名無しさん@お腹いっぱい。
垢版 |
2010/03/24(水) 20:43:18
PASS= に/usr/gnu/binを適応してるのに
xmkmfのジョブが実施できません><
ヘルフお願いします
2010/03/25(木) 04:48:47
setコマンドで本当にそのパスを食ってるか
rehashしてみるとかwhich xmkmfしてみるとかさぁ
2010/03/25(木) 07:41:51
>>240 回答者も低レベルだなw
2010/03/25(木) 09:25:33
>>241
5点
もっとがんばりましょう
243名無しさん@お腹いっぱい。
垢版 |
2010/03/27(土) 10:02:53
Solaris-7.0 x86 なんですけど、最新版に上げるための手順を教えてください。
2010/03/27(土) 23:14:59
7.0.?そんなVerあったっけか?
245名無しさん@お腹いっぱい。
垢版 |
2010/09/06(月) 22:38:35
C言語を静的リンクするのに、オプションは -staticじゃ駄目なんですか?
何かエラーが出るんですけど
2010/09/06(月) 22:53:39
コンパイラ(リンカ)により異なる
2010/09/06(月) 22:59:11
>>246 回答者も低レベルだなw
248名無しさん@お腹いっぱい。
垢版 |
2010/09/07(火) 19:33:35
>>246
その、コンパイラ(リンカ)により異なるオプションを付けても
エラーが出るんですけど
2010/09/09(木) 15:39:22
エラーメッセージを書かないのは、宗教上の理由からですか?
2010/09/09(木) 16:20:26
>>249
そうです。宗教上の理由です。
2010/09/09(木) 16:39:47
>>249
あと、回答者の品質チェック用です。
2010/09/12(日) 20:37:02
>>245
これ、なぜそうなるか知ってる人ならエラーメッセージ関係なしで答えられるよね
2010/09/16(木) 11:34:10
では答えてみたまえ。
2010/09/16(木) 11:39:17
Solaris10ではlibc.aが提供されていない。
2010/09/16(木) 12:06:50
だったらインストールCDからlibc.aを追加すればいいだけでは?
2010/09/16(木) 12:17:04
素人は引っ込んでろ。
2010/09/16(木) 12:47:41
開発者サポート以上でインスコするのは基本だろw
2010/09/16(木) 13:00:32
Solaris10で開発した事がない老害か? とっとと引退して判子押しでもやってろ。
2010/09/16(木) 23:26:57
>>255
SUNWがたくさんあり過ぎて探すのが大変です。-staticのSUNWを教えて下さい。
2010/09/17(金) 23:31:28
SUNWに詳しい人はこのスレにはいないんですか?
2010/09/20(月) 22:39:21
>>255>>257は最近の事情を知らない、死に損ないジジイなので無視しましょう。
Solaris10ではライブラリが提供されていないから、スタティックリンクは出来ません。
2010/09/21(火) 10:50:04
最近の事情を知らない=じじぃ確定なのか?
2010/09/21(火) 11:19:50
だから、回答のSUNWだけ教えろよ。能書きは不要。
2010/09/21(火) 13:03:47
そんなSUNWは存在しない。
2010/09/21(火) 17:59:47
みんないじわるだなぁ

>>245
SUNWarcに入ってるよw
2010/09/21(火) 21:59:57
>>265
感謝!!!!
SUNWを入れたら静的コンパイラできましたぁ!!!!
2010/09/22(水) 09:27:43
いやネタかと。普通わかるじゃん
268名無しさん@お腹いっぱい。
垢版 |
2011/01/19(水) 16:21:58
tarファイルの中のファイルを削除したいのですが、solarisにはdeleteオプションが無いようなので、このオプションを使わずに削除するにはどうすればいいのでしょうか?
2011/01/19(水) 16:29:39
/usr/sfw/binにgnuのtar入ってなかったっけ?
一旦展開してアーカイブ作り直すとか
2011/01/19(水) 17:11:33
>>268
AIXじゃなかったのか?
http://hibari.2ch.net/test/read.cgi/unix/1193791491/656
http://hibari.2ch.net/test/read.cgi/unix/1290209379/213
271名無しさん@お腹いっぱい。
垢版 |
2011/01/24(月) 15:24:07
>>269
それは難しいと思います。
パイプで渡せば出来そうな気がするのですが。具体的にどう書けばいいのかわかりません
2011/01/24(月) 15:45:37
こんなんでいいのか?
$ ls
test1 test2 test3
$ tar cf - test* |perl -MArchive::Tar -e '$tar=Archive::Tar->new(\*STDIN);$tar->remov\
e("test1");$tar->write(\*STDOUT)' |tar tf -
test3
test2
2011/01/24(月) 17:44:01
>>272
ありがとうございます。今環境がないので今度客先のaixで確認してみます。
2011/01/24(月) 18:38:17
Solarisじゃなかったのか?
2011/01/24(月) 20:27:47
>>272
はじめにAIXのスレで質問して、ついでにシェルスクリプト総合で質問したものですが、
http://hibari.2ch.net/test/read.cgi/unix/1290209379/235-236
でシェルスクリプトを書いてしまいました。
どうも別の人も質問したり、回答したりしているようです。

perlは使ったことがないのですが、便利そうですね。
しかし、会社のAIXにperlはインストールされているのだろうか…
awkとかsedを使っている人はいるんですけどね。
汎用性はawkとかの方が高い気がしますが、perlの方が高機能なんですかね。
2011/01/24(月) 20:34:04
ちなみに268,271,273は私ではありません。
スレチですがAIXで動かすのが目的です。
自宅にはCent OSとFree BSDの環境があり、Cent OSでdeleteオプションが使えることは確認しました。
せっかくシェルスクリプトを書いたので、当面はそれを使うつもりですが、
Cent OSでperlは使えると思うので、272のコードも試してみようと思います。
2011/01/24(月) 20:50:56
>>272
実行してみたところこんな感じでエラーになりました。

[root@centos ~]# touch test1 test2 test3
[root@centos ~]# tar cf - test* |perl -MArchive::Tar -e '$tar=Archive::Tar->new(\*STDIN);$tar->remove("test1");$tar->write(\*STDOUT)' |tar tf -
Can't locate Archive/Tar.pm in @INC (@INC contains: /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.8 \
/usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.8.8/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.8 /usr/lib/perl5/vendor_perl \
/usr/lib/perl5/5.8.8/i386-linux-thread-multi /usr/lib/perl5/5.8.8 .).
BEGIN failed--compilation aborted.
tar: これは tar アーカイブではないようです
tar: 処理中にエラーが起きましたが、最後まで処理してからエラー終了させました

どこが間違っているのでしょうか?
2011/01/24(月) 21:00:34
「古文書のありかを突き止められません」も読めないゆとりか?
2011/01/24(月) 21:03:40
Can't locate Archive/Tar.pm in @INC (@INC contains: /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.8 \

Archive::Tarがインストールされていない。
$ cpan Archive::Tar
かな?
2011/01/24(月) 23:04:53
>>279
ありがとうございます。動いたようです。
しかし、会社では使えないんだろうな…
2011/01/25(火) 11:11:49
よそでやれよ。
282名無しさん@お腹いっぱい。
垢版 |
2011/01/28(金) 17:01:41
./configureでインストールする時に毎回prefixオプションつけて場所指定するのめんどうなんだよね。
標準のインストール先は/usr/local以下になってると思うんだけど最初に環境変数与えておくとかで変更する方法あるかな?
2011/01/30(日) 19:35:57
solaris8 ってupdate_drvコマンドって無いの?
ぐぐってもそれらしき情報が無いんだが
http://www.sunfreeware.com/
ここにもないし
2011/01/30(日) 19:43:59
よく訓練されたSolaris信者はupdate_drvコマンドとか使わないw
2011/01/30(日) 20:00:01
そうなんですか
訓練されてはない感じなものですみません。
vmwareのtoolがそれを必要としているんですが
デフォでインストールされてないのでどうしたものかと
2011/01/30(日) 21:18:38
ttp://download.oracle.com/docs/cd/E19455-01/817-5440/6mkt7mdj9/index.html

Solaris8にも入ってるみたいだけど
OSリリースによって違うのかな
2011/01/30(日) 21:37:20
そうですか入ってるですか・・・
04/01を使用してますがね。
2011/01/30(日) 21:44:20
http://webcache.googleusercontent.com/search?q=cache:H_z5R83QV74J:dbaspot.com/forums/solaris/206426-solaris-8-ufsdump-limitations-3.html+update_drv+solaris+8&cd=2&hl=ja&ct=clnk&gl=jp&client=firefox-a&source=www.google.co.jp
どうやらできないみたいっすね
すみません。
289名無しさん@お腹いっぱい。
垢版 |
2011/02/03(木) 18:34:27
>>147
solarisの場合、5bin/echoは bin/echoそのものだろw
290名無しさん@お腹いっぱい。
垢版 |
2011/02/20(日) 08:54:28.17
プロンプト用プログラムで、
処理時間がかかるルーチンを実行中に
何かキーボードが押されたらその時点での進行状況を表示、または中断、
という仕様を要求されました。
getchar()では、キーを押すまで帰ってこないし、
そもそもgetchar()を呼んだタイミング以外でもキーに反応しなければならないので
無理だということはわかりました。
こういうのは割り込みを使うそうですが、調べると、
キーボードはIRQ1を使っていることはわかりました。
C言語で、IRQ1を読み込んでプログラムを分岐させる?のは
どうすればいいか、誰かわかります?
2011/02/20(日) 12:57:47.75
ttp://d.hatena.ne.jp/wocota/20090306/1236326294
こんなん出てきたけど参考になりそう?
2011/02/20(日) 20:36:24.00
>>290
シグナルでやれば良いんじゃね
Ctrl-C で SIGINT のハンドラで処理をするってかんじで。
2011/02/20(日) 21:31:56.36
>>292
シグナルも考えましたが、Ctrl-Cじゃ駄目なんです><
HIT ANY KEY で、AとかBとか、どのキーが押された時でも
反応しないといけないんです。
2011/02/20(日) 22:04:24.88
tcgetattr,tcsetattr,cfmakerawあたりでできなかったっけ
2011/02/20(日) 22:07:49.69
書いた後だけど
cfmakerawがSolarisに無いんだな・・・
Google Code Searchでcfmakeraw使っているプログラムで
Solarisの場合はどうやってtermiosを設定しているか調べれば
それが答えだと思う
2011/02/20(日) 22:33:30.14
>>294,295
tcsetattr()で端末設定いじっても、stty rawコマンドと同様に
端末入力を行バッファしなくなるだけ(Enterなしに入力が返るだけ)で、
getchar()とかで入力を読みに行ったタイミングでしか
反応できないという問題の解決にはならないでしょ。

元質問はgetchar()を呼ばずに長時間処理を行なっているプログラムに対して、
どれかのキーを押した時に割り込み的にプログラムの流れを変えたいということ
みたいだから。
2011/02/20(日) 22:41:50.63
キーボード監視スレッド立てるだけだ。
2011/02/20(日) 23:10:34.73
>>296は頭悪いのか?w

スレッドじゃなくて別プロセスでシグナル投げても良いだろ
2011/02/21(月) 00:48:20.48
デバドラ書きましょうってことじゃなかったのかorz
2011/02/23(水) 09:56:44.59
マルチかよ。
http://hibari.2ch.net/test/read.cgi/unix/1045507770/742
301名無しさん@お腹いっぱい。
垢版 |
2011/07/23(土) 18:36:04.66
Linuxの libc.so.* みたいに、
共有ライブラリなんだけど直接コマンドとして実行も可能なライブラリファイルって、
どうやってコンパイルして作るの?
2011/07/24(日) 00:54:54.26
Solaris関係ないだろw
2011/07/24(日) 09:00:03.93
>>302
Solaris関係あります。

Solarisで自作共有ライブラリ(libhoge.so.1とか)を作る時、
./libhoge.so.1で実行しても実行できるようにしたいんです。
2011/07/24(日) 10:16:00.05
共有ライブラリ実行して何がうれしいのかわからんw
2011/07/27(水) 21:17:39.98
すみませんが共有ライブラリを実行してうれしい方のみ回答をお願いします
2011/07/27(水) 22:01:12.22
いないみたいですのでシッポ巻いてお引き取り下さい
2011/07/28(木) 17:55:56.55
>>301 >>303
逆にLinuxでは共有ライブラリが実行できるのかよw
そんなOS今までに見たことないな。

どうせbashとかのaliasで、共有ライブラリを実行しようとすると
別のコマンドが起動されてるとかのオチだろw
308名無しさん@お腹いっぱい。
垢版 |
2012/11/03(土) 18:22:45.49
SPARC(32bit)にはフラグを直接操作する命令がない。
N=ネガティブフラグ、Z=ゼロフラグ、C=キャリーフラグとするとき、
以下の状態にフラグをセットするアセンブラ命令を考えよ。

(1) N=0 Z=0 C=0
(2) N=0 Z=0 C=1
(3) N=0 Z=1 C=0
(4) N=0 Z=1 C=1
(5) N=1 Z=0 C=0
(6) N=1 Z=0 C=1

ただし、レジスタの値は一切変化させてはいけない。
レジスタの現在値は不定(不明)とする。
V(オーバーフロー)フラグはすべてV=0となってよい。
最小の命令数の回答を正解とする。


・・・以上わかる方、できれば月曜日までにお願いします。
2012/11/03(土) 23:15:15.16
またコピペか
2012/11/11(日) 21:33:17.16
共有ライブラリの実行ってバージョンとか出すだけじゃなかったか? exec に細工してあって共有ライブラリののマジックならヘッダのバージョン読んできて表示とかなら簡単だろ。jar が直接実行出来るのも #! でインタプリタ呼び出すのも exec の機能なんじゃないの?
2012/12/26(水) 21:14:55.41
セグメンテーション違反がx86ではなく、SPARCに問題にあって発生
している場合 どうしたら実行できますか
2013/01/24(木) 05:30:35.43
一年半越しの質問に答えるのもなんだけど
--sharedだろうと無理矢理エントリポイントを指定しておけば動くんじゃないの
仕組みわかってれば予想できる事だと思うが
2013/01/25(金) 23:02:31.66
SPARCに問題があるのじゃなくて、
バイトーオーダーを考慮せず実装した
のでバグっているだけだろ。

http://ja.wikipedia.org/wiki/エンディアン
2013/01/26(土) 06:17:29.76
>>313
全く同じコードがMIPS(EB)では正常に動くので、
バイトーオーダの問題じゃないです。
2013/01/28(月) 12:00:19.28
事前情報が適当すぎ
四の五の言わずにデバッガかませばすぐわかるだろ
2013/01/28(月) 14:44:36.38
コピペくんにエサをやるとはw
2013/01/28(月) 20:31:10.90
安全側の判断として、SPARCのセグメンテーション違反である可能性が否定できない
ので、運転再開を認めないことになりました。
2013/01/28(月) 23:31:16.48
SPARCでセグフォルトする原因を調べなかったばかりに
x86/mipsで偶然動いていたバグを見過ごすわけだな。
2013/02/23(土) 19:57:07.17
質問です
Gccのコマンドラインをだーって入力するとコンパイル出来るじゃないですか
それにオプションをさーっと追加して静的コンパイルしたいんです
出来ますの?ちなみに-staticを付けてみましたが変な英語で止まりました
勿論ググりましたが、当方馬鹿なのでわかりません
サルでも分かるような回答を強く期待します
僕はこういう小バカにしたような書き方しか出来ませんが、凄く切実に知りたいです
さぁどうぞ↓
2013/02/23(土) 23:40:20.61
病院に帰れw
2013/06/07(金) 20:51:18.93
先日、他部署を交えて開かれた社内技術交換会でのこと。
先輩は自分が開発担当したあるソフトのプログラミング中に思いついたという
文字列処理の高速化アルゴリズムについて得意気に解説し始めた。
話し始めてしばらくして、隣の部署の人が口をはさんだ。
「それ、有名な番兵のアルゴリズムですよね。ウチでも昔はよく番兵を使いました。
でも番兵はマルチスレッドで使えないという欠点があるので、
今では番兵のアルゴリズムを使うことは禁止してます。
これ使われると発見しにくいバグになって困るんですよねぇ…
ところで今日のお話というのは、
番兵のアルゴリズムをマルチスレッドに対応させるような方法か何かですか?」
そのあと先輩の話は支離滅裂になり、何の技術交換会だったのか
よく覚えていない…
2013/07/03(水) NY:AN:NY.AN
このあたりをまじめにやってない技術者をあつめて
「データ構造とアルゴリズム」みたいな本を通読
する勉強会をすべきなんだろうな。
レスを投稿する

5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況